From d6d98dd5d15e88801882aad3a96e84279b185a78 Mon Sep 17 00:00:00 2001 From: Jana Vlachova Date: Mon, 29 Jul 2024 18:00:55 +0200 Subject: [PATCH 1/6] use next app as main web app --- .github/workflows/agdb_web.yaml | 2 +- .vscode/terminals.json | 4 +- agdb_web/.eslintrc.cjs | 24 - {agdb_web_next => agdb_web}/.eslintrc.json | 0 agdb_web/.gitignore | 44 +- agdb_web/.npmrc | 2 - agdb_web/.prettierignore | 3 +- agdb_web/README.md | 54 - agdb_web/app.vue | 5 - agdb_web/assets/less/main.less | 105 - agdb_web/components/common/LinkItem.vue | 22 - .../components/common/link-item.tsx | 0 agdb_web/components/layout/MainContainer.vue | 33 - agdb_web/components/layout/MainFooter.vue | 21 - agdb_web/components/layout/MainHeader.vue | 51 - .../components/layout/footer.module.scss | 0 .../components/layout/footer.spec.tsx | 0 .../components/layout/footer.tsx | 0 .../components/layout/logo.spec.tsx | 0 .../components/layout/logo.tsx | 0 .../components/navigation/DropdownLinks.vue | 83 - .../components/navigation/FooterLinks.vue | 36 - .../components/navigation/HeaderLinks.vue | 31 - agdb_web/composables/useI18n.ts | 132 - agdb_web/content/cs/api/index.md | 5 - agdb_web/content/cs/blog/index.md | 1 - agdb_web/content/cs/docs/index.md | 5 - agdb_web/content/cs/enterprise/index.md | 3 - agdb_web/content/cs/index.md | 1 - agdb_web/content/cs/kontakt.md | 1 - agdb_web/content/cs/o-agdb.md | 1 - agdb_web/content/cs/ochrana-osobnich-udaju.md | 1 - agdb_web/content/cs/podminky-uziti.md | 1 - agdb_web/content/en/about.md | 1 - agdb_web/content/en/api/1.rust/index.md | 12 - agdb_web/content/en/api/2.typescript/index.md | 145 - agdb_web/content/en/api/3.python/index.md | 8 - agdb_web/content/en/api/index.md | 2673 --- .../content/en/blog/1.why_not_sql/index.md | 82 - agdb_web/content/en/blog/index.md | 17 - agdb_web/content/en/contact.md | 3 - .../content/en/docs/1.guides/1.concepts.md | 131 - .../content/en/docs/1.guides/2.quickstart.md | 193 - .../en/docs/1.guides/3.quickstart_client.md | 213 - .../en/docs/1.guides/4.how_to_run_server.md | 97 - .../en/docs/1.guides/5.how_to_use_studio.md | 10 - .../en/docs/1.guides/6.troubleshooting.md | 10 - .../en/docs/1.guides/7.migration_from_sql.md | 10 - agdb_web/content/en/docs/1.guides/index.md | 28 - agdb_web/content/en/docs/2.examples/index.md | 33 - .../content/en/docs/3.references/1.queries.md | 1155 - .../content/en/docs/3.references/2.server.md | 10 - .../content/en/docs/3.references/3.studio.md | 10 - .../content/en/docs/3.references/4.cloud.md | 10 - .../en/docs/3.references/5.effiicient_agdb.md | 576 - .../en/docs/3.references/6.performance.md | 208 - .../content/en/docs/3.references/index.md | 28 - agdb_web/content/en/docs/index.md | 80 - .../content/en/enterprise/1.pricing/index.md | 31 - .../content/en/enterprise/2.cloud/index.md | 10 - .../en/enterprise/3.self_hosted/index.md | 10 - .../content/en/enterprise/4.support/index.md | 10 - .../content/en/enterprise/5.sponsors/index.md | 10 - agdb_web/content/en/enterprise/index.md | 22 - agdb_web/content/en/index.md | 20 - agdb_web/content/en/license.md | 203 - agdb_web/content/en/privacy-policy.md | 1 - agdb_web/content/en/terms-and-conditions.md | 1 - agdb_web/content/index.md | 0 agdb_web/e2e/app.spec.ts | 9 - .../e2e/example.spec.ts | 0 .../hooks/i18n.spec.tsx | 0 {agdb_web_next => agdb_web}/hooks/i18n.tsx | 0 agdb_web/i18n.config.ts | 17 - agdb_web/layouts/default.vue | 35 - agdb_web/locales/cs.json | 24 - agdb_web/locales/en.json | 24 - agdb_web/locales/index.ts | 7 - .../messages/cs-CZ.json | 0 .../messages/en-US.json | 0 {agdb_web_next => agdb_web}/middleware.ts | 0 {agdb_web_next => agdb_web}/next.config.mjs | 0 agdb_web/nuxt.config.ts | 54 - agdb_web/package-lock.json | 18926 ++++++---------- agdb_web/package.json | 55 +- agdb_web/pages/[...slug].vue | 32 - {agdb_web_next => agdb_web}/pages/_app.mdx | 0 .../pages/_meta.cs-CZ.json | 8 +- .../pages/_meta.en-US.json | 8 +- .../pages/about.cs-CZ.mdx | 0 .../pages/about.en-US.mdx | 0 .../pages/api-docs/_meta.cs-CZ.json | 2 +- .../pages/api-docs/_meta.en-US.json | 8 +- .../pages/api-docs/openapi.cs-CZ.mdx | 0 .../pages/api-docs/openapi.en-US.mdx | 0 .../pages/api-docs/python.en-US.mdx | 0 .../pages/api-docs/rust.en-US.mdx | 0 .../pages/api-docs/typescript.en-US.mdx | 0 .../pages/blog/_meta.cs-CZ.json | 4 +- .../pages/blog/_meta.en-US.json | 4 +- .../pages/blog/blog.cs-CZ.mdx | 0 .../pages/blog/blog.en-US.mdx | 0 .../pages/blog/why-not-sql.en-US.mdx | 0 .../pages/contact.cs-CZ.mdx | 0 .../pages/contact.en-US.mdx | 0 .../pages/docs/_meta.cs-CZ.json | 2 +- .../pages/docs/_meta.en-US.json | 8 +- .../pages/docs/docs.en-US.mdx | 81 +- .../pages/docs/dokumentace.cs-CZ.mdx | 0 .../pages/docs/examples.en-US.mdx | 0 .../pages/docs/guides.en-US.mdx | 0 .../pages/docs/guides/_meta.en-US.json | 0 .../pages/docs/guides/concepts.en-US.md | 0 .../docs/guides/how_to_run_server.en-US.md | 0 .../docs/guides/how_to_use_studio.en-US.md | 0 .../docs/guides/migration_from_sql.en-US.md | 0 .../pages/docs/guides/quickstart.en-US.md | 0 .../docs/guides/quickstart_client.en-US.md | 0 .../docs/guides/troubleshooting.en-US.md | 0 .../pages/docs/references.en-US.mdx | 0 .../pages/docs/references/_meta.en-US.json | 0 .../pages/docs/references/cloud.en-US.md | 0 .../docs/references/efficient_agdb.en-US.md | 0 .../docs/references/performance.en-US.md | 0 .../pages/docs/references/queries.en-US.md | 0 .../pages/docs/references/server.en-US.md | 0 .../pages/docs/references/studio.en-US.md | 0 .../pages/enterprise/_meta.cs-CZ.json | 2 +- .../pages/enterprise/_meta.en-US.json | 12 +- .../pages/enterprise/cloud.en-US.mdx | 0 .../pages/enterprise/enterprise-cs-CZ.mdx | 0 .../pages/enterprise/enterprise.en-US.mdx | 0 .../pages/enterprise/pricing.en-US.mdx | 0 .../pages/enterprise/self-hosted.en-US.mdx | 0 .../pages/enterprise/sponsors.en-US.mdx | 0 .../pages/enterprise/support.en-US.mdx | 0 .../pages/index.cs-CZ.mdx | 0 .../pages/index.en-US.mdx | 0 .../pages/kontakt.cs-CZ.mdx | 0 .../pages/license.cs-CZ.md | 0 .../pages/license.en-US.md | 0 .../pages/o-agdb.cs-CZ.mdx | 0 .../pages/ochrana-osobnich-udaju.cs-CZ.mdx | 0 .../pages/podminky-uziti.cs-CZ.mdx | 0 .../pages/privacy-policy.en-US.mdx | 0 .../pages/terms-and-conditions.en-US.mdx | 0 agdb_web/playwright.config.ts | 36 +- agdb_web/server/tsconfig.json | 3 - agdb_web/static/logo.svg | 40 - agdb_web/tests/app.test.ts | 10 - agdb_web/tests/composables/useI18n.test.ts | 96 - agdb_web/tests/pages/[...slug].test.ts | 39 - {agdb_web_next => agdb_web}/theme.config.tsx | 0 agdb_web/tsconfig.json | 26 +- agdb_web/vitest.config.ts | 23 +- agdb_web_next/.gitignore | 40 - agdb_web_next/.prettierignore | 2 - agdb_web_next/.prettierrc | 5 - agdb_web_next/README.md | 1 - agdb_web_next/package-lock.json | 11699 ---------- agdb_web_next/package.json | 40 - agdb_web_next/playwright.config.ts | 77 - agdb_web_next/public/favicon.ico | Bin 4286 -> 0 bytes agdb_web_next/public/images/api.png | Bin 10677 -> 0 bytes agdb_web_next/public/images/c.png | Bin 9454 -> 0 bytes agdb_web_next/public/images/cloud.png | Bin 5987 -> 0 bytes agdb_web_next/public/images/cpp.png | Bin 9173 -> 0 bytes agdb_web_next/public/images/csharp.png | Bin 9274 -> 0 bytes agdb_web_next/public/images/db.png | Bin 5917 -> 0 bytes agdb_web_next/public/images/flamegraph.svg | 491 - agdb_web_next/public/images/java.png | Bin 7529 -> 0 bytes agdb_web_next/public/images/js.png | Bin 5076 -> 0 bytes agdb_web_next/public/images/linkedin.png | Bin 3627 -> 0 bytes agdb_web_next/public/images/logo.svg | 40 - agdb_web_next/public/images/python.png | Bin 10020 -> 0 bytes agdb_web_next/public/images/reddit.png | Bin 10527 -> 0 bytes agdb_web_next/public/images/rust.png | Bin 14517 -> 0 bytes agdb_web_next/public/images/server.png | Bin 5920 -> 0 bytes agdb_web_next/public/images/stackoverflow.png | Bin 6491 -> 0 bytes agdb_web_next/public/images/studio.png | Bin 8234 -> 0 bytes agdb_web_next/public/images/ts.png | Bin 4301 -> 0 bytes agdb_web_next/public/images/x.png | Bin 1727 -> 0 bytes agdb_web_next/tsconfig.json | 26 - agdb_web_next/vitest.config.ts | 34 - 184 files changed, 6939 insertions(+), 31843 deletions(-) delete mode 100644 agdb_web/.eslintrc.cjs rename {agdb_web_next => agdb_web}/.eslintrc.json (100%) delete mode 100644 agdb_web/.npmrc delete mode 100644 agdb_web/app.vue delete mode 100644 agdb_web/assets/less/main.less delete mode 100644 agdb_web/components/common/LinkItem.vue rename {agdb_web_next => agdb_web}/components/common/link-item.tsx (100%) delete mode 100644 agdb_web/components/layout/MainContainer.vue delete mode 100644 agdb_web/components/layout/MainFooter.vue delete mode 100644 agdb_web/components/layout/MainHeader.vue rename {agdb_web_next => agdb_web}/components/layout/footer.module.scss (100%) rename {agdb_web_next => agdb_web}/components/layout/footer.spec.tsx (100%) rename {agdb_web_next => agdb_web}/components/layout/footer.tsx (100%) rename {agdb_web_next => agdb_web}/components/layout/logo.spec.tsx (100%) rename {agdb_web_next => agdb_web}/components/layout/logo.tsx (100%) delete mode 100644 agdb_web/components/navigation/DropdownLinks.vue delete mode 100644 agdb_web/components/navigation/FooterLinks.vue delete mode 100644 agdb_web/components/navigation/HeaderLinks.vue delete mode 100644 agdb_web/composables/useI18n.ts delete mode 100644 agdb_web/content/cs/api/index.md delete mode 100644 agdb_web/content/cs/blog/index.md delete mode 100644 agdb_web/content/cs/docs/index.md delete mode 100644 agdb_web/content/cs/enterprise/index.md delete mode 100644 agdb_web/content/cs/index.md delete mode 100644 agdb_web/content/cs/kontakt.md delete mode 100644 agdb_web/content/cs/o-agdb.md delete mode 100644 agdb_web/content/cs/ochrana-osobnich-udaju.md delete mode 100644 agdb_web/content/cs/podminky-uziti.md delete mode 100644 agdb_web/content/en/about.md delete mode 100644 agdb_web/content/en/api/1.rust/index.md delete mode 100644 agdb_web/content/en/api/2.typescript/index.md delete mode 100644 agdb_web/content/en/api/3.python/index.md delete mode 100644 agdb_web/content/en/api/index.md delete mode 100644 agdb_web/content/en/blog/1.why_not_sql/index.md delete mode 100644 agdb_web/content/en/blog/index.md delete mode 100644 agdb_web/content/en/contact.md delete mode 100644 agdb_web/content/en/docs/1.guides/1.concepts.md delete mode 100644 agdb_web/content/en/docs/1.guides/2.quickstart.md delete mode 100644 agdb_web/content/en/docs/1.guides/3.quickstart_client.md delete mode 100644 agdb_web/content/en/docs/1.guides/4.how_to_run_server.md delete mode 100644 agdb_web/content/en/docs/1.guides/5.how_to_use_studio.md delete mode 100644 agdb_web/content/en/docs/1.guides/6.troubleshooting.md delete mode 100644 agdb_web/content/en/docs/1.guides/7.migration_from_sql.md delete mode 100644 agdb_web/content/en/docs/1.guides/index.md delete mode 100644 agdb_web/content/en/docs/2.examples/index.md delete mode 100644 agdb_web/content/en/docs/3.references/1.queries.md delete mode 100644 agdb_web/content/en/docs/3.references/2.server.md delete mode 100644 agdb_web/content/en/docs/3.references/3.studio.md delete mode 100644 agdb_web/content/en/docs/3.references/4.cloud.md delete mode 100644 agdb_web/content/en/docs/3.references/5.effiicient_agdb.md delete mode 100644 agdb_web/content/en/docs/3.references/6.performance.md delete mode 100644 agdb_web/content/en/docs/3.references/index.md delete mode 100644 agdb_web/content/en/docs/index.md delete mode 100644 agdb_web/content/en/enterprise/1.pricing/index.md delete mode 100644 agdb_web/content/en/enterprise/2.cloud/index.md delete mode 100644 agdb_web/content/en/enterprise/3.self_hosted/index.md delete mode 100644 agdb_web/content/en/enterprise/4.support/index.md delete mode 100644 agdb_web/content/en/enterprise/5.sponsors/index.md delete mode 100644 agdb_web/content/en/enterprise/index.md delete mode 100644 agdb_web/content/en/index.md delete mode 100644 agdb_web/content/en/license.md delete mode 100644 agdb_web/content/en/privacy-policy.md delete mode 100644 agdb_web/content/en/terms-and-conditions.md delete mode 100644 agdb_web/content/index.md delete mode 100644 agdb_web/e2e/app.spec.ts rename {agdb_web_next => agdb_web}/e2e/example.spec.ts (100%) rename {agdb_web_next => agdb_web}/hooks/i18n.spec.tsx (100%) rename {agdb_web_next => agdb_web}/hooks/i18n.tsx (100%) delete mode 100644 agdb_web/i18n.config.ts delete mode 100644 agdb_web/layouts/default.vue delete mode 100644 agdb_web/locales/cs.json delete mode 100644 agdb_web/locales/en.json delete mode 100644 agdb_web/locales/index.ts rename {agdb_web_next => agdb_web}/messages/cs-CZ.json (100%) rename {agdb_web_next => agdb_web}/messages/en-US.json (100%) rename {agdb_web_next => agdb_web}/middleware.ts (100%) rename {agdb_web_next => agdb_web}/next.config.mjs (100%) delete mode 100644 agdb_web/nuxt.config.ts delete mode 100644 agdb_web/pages/[...slug].vue rename {agdb_web_next => agdb_web}/pages/_app.mdx (100%) rename {agdb_web_next => agdb_web}/pages/_meta.cs-CZ.json (88%) rename {agdb_web_next => agdb_web}/pages/_meta.en-US.json (88%) rename {agdb_web_next => agdb_web}/pages/about.cs-CZ.mdx (100%) rename {agdb_web_next => agdb_web}/pages/about.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/api-docs/_meta.cs-CZ.json (77%) rename {agdb_web_next => agdb_web}/pages/api-docs/_meta.en-US.json (68%) rename {agdb_web_next => agdb_web}/pages/api-docs/openapi.cs-CZ.mdx (100%) rename {agdb_web_next => agdb_web}/pages/api-docs/openapi.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/api-docs/python.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/api-docs/rust.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/api-docs/typescript.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/blog/_meta.cs-CZ.json (75%) rename {agdb_web_next => agdb_web}/pages/blog/_meta.en-US.json (72%) rename {agdb_web_next => agdb_web}/pages/blog/blog.cs-CZ.mdx (100%) rename {agdb_web_next => agdb_web}/pages/blog/blog.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/blog/why-not-sql.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/contact.cs-CZ.mdx (100%) rename {agdb_web_next => agdb_web}/pages/contact.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/docs/_meta.cs-CZ.json (78%) rename {agdb_web_next => agdb_web}/pages/docs/_meta.en-US.json (68%) rename {agdb_web_next => agdb_web}/pages/docs/docs.en-US.mdx (74%) rename {agdb_web_next => agdb_web}/pages/docs/dokumentace.cs-CZ.mdx (100%) rename {agdb_web_next => agdb_web}/pages/docs/examples.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/docs/guides.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/docs/guides/_meta.en-US.json (100%) rename {agdb_web_next => agdb_web}/pages/docs/guides/concepts.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/guides/how_to_run_server.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/guides/how_to_use_studio.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/guides/migration_from_sql.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/guides/quickstart.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/guides/quickstart_client.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/guides/troubleshooting.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/references.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/docs/references/_meta.en-US.json (100%) rename {agdb_web_next => agdb_web}/pages/docs/references/cloud.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/references/efficient_agdb.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/references/performance.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/references/queries.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/references/server.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/docs/references/studio.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/enterprise/_meta.cs-CZ.json (78%) rename {agdb_web_next => agdb_web}/pages/enterprise/_meta.en-US.json (68%) rename {agdb_web_next => agdb_web}/pages/enterprise/cloud.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/enterprise/enterprise-cs-CZ.mdx (100%) rename {agdb_web_next => agdb_web}/pages/enterprise/enterprise.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/enterprise/pricing.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/enterprise/self-hosted.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/enterprise/sponsors.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/enterprise/support.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/index.cs-CZ.mdx (100%) rename {agdb_web_next => agdb_web}/pages/index.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/kontakt.cs-CZ.mdx (100%) rename {agdb_web_next => agdb_web}/pages/license.cs-CZ.md (100%) rename {agdb_web_next => agdb_web}/pages/license.en-US.md (100%) rename {agdb_web_next => agdb_web}/pages/o-agdb.cs-CZ.mdx (100%) rename {agdb_web_next => agdb_web}/pages/ochrana-osobnich-udaju.cs-CZ.mdx (100%) rename {agdb_web_next => agdb_web}/pages/podminky-uziti.cs-CZ.mdx (100%) rename {agdb_web_next => agdb_web}/pages/privacy-policy.en-US.mdx (100%) rename {agdb_web_next => agdb_web}/pages/terms-and-conditions.en-US.mdx (100%) delete mode 100644 agdb_web/server/tsconfig.json delete mode 100644 agdb_web/static/logo.svg delete mode 100644 agdb_web/tests/app.test.ts delete mode 100644 agdb_web/tests/composables/useI18n.test.ts delete mode 100644 agdb_web/tests/pages/[...slug].test.ts rename {agdb_web_next => agdb_web}/theme.config.tsx (100%) delete mode 100644 agdb_web_next/.gitignore delete mode 100644 agdb_web_next/.prettierignore delete mode 100644 agdb_web_next/.prettierrc delete mode 100644 agdb_web_next/README.md delete mode 100644 agdb_web_next/package-lock.json delete mode 100644 agdb_web_next/package.json delete mode 100644 agdb_web_next/playwright.config.ts delete mode 100644 agdb_web_next/public/favicon.ico delete mode 100644 agdb_web_next/public/images/api.png delete mode 100644 agdb_web_next/public/images/c.png delete mode 100644 agdb_web_next/public/images/cloud.png delete mode 100644 agdb_web_next/public/images/cpp.png delete mode 100644 agdb_web_next/public/images/csharp.png delete mode 100644 agdb_web_next/public/images/db.png delete mode 100644 agdb_web_next/public/images/flamegraph.svg delete mode 100644 agdb_web_next/public/images/java.png delete mode 100644 agdb_web_next/public/images/js.png delete mode 100644 agdb_web_next/public/images/linkedin.png delete mode 100644 agdb_web_next/public/images/logo.svg delete mode 100644 agdb_web_next/public/images/python.png delete mode 100644 agdb_web_next/public/images/reddit.png delete mode 100644 agdb_web_next/public/images/rust.png delete mode 100644 agdb_web_next/public/images/server.png delete mode 100644 agdb_web_next/public/images/stackoverflow.png delete mode 100644 agdb_web_next/public/images/studio.png delete mode 100644 agdb_web_next/public/images/ts.png delete mode 100644 agdb_web_next/public/images/x.png delete mode 100644 agdb_web_next/tsconfig.json delete mode 100644 agdb_web_next/vitest.config.ts diff --git a/.github/workflows/agdb_web.yaml b/.github/workflows/agdb_web.yaml index c21a492bf..499db1964 100644 --- a/.github/workflows/agdb_web.yaml +++ b/.github/workflows/agdb_web.yaml @@ -42,7 +42,7 @@ jobs: - uses: actions/checkout@v4 - run: npm ci - run: npx nuxt prepare - - run: npm run test:unit + - run: npm run test - uses: actions/upload-artifact@v3 if: always() with: diff --git a/.vscode/terminals.json b/.vscode/terminals.json index e147fff58..bd0da09a8 100644 --- a/.vscode/terminals.json +++ b/.vscode/terminals.json @@ -14,14 +14,14 @@ "description": "For running web dev server", "open": true, "focus": false, - "commands": ["cd agdb_web_next", "npm run dev"] + "commands": ["cd agdb_web", "npm run dev"] }, { "name": "web SCRIPTS", "description": "For running web scripts", "open": true, "focus": false, - "commands": ["cd agdb_web_next"] + "commands": ["cd agdb_web"] } ] } diff --git a/agdb_web/.eslintrc.cjs b/agdb_web/.eslintrc.cjs deleted file mode 100644 index 6c30850ed..000000000 --- a/agdb_web/.eslintrc.cjs +++ /dev/null @@ -1,24 +0,0 @@ -module.exports = { - root: true, - env: { - node: true, - browser: true, - }, - extends: [ - "plugin:vue/vue3-recommended", - "@nuxtjs/eslint-config-typescript", - "eslint-config-prettier", - ], - rules: { - "no-console": process.env.NODE_ENV === "production" ? "error" : "off", - "no-debugger": process.env.NODE_ENV === "production" ? "error" : "off", - indent: "off", - "vue/no-multiple-template-root": "off", - }, - globals: { - $nuxt: true, - }, - parserOptions: { - extraFileExtensions: [".vue"], - }, -}; diff --git a/agdb_web_next/.eslintrc.json b/agdb_web/.eslintrc.json similarity index 100% rename from agdb_web_next/.eslintrc.json rename to agdb_web/.eslintrc.json diff --git a/agdb_web/.gitignore b/agdb_web/.gitignore index e0a93ebda..9600483f8 100644 --- a/agdb_web/.gitignore +++ b/agdb_web/.gitignore @@ -1,13 +1,39 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies node_modules -*.log* -.nuxt -.nitro -.cache -.output -.data -.env -dist -coverage +/.pnp +.pnp.js +.yarn/install-state.gz + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# local env files +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts /test-results/ /playwright-report/ /blob-report/ diff --git a/agdb_web/.npmrc b/agdb_web/.npmrc deleted file mode 100644 index cf0404245..000000000 --- a/agdb_web/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -shamefully-hoist=true -strict-peer-dependencies=false diff --git a/agdb_web/.prettierignore b/agdb_web/.prettierignore index ff320a121..6cc2cb26e 100644 --- a/agdb_web/.prettierignore +++ b/agdb_web/.prettierignore @@ -1,3 +1,2 @@ -.nuxt -build +.next coverage diff --git a/agdb_web/README.md b/agdb_web/README.md index 3f53659da..d9a375ca6 100644 --- a/agdb_web/README.md +++ b/agdb_web/README.md @@ -1,55 +1 @@ -# agdb webpage - **Note: This project is still under construction.** - -## Recommended IDE Setup - -[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin). - -## Type Support for `.vue` Imports in TS - -TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin) to make the TypeScript language service aware of `.vue` types. - -If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a [Take Over Mode](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) that is more performant. You can enable it by the following steps: - -1. Disable the built-in TypeScript Extension - 1. Run `Extensions: Show Built-in Extensions` from VSCode's command palette - 2. Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)` -2. Reload the VSCode window by running `Developer: Reload Window` from the command palette. - -## Customize configuration - -See [Vite Configuration Reference](https://vitejs.dev/config/). - -## Project Setup - -Make sure to install the dependencies: - -```bash -# npm -npm install -``` - -## Development Server - -Start the development server on http://localhost:3000 - -```bash -npm run dev -``` - -## Production - -Build the application for production: - -```bash -npm run build -``` - -Locally preview production build: - -```bash -npm run preview -``` - -Checkout the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information. diff --git a/agdb_web/app.vue b/agdb_web/app.vue deleted file mode 100644 index cc25a4943..000000000 --- a/agdb_web/app.vue +++ /dev/null @@ -1,5 +0,0 @@ - diff --git a/agdb_web/assets/less/main.less b/agdb_web/assets/less/main.less deleted file mode 100644 index 6dde2b32a..000000000 --- a/agdb_web/assets/less/main.less +++ /dev/null @@ -1,105 +0,0 @@ -:root { - --white: #ffffff; - --white-soft: #f8f8f8; - --white-mute: #f2f2f2; - - --black: #181818; - --black-soft: #222222; - --black-mute: #282828; - - --indigo: #2c3e50; - - --divider-light-1: rgba(60, 60, 60, 0.29); - --divider-light-2: rgba(60, 60, 60, 0.12); - --divider-dark-1: rgba(84, 84, 84, 0.65); - --divider-dark-2: rgba(84, 84, 84, 0.48); - - --text-light-1: var(--indigo); - --text-light-2: rgba(60, 60, 60, 0.66); - --text-dark-1: var(--white); - --text-dark-2: rgba(235, 235, 235, 0.64); - - --base-font: system-ui, sans-serif; -} - -:root { - --color-background: var(--white); - --color-background-soft: var(--white-soft); - --color-background-mute: var(--white-mute); - - --color-border: var(--divider-light-2); - --color-border-hover: var(--divider-light-1); - - --color-heading: var(--text-light-1); - --color-text: var(--text-light-1); - - --section-gap: 160px; -} - -@media (prefers-color-scheme: dark) { - :root { - --color-background: var(--black); - --color-background-soft: var(--black-soft); - --color-background-mute: var(--black-mute); - - --color-border: var(--divider-dark-2); - --color-border-hover: var(--divider-dark-1); - - --color-heading: var(--text-dark-1); - --color-text: var(--text-dark-2); - } -} - -*, -*::before, -*::after { - box-sizing: border-box; - margin: 0; - font-weight: normal; -} - -article, -aside, -footer, -header, -nav, -section { - display: block; -} - -body, -html { - box-sizing: border-box; - height: 100%; - width: 100%; - margin: 0; - font-family: var(--base-font); -} - -body { - color: var(--color-text); - background: var(--color-background); - transition: - color 0.4s ease, - background-color 0.4s ease; -} - -a { - text-decoration: none; - color: var(--dark-color); - font-weight: 600; - transition: var(--transition-opacity); -} -a:hover { - opacity: 0.8; -} -ul { - list-style-type: none; -} - -.page-container { - width: 100%; - max-width: 1200px; - margin-inline: auto; - padding: 0 2rem; -} diff --git a/agdb_web/components/common/LinkItem.vue b/agdb_web/components/common/LinkItem.vue deleted file mode 100644 index 5cc67d4c9..000000000 --- a/agdb_web/components/common/LinkItem.vue +++ /dev/null @@ -1,22 +0,0 @@ - - - - - diff --git a/agdb_web_next/components/common/link-item.tsx b/agdb_web/components/common/link-item.tsx similarity index 100% rename from agdb_web_next/components/common/link-item.tsx rename to agdb_web/components/common/link-item.tsx diff --git a/agdb_web/components/layout/MainContainer.vue b/agdb_web/components/layout/MainContainer.vue deleted file mode 100644 index 68db5aac1..000000000 --- a/agdb_web/components/layout/MainContainer.vue +++ /dev/null @@ -1,33 +0,0 @@ - - - - - diff --git a/agdb_web/components/layout/MainFooter.vue b/agdb_web/components/layout/MainFooter.vue deleted file mode 100644 index 42bfd6b6e..000000000 --- a/agdb_web/components/layout/MainFooter.vue +++ /dev/null @@ -1,21 +0,0 @@ - - - - - diff --git a/agdb_web/components/layout/MainHeader.vue b/agdb_web/components/layout/MainHeader.vue deleted file mode 100644 index 5864a3521..000000000 --- a/agdb_web/components/layout/MainHeader.vue +++ /dev/null @@ -1,51 +0,0 @@ - - - - - diff --git a/agdb_web_next/components/layout/footer.module.scss b/agdb_web/components/layout/footer.module.scss similarity index 100% rename from agdb_web_next/components/layout/footer.module.scss rename to agdb_web/components/layout/footer.module.scss diff --git a/agdb_web_next/components/layout/footer.spec.tsx b/agdb_web/components/layout/footer.spec.tsx similarity index 100% rename from agdb_web_next/components/layout/footer.spec.tsx rename to agdb_web/components/layout/footer.spec.tsx diff --git a/agdb_web_next/components/layout/footer.tsx b/agdb_web/components/layout/footer.tsx similarity index 100% rename from agdb_web_next/components/layout/footer.tsx rename to agdb_web/components/layout/footer.tsx diff --git a/agdb_web_next/components/layout/logo.spec.tsx b/agdb_web/components/layout/logo.spec.tsx similarity index 100% rename from agdb_web_next/components/layout/logo.spec.tsx rename to agdb_web/components/layout/logo.spec.tsx diff --git a/agdb_web_next/components/layout/logo.tsx b/agdb_web/components/layout/logo.tsx similarity index 100% rename from agdb_web_next/components/layout/logo.tsx rename to agdb_web/components/layout/logo.tsx diff --git a/agdb_web/components/navigation/DropdownLinks.vue b/agdb_web/components/navigation/DropdownLinks.vue deleted file mode 100644 index 546733800..000000000 --- a/agdb_web/components/navigation/DropdownLinks.vue +++ /dev/null @@ -1,83 +0,0 @@ - - - - - diff --git a/agdb_web/components/navigation/FooterLinks.vue b/agdb_web/components/navigation/FooterLinks.vue deleted file mode 100644 index d932dec5e..000000000 --- a/agdb_web/components/navigation/FooterLinks.vue +++ /dev/null @@ -1,36 +0,0 @@ - - - - - diff --git a/agdb_web/components/navigation/HeaderLinks.vue b/agdb_web/components/navigation/HeaderLinks.vue deleted file mode 100644 index bab068cfc..000000000 --- a/agdb_web/components/navigation/HeaderLinks.vue +++ /dev/null @@ -1,31 +0,0 @@ - - - - - diff --git a/agdb_web/composables/useI18n.ts b/agdb_web/composables/useI18n.ts deleted file mode 100644 index 5e5aa0c5b..000000000 --- a/agdb_web/composables/useI18n.ts +++ /dev/null @@ -1,132 +0,0 @@ -import { computed, ref } from "vue"; -import localeData from "~/locales"; -import i18nConfig from "~/i18n.config"; - -type Locale = { - code: string; - iso: string; - name: string; -}; - -const localeCode = ref(i18nConfig.defaultLocale); - -const fallbackLocaleCode = ref(i18nConfig.defaultLocale); - -const locales: Locale[] = i18nConfig.locales; - -const localeExists = (locale: string): boolean => { - return locales.some((localeItem) => localeItem.code === locale); -}; - -const currentLocale = computed(() => - locales.find((locale) => locale.code === localeCode.value), -); - -const fallbackLocale = computed(() => - locales.find((locale) => locale.code === fallbackLocaleCode.value), -); - -const messages = ref(new Map()); - -const fallbackMessages = ref(new Map()); - -const currentPagePath = ref("/"); - -type MessagesStructure = { [key: string]: string | MessagesStructure }; - -const iterateMessages = ( - prefix: string | null, - obj: MessagesStructure, - map: Map, -): void => { - for (const [key, value] of Object.entries(obj)) { - const keyName = prefix ? `${prefix}.${key}` : key; - if (typeof value === "string") { - map.set(keyName, value); - } else { - iterateMessages(keyName, value, map); - } - } -}; - -const loadMessages = (): void => { - messages.value = new Map(fallbackMessages.value); - if (!Object.prototype.hasOwnProperty.call(localeData, localeCode.value)) { - return; - } - const localeMessage: MessagesStructure = - localeData[localeCode.value as keyof typeof localeData]; - iterateMessages(null, localeMessage, messages.value); -}; - -const loadFallbackMessages = (): void => { - if ( - !Object.prototype.hasOwnProperty.call( - localeData, - fallbackLocaleCode.value, - ) - ) { - return; - } - const fallbackLocaleMessages: MessagesStructure = - localeData[fallbackLocaleCode.value as keyof typeof localeData]; - iterateMessages(null, fallbackLocaleMessages, fallbackMessages.value); -}; - -const t = (key: string): string => { - return messages.value.get(key) || ""; -}; - -const hasPathLocale = (path: string): boolean => { - return locales.some( - (locale) => - path.startsWith(`/${locale.code}/`) || path === `/${locale.code}`, - ); -}; - -const getLocalePath = (path: string): string => { - const hasLocale = hasPathLocale(path); - if (localeCode.value === fallbackLocale.value?.code) { - const newPath = hasLocale - ? path.replace(`/${localeCode.value}`, "") - : path; - return newPath === "" ? "/" : newPath; - } - return hasLocale ? path : `/${localeCode.value}${path}`; -}; - -const setLocaleCode = (code: string): void => { - if (code === localeCode.value || !localeExists(code)) { - return; - } - localeCode.value = code; - loadMessages(); -}; - -const setDefaultLocaleCode = (): void => { - localeCode.value = fallbackLocale.value?.code || "en"; - messages.value = new Map(fallbackMessages.value); -}; - -const initI18n = (): void => { - if (fallbackMessages.value.size > 0) return; - loadFallbackMessages(); -}; - -export default function useI18n() { - return { - localeCode, - fallbackLocaleCode, - localeExists, - currentLocale, - fallbackLocale, - loadMessages, - loadFallbackMessages, - t, - getLocalePath, - setLocaleCode, - setDefaultLocaleCode, - currentPagePath, - initI18n, - }; -} diff --git a/agdb_web/content/cs/api/index.md b/agdb_web/content/cs/api/index.md deleted file mode 100644 index 0e6dc848a..000000000 --- a/agdb_web/content/cs/api/index.md +++ /dev/null @@ -1,5 +0,0 @@ -# agdb dokumentace - -Stránky jsou v přípravě. - -[Dokumentace v angličtině](/en/docs) diff --git a/agdb_web/content/cs/blog/index.md b/agdb_web/content/cs/blog/index.md deleted file mode 100644 index a737ecd09..000000000 --- a/agdb_web/content/cs/blog/index.md +++ /dev/null @@ -1 +0,0 @@ -# agdb blog diff --git a/agdb_web/content/cs/docs/index.md b/agdb_web/content/cs/docs/index.md deleted file mode 100644 index 0e6dc848a..000000000 --- a/agdb_web/content/cs/docs/index.md +++ /dev/null @@ -1,5 +0,0 @@ -# agdb dokumentace - -Stránky jsou v přípravě. - -[Dokumentace v angličtině](/en/docs) diff --git a/agdb_web/content/cs/enterprise/index.md b/agdb_web/content/cs/enterprise/index.md deleted file mode 100644 index 614363990..000000000 --- a/agdb_web/content/cs/enterprise/index.md +++ /dev/null @@ -1,3 +0,0 @@ -# agdb enterprise - -Stránky jsou v přípravě. diff --git a/agdb_web/content/cs/index.md b/agdb_web/content/cs/index.md deleted file mode 100644 index fae95943a..000000000 --- a/agdb_web/content/cs/index.md +++ /dev/null @@ -1 +0,0 @@ -# agdb diff --git a/agdb_web/content/cs/kontakt.md b/agdb_web/content/cs/kontakt.md deleted file mode 100644 index 50c931204..000000000 --- a/agdb_web/content/cs/kontakt.md +++ /dev/null @@ -1 +0,0 @@ -# Kontaktujte nás diff --git a/agdb_web/content/cs/o-agdb.md b/agdb_web/content/cs/o-agdb.md deleted file mode 100644 index cd581d948..000000000 --- a/agdb_web/content/cs/o-agdb.md +++ /dev/null @@ -1 +0,0 @@ -# O agdb diff --git a/agdb_web/content/cs/ochrana-osobnich-udaju.md b/agdb_web/content/cs/ochrana-osobnich-udaju.md deleted file mode 100644 index 5af7053fc..000000000 --- a/agdb_web/content/cs/ochrana-osobnich-udaju.md +++ /dev/null @@ -1 +0,0 @@ -# Ochrana osobních údajů diff --git a/agdb_web/content/cs/podminky-uziti.md b/agdb_web/content/cs/podminky-uziti.md deleted file mode 100644 index 889c08fd6..000000000 --- a/agdb_web/content/cs/podminky-uziti.md +++ /dev/null @@ -1 +0,0 @@ -# Podmínky užití diff --git a/agdb_web/content/en/about.md b/agdb_web/content/en/about.md deleted file mode 100644 index 872d7a990..000000000 --- a/agdb_web/content/en/about.md +++ /dev/null @@ -1 +0,0 @@ -# About agdb diff --git a/agdb_web/content/en/api/1.rust/index.md b/agdb_web/content/en/api/1.rust/index.md deleted file mode 100644 index d3804ef0d..000000000 --- a/agdb_web/content/en/api/1.rust/index.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "Rust" -description: "Rust, Agnesoft Graph Database" -navigation: - title: "Rust" ---- - -# rust - -The rust agdb API client is **async only** and can be used with any HTTP client that would implement the `agdb_api::HttpClient` trait. The default implementation uses [reqwest](https://crates.io/crates/reqwest). - -See [Quickstart - client](/docs/guides/quickstart_client) for usage. diff --git a/agdb_web/content/en/api/2.typescript/index.md b/agdb_web/content/en/api/2.typescript/index.md deleted file mode 100644 index 6db2aecaa..000000000 --- a/agdb_web/content/en/api/2.typescript/index.md +++ /dev/null @@ -1,145 +0,0 @@ ---- -title: "Typescript, Javascript" -description: "Typescript, Javascript, Agnesoft Graph Database" -navigation: - title: "Typescript, Javascript" ---- - -# typescript / javascript - -The typescript agdb API client is based on [openapi-client-axios](https://www.npmjs.com/package/openapi-client-axios). - -# Usage - -The following is the from-scratch guide to use `agdb-api` typescript/javascript package. - -1. Install [NodeJS](https://nodejs.org/en). - -2. Create your project's folder (e.g. `my_agdb`) and nitialize a package: - -```bash -mkdir my_agdb -cd my_agdb -npm init # follow the steps & prompts -``` - -3. Add `typescript` as your dev dependency: - -```bash -npm install typescript --save-dev -``` - -NOTE: Consider using other dev packages such as `prettier`, `eslint` (and `@typescript-eslint/parser`). - -4. Add `@agnesoft/agdb_api` npm package to your project: - -```bash -npm install @agnesoft/agdb_api -``` - -5. Create a `tsconfig.json` file: - -```json -{ - "compilerOptions": { - "module": "ESNext", - "sourceMap": true, - "lib": ["ES2015", "DOM"], - "moduleResolution": "node", - "allowJs": true, - "esModuleInterop": true - } -} -``` - -6. In your main script (`indes.ts` or `main.ts` depending on your `package.json`'s `"main"` field) create a client connecting to the server: - -```ts -import { QueryBuilder, AgdbApi } from "@agnesfot/agdb_api"; - -async function main() { - // Requires the server to be running... - - // Creates a client connecting to the remote server. - let client = await AgdbApi.client("http://localhost", 3000); -} -``` - -7. To create a user using the default admin user: - -```ts -await client.login("admin", "admin"); -await client.admin_user_add("user1", { password: "password123" }); -await client.login("user1", "password123"); -``` - -8. To create a database: - -```ts -await client.db_add({ - owner: "user1", - db: "db1", - db_type: "mapped", //memory mapped type, other options are "memory" and "file" -}); -``` - -9. To execute queries against the database. Notice we are feeding results of the previous query to the next one with special alias `":0"` and `":1"` referencing first and second result respectively: - -```ts -// Prepare the queries to be executed on the remote database. -let queries = [ - // :0: Inserts a root node aliase "users" - QueryBuilder.insert().nodes().aliases(["users"]).query(), - - // :1: Inserts more nodes with some data - QueryBuilder.insert() - .nodes() - .values([ - [ - { key: { String: "username" }, value: { String: "user1" } }, - { - key: { String: "password" }, - value: { String: "password123" }, - }, - ], - [ - { key: { String: "username" }, value: { String: "user1" } }, - { - key: { String: "password" }, - value: { String: "password456" }, - }, - ], - ]) - .query(), - - // :2: Connect the root to the inserted nodes with edges referencing both from previous queries - QueryBuilder.insert().edges().from(":0").to(":1").query(), - - // :3: Find a node starting at the "users" node (could also be ":0" in this instance) with specific username - QueryBuilder.select() - .ids( - QueryBuilder.search() - .from("users") - .where() - .key({ String: "username" }) - .value({ Equal: { String: "user1" } }) - .query(), - ) - .query(), -]; - -// Execute queries. -let results = (await client.db_exec({ owner: "user1", db: "db1" }, queries)) - .data; -``` - -10. Print the the result of the final query to the console: - -```ts -console.log(`User (id: ${results[3].elements[0].id})`); -for (let { key, value } of results[3].elements[0].values) { - console.log(`${key["String"]}: ${value["String"]}`); -} -``` - -11. See full program in the examples: https://github.com/agnesoft/agdb/tree/main/examples/server_client_typescript diff --git a/agdb_web/content/en/api/3.python/index.md b/agdb_web/content/en/api/3.python/index.md deleted file mode 100644 index 8c4c4efbc..000000000 --- a/agdb_web/content/en/api/3.python/index.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Python" -description: "Python, Agnesoft Graph Database" -navigation: - title: "Python" ---- - -# python diff --git a/agdb_web/content/en/api/index.md b/agdb_web/content/en/api/index.md deleted file mode 100644 index 8122b1ed8..000000000 --- a/agdb_web/content/en/api/index.md +++ /dev/null @@ -1,2673 +0,0 @@ ---- -title: "API" -description: "API, Agnesoft Graph Database" -navigation: - title: "API" ---- - -# api - -The [agdb server](docs/guides/server) can be accessed using OpenAPI (REST) via any HTTP client. In addition to the API specification `agdb` offers wide range of clients for many languages that uses the same API but provides convenience and ease-of-use: - -

- rust - ts - js - python - java - c - cpp - csharp -

- -## openapi.json - -```json -{ - "openapi": "3.0.3", - "info": { - "title": "agdb_server", - "description": "Agnesoft Graph Database Server", - "license": { - "name": "Apache-2.0" - }, - "version": "0.1.0" - }, - "servers": [ - { - "url": "http://localhost:3000", - "description": "Local server" - } - ], - "paths": { - "/api/v1/admin/db/list": { - "get": { - "tags": ["crate::routes::admin::db"], - "operationId": "admin_db_list", - "responses": { - "200": { - "description": "ok", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ServerDatabase" - } - } - } - } - }, - "401": { - "description": "unauthorized" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/db/{owner}/{db}/add": { - "post": { - "tags": ["crate::routes::admin::db"], - "operationId": "admin_db_add", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db_type", - "in": "query", - "required": true, - "schema": { - "$ref": "#/components/schemas/DbType" - } - } - ], - "responses": { - "201": { - "description": "db added" - }, - "401": { - "description": "unauthorized" - }, - "404": { - "description": "user not found" - }, - "465": { - "description": "db exists" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/db/{owner}/{db}/backup": { - "post": { - "tags": ["crate::routes::admin::db"], - "operationId": "admin_db_backup", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "201": { - "description": "backup created" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "memory db cannot have backup" - }, - "404": { - "description": "db / user not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/db/{owner}/{db}/copy": { - "post": { - "tags": ["crate::routes::admin::db"], - "operationId": "admin_db_copy", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "new_name", - "in": "query", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "201": { - "description": "db copied" - }, - "401": { - "description": "unauthorized" - }, - "404": { - "description": "user / db not found" - }, - "465": { - "description": "target db exists" - }, - "467": { - "description": "invalid db" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/db/{owner}/{db}/delete": { - "delete": { - "tags": ["crate::routes::admin::db"], - "operationId": "admin_db_delete", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "db deleted" - }, - "401": { - "description": "unauthorized" - }, - "404": { - "description": "db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/db/{owner}/{db}/exec": { - "post": { - "tags": ["crate::routes::admin::db"], - "operationId": "admin_db_exec", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Queries" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "ok", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QueriesResults" - } - } - } - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "permission denied" - }, - "404": { - "description": "db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/db/{owner}/{db}/optimize": { - "post": { - "tags": ["crate::routes::admin::db"], - "operationId": "admin_db_optimize", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "ok", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ServerDatabase" - } - } - } - }, - "401": { - "description": "unauthorized" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/db/{owner}/{db}/remove": { - "delete": { - "tags": ["crate::routes::admin::db"], - "operationId": "admin_db_remove", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "db removed" - }, - "401": { - "description": "unauthorized" - }, - "404": { - "description": "db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/db/{owner}/{db}/rename": { - "post": { - "tags": ["crate::routes::admin::db"], - "operationId": "admin_db_rename", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "new_name", - "in": "query", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "201": { - "description": "db renamed" - }, - "401": { - "description": "unauthorized" - }, - "404": { - "description": "user / db not found" - }, - "465": { - "description": "target db exists" - }, - "467": { - "description": "invalid db" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/db/{owner}/{db}/user/list": { - "get": { - "tags": ["crate::routes::admin::db::user"], - "operationId": "admin_db_user_list", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "ok", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DbUser" - } - } - } - } - }, - "401": { - "description": "unauthorized" - }, - "404": { - "description": "db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/db/{owner}/{db}/user/{username}/add": { - "put": { - "tags": ["crate::routes::admin::db::user"], - "operationId": "admin_db_user_add", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "username", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db_role", - "in": "query", - "required": true, - "schema": { - "$ref": "#/components/schemas/DbUserRole" - } - } - ], - "responses": { - "201": { - "description": "user added" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "cannot change role of db owner" - }, - "404": { - "description": "user / db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/db/{owner}/{db}/user/{username}/remove": { - "delete": { - "tags": ["crate::routes::admin::db::user"], - "operationId": "admin_db_user_remove", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "username", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "user removed" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "cannot remove db owner" - }, - "404": { - "description": "user / db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/shutdown": { - "post": { - "tags": ["crate::routes::admin"], - "operationId": "admin_shutdown", - "responses": { - "202": { - "description": "server is shutting down" - }, - "401": { - "description": "unauthorized" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/user/list": { - "get": { - "tags": ["crate::routes::admin::user"], - "operationId": "admin_user_list", - "responses": { - "200": { - "description": "ok", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/UserStatus" - } - } - } - } - }, - "401": { - "description": "unauthorized" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/user/{username}/add": { - "post": { - "tags": ["crate::routes::admin::user"], - "operationId": "admin_user_add", - "parameters": [ - { - "name": "username", - "in": "path", - "description": "desired user name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserCredentials" - } - } - }, - "required": true - }, - "responses": { - "201": { - "description": "user created" - }, - "401": { - "description": "unauthorized" - }, - "461": { - "description": "password too short (<8)" - }, - "462": { - "description": "name too short (<3)" - }, - "463": { - "description": "user exists" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/user/{username}/change_password": { - "put": { - "tags": ["crate::routes::admin::user"], - "operationId": "admin_user_change_password", - "parameters": [ - { - "name": "username", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserCredentials" - } - } - }, - "required": true - }, - "responses": { - "201": { - "description": "password changed" - }, - "401": { - "description": "unauthorized" - }, - "461": { - "description": "password too short (<8)" - }, - "464": { - "description": "user not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/admin/user/{username}/remove": { - "delete": { - "tags": ["crate::routes::admin::user"], - "operationId": "admin_user_remove", - "parameters": [ - { - "name": "username", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "user removed", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/UserStatus" - } - } - } - } - }, - "401": { - "description": "unauthorized" - }, - "404": { - "description": "user not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/admin/{owner}/{db}/restore": { - "post": { - "tags": ["crate::routes::admin::db"], - "operationId": "admin_db_restore", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "201": { - "description": "db restored" - }, - "401": { - "description": "unauthorized" - }, - "404": { - "description": "backup not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/list": { - "get": { - "tags": ["crate::routes::db"], - "operationId": "db_list", - "responses": { - "200": { - "description": "ok", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ServerDatabase" - } - } - } - } - }, - "401": { - "description": "unauthorized" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/add": { - "post": { - "tags": ["crate::routes::db"], - "operationId": "db_add", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db_type", - "in": "query", - "required": true, - "schema": { - "$ref": "#/components/schemas/DbType" - } - } - ], - "responses": { - "201": { - "description": "db added" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "cannot add db to another user" - }, - "465": { - "description": "db already exists" - }, - "467": { - "description": "db invalid" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/backup": { - "post": { - "tags": ["crate::routes::db"], - "operationId": "db_backup", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "201": { - "description": "backup created" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "must be a db admin / memory db cannot have backup" - }, - "404": { - "description": "user / db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/copy": { - "post": { - "tags": ["crate::routes::db"], - "operationId": "db_copy", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "new_name", - "in": "query", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "201": { - "description": "db copied" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "cannot copy db to another user" - }, - "404": { - "description": "user / db not found" - }, - "465": { - "description": "target db exists" - }, - "467": { - "description": "invalid db" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/delete": { - "post": { - "tags": ["crate::routes::db"], - "operationId": "db_delete", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "db deleted" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "user must be a db owner" - }, - "404": { - "description": "db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/exec": { - "post": { - "tags": ["crate::routes::db"], - "operationId": "db_exec", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Queries" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "ok", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/QueriesResults" - } - } - } - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "must have at least write role" - }, - "404": { - "description": "db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/optimize": { - "post": { - "tags": ["crate::routes::db"], - "operationId": "db_optimize", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "ok", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ServerDatabase" - } - } - } - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "must have write permissions" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/remove": { - "post": { - "tags": ["crate::routes::db"], - "operationId": "db_remove", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "db removed" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "user must be a db owner" - }, - "404": { - "description": "db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/rename": { - "post": { - "tags": ["crate::routes::db"], - "operationId": "db_rename", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "new_name", - "in": "query", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "201": { - "description": "db renamed" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "user must be a db owner" - }, - "404": { - "description": "user / db not found" - }, - "465": { - "description": "target db exists" - }, - "467": { - "description": "invalid db" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/restore": { - "post": { - "tags": ["crate::routes::db"], - "operationId": "db_restore", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "201": { - "description": "db restored" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "must be a db admin" - }, - "404": { - "description": "backup not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/user/list": { - "get": { - "tags": ["crate::routes::db::user"], - "operationId": "db_user_list", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "ok" - }, - "401": { - "description": "unauthorized" - }, - "404": { - "description": "db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/user/{username}/add": { - "post": { - "tags": ["crate::routes::db::user"], - "operationId": "db_user_add", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "username", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db_role", - "in": "query", - "required": true, - "schema": { - "$ref": "#/components/schemas/DbUserRole" - } - } - ], - "responses": { - "201": { - "description": "user added" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "user must be a db admin / cannot change role of db owner" - }, - "404": { - "description": "user / db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/db/{owner}/{db}/user/{username}/remove": { - "post": { - "tags": ["crate::routes::db::user"], - "operationId": "db_user_remove", - "parameters": [ - { - "name": "owner", - "in": "path", - "description": "db owner user name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "db", - "in": "path", - "description": "db name", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "username", - "in": "path", - "description": "user name", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "204": { - "description": "user removed" - }, - "401": { - "description": "unauthorized" - }, - "403": { - "description": "must be admin / cannot remove db owner" - }, - "404": { - "description": "user / db not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/status": { - "get": { - "tags": ["crate::routes"], - "operationId": "status", - "responses": { - "200": { - "description": "Server is ready" - } - } - } - }, - "/api/v1/user/change_password": { - "put": { - "tags": ["crate::routes::user"], - "operationId": "user_change_password", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ChangePassword" - } - } - }, - "required": true - }, - "responses": { - "201": { - "description": "password changed" - }, - "401": { - "description": "invalid credentials" - }, - "461": { - "description": "password too short (<8)" - } - }, - "security": [ - { - "Token": [] - } - ] - } - }, - "/api/v1/user/login": { - "post": { - "tags": ["crate::routes::user"], - "operationId": "user_login", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UserLogin" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "login successful", - "content": { - "text/plain": { - "schema": { - "type": "string" - } - } - } - }, - "401": { - "description": "invalid credentials" - } - } - } - }, - "/api/v1/user/logout": { - "post": { - "tags": ["crate::routes::user"], - "operationId": "user_logout", - "responses": { - "201": { - "description": "user logged out" - }, - "401": { - "description": "invalid credentials" - }, - "404": { - "description": "user not found" - } - }, - "security": [ - { - "Token": [] - } - ] - } - } - }, - "components": { - "schemas": { - "ChangePassword": { - "type": "object", - "required": ["password", "new_password"], - "properties": { - "new_password": { - "type": "string" - }, - "password": { - "type": "string" - } - } - }, - "Comparison": { - "oneOf": [ - { - "type": "object", - "required": ["Equal"], - "properties": { - "Equal": { - "$ref": "#/components/schemas/DbValue" - } - } - }, - { - "type": "object", - "required": ["GreaterThan"], - "properties": { - "GreaterThan": { - "$ref": "#/components/schemas/DbValue" - } - } - }, - { - "type": "object", - "required": ["GreaterThanOrEqual"], - "properties": { - "GreaterThanOrEqual": { - "$ref": "#/components/schemas/DbValue" - } - } - }, - { - "type": "object", - "required": ["LessThan"], - "properties": { - "LessThan": { - "$ref": "#/components/schemas/DbValue" - } - } - }, - { - "type": "object", - "required": ["LessThanOrEqual"], - "properties": { - "LessThanOrEqual": { - "$ref": "#/components/schemas/DbValue" - } - } - }, - { - "type": "object", - "required": ["NotEqual"], - "properties": { - "NotEqual": { - "$ref": "#/components/schemas/DbValue" - } - } - }, - { - "type": "object", - "required": ["Contains"], - "properties": { - "Contains": { - "$ref": "#/components/schemas/DbValue" - } - } - } - ], - "description": "Comparison of database values ([`DbValue`]) used\nby `key()` condition. Supports\nthe usual set of named comparisons: `==, !=, <, <=, >, =>`\nplus `contains()`. The comparisons are type\nstrict except for the `contains` comparison\nwhich allows vectorized version of the base type. Notably\nhowever it does not support the `bytes` and integral types\nwhere the \"contains\" makes little sense (i.e. does 3 contain 1?)." - }, - "CountComparison": { - "oneOf": [ - { - "type": "object", - "required": ["Equal"], - "properties": { - "Equal": { - "type": "integer", - "format": "int64", - "description": "property == this", - "minimum": 0 - } - } - }, - { - "type": "object", - "required": ["GreaterThan"], - "properties": { - "GreaterThan": { - "type": "integer", - "format": "int64", - "description": "property > this", - "minimum": 0 - } - } - }, - { - "type": "object", - "required": ["GreaterThanOrEqual"], - "properties": { - "GreaterThanOrEqual": { - "type": "integer", - "format": "int64", - "description": "property >= this", - "minimum": 0 - } - } - }, - { - "type": "object", - "required": ["LessThan"], - "properties": { - "LessThan": { - "type": "integer", - "format": "int64", - "description": "property < this", - "minimum": 0 - } - } - }, - { - "type": "object", - "required": ["LessThanOrEqual"], - "properties": { - "LessThanOrEqual": { - "type": "integer", - "format": "int64", - "description": "property <= this", - "minimum": 0 - } - } - }, - { - "type": "object", - "required": ["NotEqual"], - "properties": { - "NotEqual": { - "type": "integer", - "format": "int64", - "description": "property != this", - "minimum": 0 - } - } - } - ], - "description": "Comparison of unsigned integers (`u64`) used\nby `distance()` and `edge_count*()` conditions. Supports\nthe usual set of named comparisons: `==, !=, <, <=, >, =>`." - }, - "DbElement": { - "type": "object", - "description": "Database element used in [`QueryResult`]\nthat represents a node or an edge.", - "required": ["id", "values"], - "properties": { - "from": { - "allOf": [ - { - "$ref": "#/components/schemas/DbId" - } - ], - "nullable": true - }, - "id": { - "$ref": "#/components/schemas/DbId" - }, - "to": { - "allOf": [ - { - "$ref": "#/components/schemas/DbId" - } - ], - "nullable": true - }, - "values": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DbKeyValue" - }, - "description": "List of key-value pairs associated with the element." - } - } - }, - "DbF64": { - "type": "number", - "format": "double", - "description": "Database float is a wrapper around `f64` to provide\nfunctionality like comparison. The comparison is\nusing `total_cmp` standard library function. See its\n[docs](https://doc.rust-lang.org/std/primitive.f64.html#method.total_cmp)\nto understand how it handles NaNs and other edge cases\nof floating point numbers." - }, - "DbId": { - "type": "integer", - "format": "int64", - "description": "Database id is a wrapper around `i64`.\nThe id is an identifier of a database element\nboth nodes and edges. The positive ids represent nodes,\nnegative ids represent edges. The value of `0` is\nlogically invalid (there cannot be element with id 0) and a default." - }, - "DbKeyOrder": { - "oneOf": [ - { - "type": "object", - "required": ["Asc"], - "properties": { - "Asc": { - "$ref": "#/components/schemas/DbValue" - } - } - }, - { - "type": "object", - "required": ["Desc"], - "properties": { - "Desc": { - "$ref": "#/components/schemas/DbValue" - } - } - } - ], - "description": "Ordering for search queries" - }, - "DbKeyValue": { - "type": "object", - "description": "Database key-value pair (aka property) attached to\ndatabase elements. It can be constructed from a\ntuple of types that are convertible to `DbValue`.", - "required": ["key", "value"], - "properties": { - "key": { - "$ref": "#/components/schemas/DbValue" - }, - "value": { - "$ref": "#/components/schemas/DbValue" - } - } - }, - "DbType": { - "type": "string", - "enum": ["memory", "mapped", "file"] - }, - "DbTypeParam": { - "type": "object", - "required": ["db_type"], - "properties": { - "db_type": { - "$ref": "#/components/schemas/DbType" - } - } - }, - "DbUser": { - "type": "object", - "required": ["user", "role"], - "properties": { - "role": { - "$ref": "#/components/schemas/DbUserRole" - }, - "user": { - "type": "string" - } - } - }, - "DbUserRole": { - "type": "string", - "enum": ["admin", "write", "read"] - }, - "DbUserRoleParam": { - "type": "object", - "required": ["db_role"], - "properties": { - "db_role": { - "$ref": "#/components/schemas/DbUserRole" - } - } - }, - "DbValue": { - "oneOf": [ - { - "type": "object", - "required": ["Bytes"], - "properties": { - "Bytes": { - "type": "string", - "format": "binary", - "description": "Byte array, sometimes referred to as blob" - } - } - }, - { - "type": "object", - "required": ["I64"], - "properties": { - "I64": { - "type": "integer", - "format": "int64", - "description": "64-bit wide signed integer" - } - } - }, - { - "type": "object", - "required": ["U64"], - "properties": { - "U64": { - "type": "integer", - "format": "int64", - "description": "64-bit wide unsigned integer", - "minimum": 0 - } - } - }, - { - "type": "object", - "required": ["F64"], - "properties": { - "F64": { - "$ref": "#/components/schemas/DbF64" - } - } - }, - { - "type": "object", - "required": ["String"], - "properties": { - "String": { - "type": "string", - "description": "UTF-8 string" - } - } - }, - { - "type": "object", - "required": ["VecI64"], - "properties": { - "VecI64": { - "type": "array", - "items": { - "type": "integer", - "format": "int64" - }, - "description": "List of 64-bit wide signed integers" - } - } - }, - { - "type": "object", - "required": ["VecU64"], - "properties": { - "VecU64": { - "type": "array", - "items": { - "type": "integer", - "format": "int64", - "minimum": 0 - }, - "description": "List of 64-bit wide unsigned integers" - } - } - }, - { - "type": "object", - "required": ["VecF64"], - "properties": { - "VecF64": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DbF64" - }, - "description": "List of 64-bit floating point numbers" - } - } - }, - { - "type": "object", - "required": ["VecString"], - "properties": { - "VecString": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of UTF-8 strings" - } - } - } - ], - "description": "Database value is a strongly types value.\n\nIt is an enum of limited number supported types\nthat are universal across all platforms\nand programming languages.\n\nThe value is constructible from large number of\nraw types or associated types (e.g. i32, &str, etc.).\nGetting the raw value back as string can be done\nwith `to_string()` but otherwise requires a `match`." - }, - "InsertAliasesQuery": { - "type": "object", - "description": "Query to insert or update aliases of existing nodes.\nAll `ids` must exist. None of the `aliases` can be empty.\nIf there is an existing alias for any of the elements it\nwill be overwritten with a new one.\n\nNOTE: Setting `ids` to a search query will result in an error.\n\nThe result will contain number of aliases inserted/updated but no elements.", - "required": ["ids", "aliases"], - "properties": { - "aliases": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Aliases to be inserted" - }, - "ids": { - "$ref": "#/components/schemas/QueryIds" - } - } - }, - "InsertEdgesQuery": { - "type": "object", - "description": "Query to inserts edges to the database. The `from`\nand `to` ids must exist in the database. There must be\nenough `values` for all new edges unless set to `Single`\nin which case they will be uniformly applied to all new\nedges. The `each` flag is only useful if `from and `to` are\nsymmetric (same length) but you still want to connect every\norigin to every destination. By default it would connect only\nthe pairs. For asymmetric inserts `each` is assumed.\n\nThe result will contain number of edges inserted and elements with\ntheir ids but no properties.", - "required": ["from", "to", "values", "each"], - "properties": { - "each": { - "type": "boolean", - "description": "If `true` create an edge between each origin\nand destination." - }, - "from": { - "$ref": "#/components/schemas/QueryIds" - }, - "to": { - "$ref": "#/components/schemas/QueryIds" - }, - "values": { - "$ref": "#/components/schemas/QueryValues" - } - } - }, - "InsertIndexQuery": { - "$ref": "#/components/schemas/DbValue" - }, - "InsertNodesQuery": { - "type": "object", - "description": "Query to insert nodes to the database. Only one of\n`count`, `values` or `aliases` need to be given as the\nimplementation will derive the count from the other\nparameters. If `values` is set to `Single` either `count`\nor `aliases` must be provided however. If `values` are not\nset to `Single` there must be enough value for `count/aliases`\nunless they are not se and the count is derived from `values.\n\nThe result will contain number of nodes inserted and elements with\ntheir ids but no properties.", - "required": ["count", "values", "aliases"], - "properties": { - "aliases": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Aliases of the new nodes." - }, - "count": { - "type": "integer", - "format": "int64", - "description": "Number of nodes to be inserted.", - "minimum": 0 - }, - "values": { - "$ref": "#/components/schemas/QueryValues" - } - } - }, - "InsertValuesQuery": { - "type": "object", - "description": "Query to insert or update key-value pairs (properties)\nto existing elements in the database. All `ids` must exist\nin the database. If `values` is set to `Single` the properties\nwill be inserted uniformly to all `ids` otherwise there must be\nenough `values` for all `ids`.\n\nThe result will be number of inserted/update values and no elements.\n\nNOTE: The result is NOT number of affected elements but individual properties.", - "required": ["ids", "values"], - "properties": { - "ids": { - "$ref": "#/components/schemas/QueryIds" - }, - "values": { - "$ref": "#/components/schemas/QueryValues" - } - } - }, - "Queries": { - "type": "array", - "items": { - "$ref": "#/components/schemas/QueryType" - } - }, - "QueriesResults": { - "type": "array", - "items": { - "$ref": "#/components/schemas/QueryResult" - } - }, - "QueryCondition": { - "type": "object", - "description": "Query condition. The condition consists of\n`data`, logic operator and a modifier.", - "required": ["logic", "modifier", "data"], - "properties": { - "data": { - "$ref": "#/components/schemas/QueryConditionData" - }, - "logic": { - "$ref": "#/components/schemas/QueryConditionLogic" - }, - "modifier": { - "$ref": "#/components/schemas/QueryConditionModifier" - } - } - }, - "QueryConditionData": { - "oneOf": [ - { - "type": "object", - "required": ["Distance"], - "properties": { - "Distance": { - "$ref": "#/components/schemas/CountComparison" - } - } - }, - { - "type": "string", - "description": "Is the current element an edge? I.e. `id < 0`.", - "enum": ["Edge"] - }, - { - "type": "object", - "required": ["EdgeCount"], - "properties": { - "EdgeCount": { - "$ref": "#/components/schemas/CountComparison" - } - } - }, - { - "type": "object", - "required": ["EdgeCountFrom"], - "properties": { - "EdgeCountFrom": { - "$ref": "#/components/schemas/CountComparison" - } - } - }, - { - "type": "object", - "required": ["EdgeCountTo"], - "properties": { - "EdgeCountTo": { - "$ref": "#/components/schemas/CountComparison" - } - } - }, - { - "type": "object", - "required": ["Ids"], - "properties": { - "Ids": { - "type": "array", - "items": { - "$ref": "#/components/schemas/QueryId" - }, - "description": "Tests if the current id is in the list of ids." - } - } - }, - { - "type": "object", - "required": ["KeyValue"], - "properties": { - "KeyValue": { - "type": "object", - "description": "Tests if the current element has a property `key`\nwith a value that evaluates true against `comparison`.", - "required": ["key", "value"], - "properties": { - "key": { - "$ref": "#/components/schemas/DbValue" - }, - "value": { - "$ref": "#/components/schemas/Comparison" - } - } - } - } - }, - { - "type": "object", - "required": ["Keys"], - "properties": { - "Keys": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DbValue" - }, - "description": "Test if the current element has **all** of the keys listed." - } - } - }, - { - "type": "string", - "description": "Is the current element a node? I.e. `0 < id`.", - "enum": ["Node"] - }, - { - "type": "object", - "required": ["Where"], - "properties": { - "Where": { - "type": "array", - "items": { - "$ref": "#/components/schemas/QueryCondition" - }, - "description": "Nested list of conditions (equivalent to brackets)." - } - } - } - ], - "description": "Query condition data" - }, - "QueryConditionLogic": { - "type": "string", - "description": "Logical operator for query conditions", - "enum": ["And", "Or"] - }, - "QueryConditionModifier": { - "type": "string", - "description": "Query condition modifier", - "enum": ["None", "Beyond", "Not", "NotBeyond"] - }, - "QueryId": { - "oneOf": [ - { - "type": "object", - "required": ["Id"], - "properties": { - "Id": { - "$ref": "#/components/schemas/DbId" - } - } - }, - { - "type": "object", - "required": ["Alias"], - "properties": { - "Alias": { - "type": "string", - "description": "String alias" - } - } - } - ], - "description": "Database id used in queries that lets\nyou refer to a database element as numerical\nid or a string alias." - }, - "QueryIds": { - "oneOf": [ - { - "type": "object", - "required": ["Ids"], - "properties": { - "Ids": { - "type": "array", - "items": { - "$ref": "#/components/schemas/QueryId" - }, - "description": "List of [`QueryId`]s" - } - } - }, - { - "type": "object", - "required": ["Search"], - "properties": { - "Search": { - "$ref": "#/components/schemas/SearchQuery" - } - } - } - ], - "description": "List of database ids used in queries. It\ncan either represent a list of [`QueryId`]s\nor a search query. Search query allows query\nnesting and sourcing the ids dynamically for\nanother query most commonly with the\nselect queries." - }, - "QueryResult": { - "type": "object", - "description": "Universal database result. Successful\nexecution of a query will always yield\nthis type. The `result` field is a numerical\nrepresentation of the result while the\n`elements` are the list of `DbElement`s\nwith database ids and properties (key-value pairs).", - "required": ["result", "elements"], - "properties": { - "elements": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DbElement" - }, - "description": "List of elements yielded by the query\npossibly with a list of properties." - }, - "result": { - "type": "integer", - "format": "int64", - "description": "Query result" - } - } - }, - "QueryType": { - "oneOf": [ - { - "type": "object", - "required": ["InsertAlias"], - "properties": { - "InsertAlias": { - "$ref": "#/components/schemas/InsertAliasesQuery" - } - } - }, - { - "type": "object", - "required": ["InsertEdges"], - "properties": { - "InsertEdges": { - "$ref": "#/components/schemas/InsertEdgesQuery" - } - } - }, - { - "type": "object", - "required": ["InsertIndex"], - "properties": { - "InsertIndex": { - "$ref": "#/components/schemas/InsertIndexQuery" - } - } - }, - { - "type": "object", - "required": ["InsertNodes"], - "properties": { - "InsertNodes": { - "$ref": "#/components/schemas/InsertNodesQuery" - } - } - }, - { - "type": "object", - "required": ["InsertValues"], - "properties": { - "InsertValues": { - "$ref": "#/components/schemas/InsertValuesQuery" - } - } - }, - { - "type": "object", - "required": ["Remove"], - "properties": { - "Remove": { - "$ref": "#/components/schemas/RemoveQuery" - } - } - }, - { - "type": "object", - "required": ["RemoveAliases"], - "properties": { - "RemoveAliases": { - "$ref": "#/components/schemas/RemoveAliasesQuery" - } - } - }, - { - "type": "object", - "required": ["RemoveIndex"], - "properties": { - "RemoveIndex": { - "$ref": "#/components/schemas/RemoveIndexQuery" - } - } - }, - { - "type": "object", - "required": ["RemoveValues"], - "properties": { - "RemoveValues": { - "$ref": "#/components/schemas/RemoveValuesQuery" - } - } - }, - { - "type": "object", - "required": ["Search"], - "properties": { - "Search": { - "$ref": "#/components/schemas/SearchQuery" - } - } - }, - { - "type": "object", - "required": ["Select"], - "properties": { - "Select": { - "$ref": "#/components/schemas/SelectQuery" - } - } - }, - { - "type": "object", - "required": ["SelectAliases"], - "properties": { - "SelectAliases": { - "$ref": "#/components/schemas/SelectAliasesQuery" - } - } - }, - { - "type": "object", - "required": ["SelectAllAliases"], - "properties": { - "SelectAllAliases": { - "$ref": "#/components/schemas/SelectAllAliasesQuery" - } - } - }, - { - "type": "object", - "required": ["SelectIndexes"], - "properties": { - "SelectIndexes": { - "$ref": "#/components/schemas/SelectIndexesQuery" - } - } - }, - { - "type": "object", - "required": ["SelectKeys"], - "properties": { - "SelectKeys": { - "$ref": "#/components/schemas/SelectKeysQuery" - } - } - }, - { - "type": "object", - "required": ["SelectKeyCount"], - "properties": { - "SelectKeyCount": { - "$ref": "#/components/schemas/SelectKeyCountQuery" - } - } - }, - { - "type": "object", - "required": ["SelectValues"], - "properties": { - "SelectValues": { - "$ref": "#/components/schemas/SelectValuesQuery" - } - } - } - ], - "description": "Convenience enum for serializing/deserializing queries." - }, - "QueryValues": { - "oneOf": [ - { - "type": "object", - "required": ["Single"], - "properties": { - "Single": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DbKeyValue" - }, - "description": "Single list of properties (key-value pairs)\nto be applied to all elements in a query." - } - } - }, - { - "type": "object", - "required": ["Multi"], - "properties": { - "Multi": { - "type": "array", - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DbKeyValue" - } - }, - "description": "List of lists of properties (key-value pairs)\nto be applied to all elements in a query. There\nmust be as many lists of properties as ids\nin a query." - } - } - } - ], - "description": "Helper type distinguishing uniform (`Single`) values\nand multiple (`Multi`) values in database queries." - }, - "RemoveAliasesQuery": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Query to remove aliases from the database. It\nis not an error if an alias to be removed already\ndoes not exist.\n\nThe result will be a negative number signifying how\nmany aliases have been actually removed." - }, - "RemoveIndexQuery": { - "$ref": "#/components/schemas/DbValue" - }, - "RemoveQuery": { - "$ref": "#/components/schemas/QueryIds" - }, - "RemoveValuesQuery": { - "$ref": "#/components/schemas/SelectValuesQuery" - }, - "SearchQuery": { - "type": "object", - "description": "Query to search for ids in the database following the graph.", - "required": [ - "algorithm", - "origin", - "destination", - "limit", - "offset", - "order_by", - "conditions" - ], - "properties": { - "algorithm": { - "$ref": "#/components/schemas/SearchQueryAlgorithm" - }, - "conditions": { - "type": "array", - "items": { - "$ref": "#/components/schemas/QueryCondition" - }, - "description": "Set of conditions every element must satisfy to be included in the\nresult. Some conditions also influence the search path as well." - }, - "destination": { - "$ref": "#/components/schemas/QueryId" - }, - "limit": { - "type": "integer", - "format": "int64", - "description": "How many elements maximum to return.", - "minimum": 0 - }, - "offset": { - "type": "integer", - "format": "int64", - "description": "How many elements that would be returned should be\nskipped in the result.", - "minimum": 0 - }, - "order_by": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DbKeyOrder" - }, - "description": "Order of the elements in the result. The sorting happens before\n`offset` and `limit` are applied." - }, - "origin": { - "$ref": "#/components/schemas/QueryId" - } - } - }, - "SearchQueryAlgorithm": { - "type": "string", - "description": "Search algorithm to be used", - "enum": ["BreadthFirst", "DepthFirst", "Index"] - }, - "SelectAliasesQuery": { - "$ref": "#/components/schemas/QueryIds" - }, - "SelectAllAliasesQuery": { - "type": "object", - "description": "Query to select all aliases in the database.\n\nThe result will be number of returned aliases and list\nof elements with a single property `String(\"alias\")` holding\nthe value `String`." - }, - "SelectIndexesQuery": { - "type": "object", - "description": "Query to select all indexes in the database.\n\nThe result will be number of returned indexes and single element\nwith index 0 and the properties corresponding to the names of the indexes\n(keys) with `u64` values representing number of indexed values in each\nindex." - }, - "SelectKeyCountQuery": { - "$ref": "#/components/schemas/QueryIds" - }, - "SelectKeysQuery": { - "$ref": "#/components/schemas/QueryIds" - }, - "SelectQuery": { - "$ref": "#/components/schemas/QueryIds" - }, - "SelectValuesQuery": { - "type": "object", - "description": "Query to select elements with only certain properties of\ngiven ids. All ids must exist in the database and all\nof them must have the requested properties.\n\nThe result will be number of elements and the\nlist of elements with the requested properties.", - "required": ["keys", "ids"], - "properties": { - "ids": { - "$ref": "#/components/schemas/QueryIds" - }, - "keys": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DbValue" - } - } - } - }, - "ServerDatabase": { - "type": "object", - "required": ["name", "db_type", "role", "size", "backup"], - "properties": { - "backup": { - "type": "integer", - "format": "int64", - "minimum": 0 - }, - "db_type": { - "$ref": "#/components/schemas/DbType" - }, - "name": { - "type": "string" - }, - "role": { - "$ref": "#/components/schemas/DbUserRole" - }, - "size": { - "type": "integer", - "format": "int64", - "minimum": 0 - } - } - }, - "ServerDatabaseRename": { - "type": "object", - "required": ["new_name"], - "properties": { - "new_name": { - "type": "string" - } - } - }, - "UserCredentials": { - "type": "object", - "required": ["password"], - "properties": { - "password": { - "type": "string" - } - } - }, - "UserLogin": { - "type": "object", - "required": ["username", "password"], - "properties": { - "password": { - "type": "string" - }, - "username": { - "type": "string" - } - } - }, - "UserStatus": { - "type": "object", - "required": ["name"], - "properties": { - "name": { - "type": "string" - } - } - } - }, - "securitySchemes": { - "Token": { - "type": "http", - "scheme": "bearer" - } - } - } -} -``` diff --git a/agdb_web/content/en/blog/1.why_not_sql/index.md b/agdb_web/content/en/blog/1.why_not_sql/index.md deleted file mode 100644 index 793d33349..000000000 --- a/agdb_web/content/en/blog/1.why_not_sql/index.md +++ /dev/null @@ -1,82 +0,0 @@ ---- -title: "Why not SQL?" -description: "Why not SQL, Agnesoft Graph Database" -navigation: - title: "Why not SQL?" ---- - -# Why not SQL? - -The following items provide explanations for some of the design choices of `agdb`. All of them are based on research and extensive testing of various approaches and options. For example unlike most graph implementations out there the `agdb` is using pure contiguous vectors instead of linked lists. Curious to lear why? Read on! - -- [Why graph?](#why-graph) -- [Why not use an existing graph database?](#why-not-use-an-existing-graph-database) -- [Why object queries?](#why-object-queries) -- [Why single file?](#why-single-file) -- [What about sharding, replication and performance at scale?](#what-about-sharding-replication-and-performance-at-scale) - -# Why graph? - -The database area is dominated by relational database systems (tables) and text queries since the 1970s. However the issues with the relational database systems are numerous and they even gave rise the the regular SW profession - database engineer. This is because contrary to their name they are very awkward at representing actual relations between data which is always demanded by the real world applications. They typically use foreign keys and/or proxy tables to represent them. Additionally the tables naturally enforce fixed immutable data schema upon the data they store. To change the schema one needs to create a new database with the changed schema and copy the data over (this is called database migration). Such operation is very costly and most database systems fair poorly when there are foreign keys involved (requiring them to be disabled for the migration to happen). As it turns out nowadays no database schema is truly immutable. New and changed requirements happen so often that the database schemas usually need updating (migrating) nearly every time there is an update to the systems using it. - -There is no solution to this "schema" issue because it is the inherent feature of representing data in tabular form. It can be only mitigated to some degree but your mileage will vary greatly when using these techniques many of which are considered anti-patterns. Things like indexes, indirection (storing data with varied length), storing blob data, data with internal format unknown to the database itself (e.g. JSON) are all ways to prevent the need for database migration at the cost of efficiency. While there are good reasons for representing data in tabular form (lookup speed and space efficiency) the costs of very often far exceed the benefits. Plus as it turns out it is not even that efficient! - -The tables are represented as fixed size records (rows) one after another (this is what makes the schema immutable). This representation is the most efficient when we are reading entire rows at the time (all columns) which is very rarely the case. Most often we want only some of the columns which means we are discarding some (or most) of the row when reading it. This is the same problem the CPU itself has when using memory. It reads is using cache lines. If we happen to read only some of the line the rest is wasted and another line needs to be fetched for the next item(s) (this is called a `cache miss`). This is why contiguous collections (like a `vector`) are almost always the most efficient because they minimize the cache misses. Chandler Carruth had numerous talks at CPPCon on this subject demonstrating that by far the biggest performance impact on software are the cache misses (over 50 % and up to 80 % !!!) with everything else being dwarfed in comparison. - -Beside trying to optimize the tables the most prominent "solution" are the NoSQL databases. They typically use a different way to store data, often in a "schema-less" to cater to the above use cases - easing database migrations (or eliminating them) and providing more efficient data lookup. They typically choose some combination of key-value representation, document representation or a graph representation to scaffold the data instead of tables. They often trade in ACID properties, use write only - never delete "big tables" and other techniques. - -Of NoSQL databases the graph databases stand out in particular because by definition they actually store the relations between the data in the database. How the values are then "attached" to the graph vary but the graph itself serves as an "index" as well as a "map" to be efficiently searched and reason about. The sparse graph (not all nodes are connected to all others) representation is then actually the most flexible and accurate way to store and represent the sparse data (as mentioned nearly or real world data is sparse). - -There are two key properties of representing data as a graph that directly relates to the aforementioned issues of schema and data searching. Firstly the graph itself is the schema that can change freely as needed at any time without any restrictions eliminating the schema issue entirely. You do not need to be clairvoyant and agonize over the right database schema. You can do what works now and change your mind later without any issues. Secondly the graph allows accurately representing any actual relations between the data allowing the most efficient native traversal and lookup of data (vaguely resembling traditional indexing) making the lookup constantly efficient regardless of the data set size. Where table performance will deteriorate as it grows the graph will stay constantly efficient if you can traverse only the subset of the nodes via their relations even if the graph itself contained billions of nodes. - -That is in a nutshell why the graph database is the best choice for most problem domains and data sets out there and why `agdb` is the graph database. - -**Costs** - -Everything has the cost and graph databases are no exception. Some operations and some data representations may be costlier in them as opposed to table based databases. For example if you had immutable schema that never updates then table based database might a better fit as the representation in form of tables is more storage efficient. or if you always read the whole table or whole rows then once again the table based databases might be more performant. Typically though these are uncommon edge cases unlikely to be found in the real world applications. The data is almost always sparse and diverse in nature, the schema is never truly stable etc. On the other hand most use cases benefit greatly from graph based representation and thus such a database is well worth it despite some (often more theoretical) costs. - -# Why not use an existing graph database? - -The following is the list of requirements for an ideal graph database: - -- Free license -- Faster than table based databases in most common use cases -- No new language for querying -- No text based queries -- Rust and/or C++ driver -- Resource efficient (storage & memory) - -Surprisingly there is no database that would fit the bill. Even the most popular graph databases such as `Neo4J` or `OrientDB` fall short on several of these requirements. They do have their own text based language (e.g. Cypher for Neo4J). They lack the drivers for C++/Rust. They are not particularly efficient (being mostly written in Java). Even the recent addition built in Rust - `SurrealDb` - is using text based SQL queries. Quite incomprehensibly its driver support for Rust itself is not very mature so far and was added only later despite the system being written in Rust. Something which is oddly common in the database world, e.g. `RethinkDb`, itself a document database, written mostly in C++, has no C++ support but does officially support for example Ruby. Atop of these issues they often do not leverage the graph structure very well (except for Neo4J which does great job at this) still leaning heavily towards tables. - -# Why object queries? - -The most ubiquitous database query language is SQL which is text based language created in the 1970s. Its biggest advantage is that being text based it can be used from any language to communicate with the database. However just like relational (table) bases databases from the same era it has some major flaws: - -- It needs to be parsed and interpreted by the database during runtime leading to common syntax errors that are hard or impossible to statically check. -- Being a separate programming language from the client coding language increases cognitive load on the programmer. -- It opens up the database to attacks from SQL-injection where the attacker is trying to force the interpreter to treat the user input (e.g. table or column names) as SQL code itself issuing malicious commands such as stealing or damaging the data. -- Being "Turing-complete" and complex language on itself means it can lead (and often leads) to incredibly complex and unmaintainable queries. - -The last point is particularly troublesome because it partially stems from the `schema` issue discussed in the previous points. One common way to avoid changing the schema is to transform the data via queries. This is not only less efficient than representing the data in the correct form directly but also increases the complexity of queries significantly. - -The solutions include heavily sanitizing the user inputs in an attempt to prevent SQL injection attacks, wrapping the constructing of SQL in a builder-pattern to prevent syntax errors and easing the cognitive load by letting programmers create their queries in their main coding language. The complexity is often being reduced by the use of stored SQL procedures (pre-created queries). However all of these options can only mitigate the issues SQL has. - -Using native objects representing the queries eliminate all of the SQL issues sacrificing the portability between languages. However that can be relatively easily be made up via already very mature (de)serialization of native objects available in most languages. Using builder pattern to construct these objects further improve their correctness and readability. Native objects carry no additional cognitive load on the programmer and can be easily used just like any other code. - -# Why single file? - -All operating systems have fairly low limit on number of open file descriptors for a program and for all programs in total making this system resource one of the rarest. Furthermore operating over multiple files does not seem to bring in any substantial benefit for the database while it complicates its implementation significantly. The graph database typically needs to have access to the full graph at all times unlike say key-value stores or document databases. Splitting the data into multiple files would therefore be actually detrimental. Lastly overall storage taken by the multiple files would not actually change as the amount of data would be the same. - -Conversely using just a single file (with a second temporary write ahead log file) makes everything simpler and easier. You can for example easily transfer the data to a different machine - it is just one file. The database can also operate on the file directly if memory mapping was turned off to save RAM at the cost of performance. The program would not need to juggle multiple files and consuming valuable system resources. - -The one file is the database and the data. - -# What about sharding, replication and performance at scale? - -Most databases tackle the issue of (poor) performance at scale by scaling up using replication/sharding strategies. While these techniques are definitely useful and they are planned for `agdb` they should be avoided as much as possible. The increase in complexity when using replication and/or sharding is dramatic and it has adverse performance impact meaning it is only worth it if there is no other choice. - -The `agdb` is designed so that it performs well regardless of the data set size. Direct access operations are O(1) and there is no limit on concurrency. Write operations are O(1) amortized however they are exclusive - there can be only one write operation running on the database at any given time preventing any other read or write operations at the same time. You will still get O(n) complexity when searching the (sub)graph as reading a 1000 connected nodes will take 1000 O(1) operations = O(n) same as reading 1000 rows in a table. However if the data does not indiscriminately connect everything to everything one can have as large data set as the hardware can fit without performance issues. The key is querying only subset of the graph (subgraph) since your query will have performance based on that subgraph and not all the data stored in the database. - -The point here is that scaling has significant cost regardless of technology or clever tricks. Only when the database starts exceeding limits of a single machine they shall be considered because adding data replication/backup will mean huge performance hit. To mitigate it to some extent caching can be used but it can never be as performant as local database. The features "at scale" are definitely coming you should avoid using them as much as possible even if available. - -[For real world performance see dedicated documentation.](performance.md) diff --git a/agdb_web/content/en/blog/index.md b/agdb_web/content/en/blog/index.md deleted file mode 100644 index 71e462ab6..000000000 --- a/agdb_web/content/en/blog/index.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: "Blog" -description: "Blog, Agnesoft Graph Database" -navigation: - title: "Blog" ---- - -# blog - -Articles written about the `agdb` and related topics adding insight into technologies and thinking behind the database. - -## articles - -
- -1. [Why not SQL](blog/why_not_sql.md) -

diff --git a/agdb_web/content/en/contact.md b/agdb_web/content/en/contact.md deleted file mode 100644 index 9955052ac..000000000 --- a/agdb_web/content/en/contact.md +++ /dev/null @@ -1,3 +0,0 @@ -# Contact us - -E-mail: agnesoft@agnesoft.com diff --git a/agdb_web/content/en/docs/1.guides/1.concepts.md b/agdb_web/content/en/docs/1.guides/1.concepts.md deleted file mode 100644 index e69604568..000000000 --- a/agdb_web/content/en/docs/1.guides/1.concepts.md +++ /dev/null @@ -1,131 +0,0 @@ ---- -title: "Concepts" -description: "Concepts, Agnesoft Graph Database" -navigation: - title: "Concepts" ---- - -# concepts - -- [graph](#graph) -- [query](#query) -- [transaction](#transaction) -- [storage](#storage) -- [data types](#data-types) - -
- -## graph - -_Related:_ [Why graph?](but_why.md#why-graph) - -Graph is a set of nodes (also vertices, points) that are connected to each other through edges (also arcs, links). In `agdb` the data is plotted on directed graphs and there are no restrictions on their structure. They can be cyclic (forming a cycle), acyclic (being open ended), sparse (having only some connections between nodes), disjointed (thus forming multiple graphs), having self-referential edges (nodes being connected to themselves), having multiple edges to the same node (even itself) and/or in the same same direction. - -Nodes and edges are `graph elements` and each can have key-value pairs associated with them usually referred to as `values`. Each graph element has a signed integer id (db id) - nodes having positive values while edges negative values. Note that upon removal of a graph element its id is freed and can be reused by subsequent inserts of new graph elements. - -**terminology:** - -- Graph (set of nodes and edges) -- Node (point on a graph) -- Edge (connection between two nodes) -- Graph elements (nodes & edges) -- db id (graph element id, positive for nodes, negative for edges) -- Values (key-value pairs associated with a node or an edge) - -
- -## query - -_Related:_ [Why object queries?](but_why#why-object-queries), [Queries](queries.md) - -Query is a request to retrieve or manipulate data in a database (both the graph structure and `values` associated with the nodes and edges). In `agdb` queries are not texts (like in SQL) but rather objects that contain details about what is being requested. These objects are typically constructed via a query builder but it is also possible to create them like any other object. The builder steps resemble, and often indeed are, direct translations of a well known SQL equivalents (e.g. `QueryBuilder::select() == SELECT`, `QueryBuilder::insert() == INSERT INTO`). - -Queries are executed by the database directly. The `agdb` distinguishes between `immutable` (retrieving data) and `mutable` (manipulating data) queries. Each query execution produces either a result or an error. In `agdb` there is a single `result` object containing a numerical result (i.e. number of affected elements or values) and a list of database elements. Each element in a result is comprised of a database id and a list of `values` (associated key-value pairs). - -In case of a failure the database execution yields an error detailing what went wrong instead of a result. - -See dedicated [queries](queries.md) documentation for details. - -**terminology:** - -- Query (request to retrieve or manipulate data) -- Immutable query (request to retrieve data) -- Mutable query (request to manipulate data) -- Result (result of a query) - -
- -## transaction - -_Related_: [Queries](queries.md) - -Transactions are a way to provide atomicity, isolation and data consistency in a database (three of [ACID](https://en.wikipedia.org/wiki/ACID) properties). In `agdb` every query is a transaction but it is also possible to execute multiple queries as a single transaction. Just like `queries` transactions are immutable or mutable. One important rule is borrowed directly from Rust and enforced on the type level: - -_"There can be either unlimited number of concurrent immutable transactions or exactly one mutable transaction"_ - -In multithreaded environment you can easily synchronize the access to the database by using [`RwLock`](https://doc.rust-lang.org/std/sync/struct.RwLock.html). Furthermore unlike traditional transactions implemented in other database systems the `agdb` transactions are immediately executed requiring a closure containing (minimum) amount of code and queries required for the transaction to be performed. This forces the client to optimize their transactions and reduce the time the database is locked, which is particularly important for mutable transactions as they lock the entire database for their execution. - -**terminology:** - -- Transaction (set of queries to be executed atomically against a database wrapped in a closure) -- Mutable transaction (set of mutable & immutable queries wrapped in a closure) -- Immutable transaction (set of immutable queries wrapped in a closure) - -
- -## storage - -_Related_: [Why single file?](but_why.md#why-single-file) - -Every persistent database eventually stores its data somewhere on disk in one or more files. the `agdb` stores its data in a single file (that is being shadowed by another temporary write ahead log file). Its internal structure is very similar to that of a memory which makes it very easy to map between the two. The file format is fully platform agnostic and the file can be safely transferred to another machine and loaded there. Similarly the `agdb` is by default memory mapped database but it could just as easily operate purely on the file itself at the cost of read performance (might be implemented as a feature in the future). - -The database durability is provided by the write ahead log (WAL) file which records reverse of every operation to be performed on the main file before it actually happens. In case of any catastrophic failure the main database file is repaired from the WAL on loading the database. - -Just like the memory the main database file will get fragmented over time. Sectors of the file used for the data that was later reallocated will remain unused (fragmented) until the database file is defragmented. That operation is performed automatically on database object instance drop. - -The storage taken by individual elements are properties is generally as follows: - -- node: 32 bytes -- edge: 32 bytes -- single key or value (<=15 bytes): 16 bytes -- single key or value (>15 bytes): 32 bytes (+) -- key-value pair: 32 bytes (+) - -The size of the graph elements (nodes & edges) is fixed. The size of the properties (key-value pairs) is at least 32 bytes (16 per key and 16 per value) but can be greater if the value itself is greater. This creates some inefficiency for small values (e.g. integers) but it also allows application of small value optimization where values up to 15 bytes in size (e.g. strings) do not allocate or take extra space. When a value is larger than 15 bytes it will be stored separately with another 16 bytes overhead making it at least `32 + value length` bytes. - -The reason for values taking 16 bytes at minimum instead of 8 is that the value needs to store a type information for which 1 byte is required. 9 bytes is an awkward and very inefficient (as measured where 16 byte values were much faster) size even if it could save some file space. The next alignment is therefore 16 bytes which also allows the aforementioned small value optimization. - -**terminology:** - -- File storage (underlying single data file) -- Write ahead log (WAL, shadowing file storage to provide durability) - -
- -## data types - -Supported types of both keys and values are: - -- `i64` -- `u64` -- `f64` -- `String` -- `Vec` -- `Vec` -- `Vec` -- `Vec` -- `Vec` - -It is an enum of limited number of supported types that are universal across all platforms and programming languages. They are serialized in file as follows: - -| Type | Layout | Size | -| ------------- | ------------------------------------------------------------------------------- | -------- | -| `i64` | little endian | 8 bytes | -| `u64` | little endian | 8 bytes | -| `f64` | little endian | 8 bytes | -| `String` | size as `u64` little endian followed by UTF-8 encoded string as `u8` bytes | 8+ bytes | -| `Vec` | size as `u64` little endian followed by individual `u8` bytes | 8+ bytes | -| `Vec` | size as `u64` little endian followed by individual `i64` little endian elements | 8+ bytes | -| `Vec` | size as `u64` little endian followed by individual `u64` little endian elements | 8+ bytes | -| `Vec` | size as `u64` little endian followed by individual `f64` elements | 8+ bytes | -| `Vec` | size as `u64` little endian followed by individual `String` elements | 8+ bytes | diff --git a/agdb_web/content/en/docs/1.guides/2.quickstart.md b/agdb_web/content/en/docs/1.guides/2.quickstart.md deleted file mode 100644 index 1bd451579..000000000 --- a/agdb_web/content/en/docs/1.guides/2.quickstart.md +++ /dev/null @@ -1,193 +0,0 @@ ---- -title: "Quickstart" -description: "Quickstart, Agensoft Graph Database" -navigation: - title: "Quickstart" ---- - -# Quickstart - -The following is the quickstart guide for the agdb emebedded/application database. - -[Looking for server client guide instead?](/docs/guides/quickstart_client) - -
1. First install Rust toolchain from the [official source](https://www.rust-lang.org/tools/install) (mininum required version is `1.75.0`). -
- -
2. Create an applicaiton folder, for example `agdb_app` and initialize your application using cargo: -

- -```bash -mkdir agdb_app -cd agdb_app -cargo init -``` - -
3. Add `agdb` as a dependency: -

- -```bash -cargo add agdb -``` - -
4. Create the memory mapped database in your code: -

- -```rs -use agdb::QueryError; - -fn main() -> Result<(), QueryError> { - let mut db = Db::new("agdb_app.agdb")?; // The namesake file "agdb_app.agdb" will - // be created in your working directory. - // The .agdb extension is conventional. - Ok(()) -} -``` - -
5. Run your first query against the database inserting a node with alias "users": -

- -```rs -db.exec_mut(&QueryBuilder::insert() - .nodes() - .aliases("users") - .query())?; -``` - -
6. Insert additional nodes representing some users and connect them with the "users" node: -

- -```rs -// We derive from agdb::UserValue -// so we can use the type in the db. -#[derive(Debug, UserValue)] -struct User { - db_id: Option, // The db_id member is optional but - // it allows insert your user type - // directly into the database. - username: String, - age: u64, -} - -let users = vec![User { db_id: None, username: "Alice".to_string(), age: 40 }, - User { db_id: None, username: "Bob".to_string(), age: 30 }, - User { db_id: None, username: "John".to_string(), age: 20 }]; - -let db_users = db.exec_mut(&QueryBuilder::insert() - .nodes() - .values(&users) // We can pass users directly as - // query paramter thanks to the - // implementation of the agdb::DbUserValue - // trait via #[derive(UserValue)]. - .query())?; - -db.exec_mut( - &QueryBuilder::insert() - .edges() - .from("users") - .to(&db_users) // We can feed result of a previous - // query directly to the next one. - .query(), -)?; -``` - -
7. Find a user in the database matching some conditions: -

- -```rust -// We combine search & select into a single query like so: -let users: Vec = db - .exec( - &QueryBuilder::select() - .values(User::db_keys()) // Select only relevant properties for the User struct. - .ids( - QueryBuilder::search() - .from("users") // Start the search from the "users" node. - .where_() - .key("age") // Examine "age" property. - .value(LessThan(40.into())) // Include it in the search result if the value - // is less than 40. - .query(), - ) - .query(), - )? - .try_into()?; // Convert the result into a list of User objects. - -println!("{:?}", users); -// We can print the users thanks to #[derive(Debug)]. The result should be something like: -// Vec [User { db_id: Some(DbId(3)), username: "John", age: 20 }, User { db_id: Some(DbId(3)), username: "Bob", age: 30 }] -``` - -
8. Full program: -

- -Cargo.toml: - -``` -[package] -name = "agdb_app" -edition = "2021" - -[dependencies] -agdb = "0.5.2" -``` - -src/main.rs: - -```rs -use agdb::QueryError; -use agdb::Db; -use agdb::QueryBuilder; -use agdb::UserValue -use agdb::Comparison::LessThan; - -#[derive(Debug, UserValue)] -struct User { - db_id: Option, - username: String - age: u64, -} - -fn main() -> Result<(), QueryError> { - let mut db = Db::new("agdb_app.agdb")?; - - db.exec_mut(&QueryBuilder::insert().nodes().aliases("users").query())?; - - let users = vec![User { db_id: None, username: "Alice".to_string(), age: 40 }, - User { db_id: None, username: "Bob".to_string(), age: 30 }, - User { db_id: None, username: "John".to_string(), age: 20 }]; - - let db_users = db.exec_mut(&QueryBuilder::insert() - .nodes() - .values(&users) - .query())?; - - db.exec_mut( - &QueryBuilder::insert() - .edges() - .from("users") - .to(&db_users) - .query(), - )?; - - let users: Vec = db - .exec( - &QueryBuilder::select() - .values(User::db_keys()) - .ids( - QueryBuilder::search() - .from("users") - .where_() - .key("age") - .value(LessThan(40.into())) - .query(), - ) - .query(), - )? - .try_into()?; - - println!("{:?}", users); - - Ok(()) -} -``` diff --git a/agdb_web/content/en/docs/1.guides/3.quickstart_client.md b/agdb_web/content/en/docs/1.guides/3.quickstart_client.md deleted file mode 100644 index 1f9964b06..000000000 --- a/agdb_web/content/en/docs/1.guides/3.quickstart_client.md +++ /dev/null @@ -1,213 +0,0 @@ ---- -title: "Quickstart - client" -description: "Quickstart - client, Agnesoft Graph Database." -navigation: - title: "Quickstart - client" ---- - -# Quickstart - -The following is the quickstart guide for the agdb client in Rust (connecting to the server). It assumes an `agdb_server` is running locally. Please refer to the [server guide](docs/guides/server) to learn how to run the server. - -Looking for... [how to run a server?](docs/guides/how_to_run_server) | [another language?](/api) | [embedded/application guide?](/docs/guides/quickstart) - -
1. First install Rust toolchain from the [official source](https://www.rust-lang.org/tools/install) (mininum required version is `1.75.0`). -
- -
2. Create an applicaiton folder, for example `agdb_client` and initialize your application using cargo: -

- -``` -cargo add agdb_client -``` - -
3. Add `agdb`, `agdb_api`, `tokio` and `anyhow` as a dependencies: -

- -```bash -cargo add agdb --features serde,openapi -cargo add agdb_api --features reqwest -cargo add tokio --features full -cargo add anyhow -``` - -
4. Create the client pointing to an `agdb` server: -

- -```rs -use agdb_api::AgdbApi; -use agdb_api::ReqwestClient; - -#[tokio:main] -async fn main() -> anyhow::Result<()> { - let mut client = AgdbApi::new(ReqwestClient::new(), "localhost:3000"); - - Ok(()) -} -``` - -
5. Login as admin and setup the user: -

- -```rs -client.user_login("admin", "admin").await?; // The authentication login is stored in - // the client for subsequent API calls. - // Default admin credentials are "admin/admin". -client.admin_user_add("my_user", "password123").await?; -client.user_login("my_user", "password123").await?; // Login as our newly created user. -``` - -
6. Create a database: -

- -```rs -use agdb_api::DbType; - -client.db_add("my_user", "my_db", DbType::Mapped).await?; // Memory mapped database called "my_db" - // will be created under our "my_user". -``` - -
7. Run our first queries against the database inserting a node with alias "users" and some users connecting them together: -

- -```rs -// We derive from agdb::UserValue -// so we can use the type in the db. -#[derive(Debug, UserValue)] -struct User { - db_id: Option, // The db_id member is optional but - // it allows querying your user type - // from the database. - username: String - age: u64, -} - -let users = vec![User { db_id: None, username: "Alice".to_string(), age: 40 }, - User { db_id: None, username: "Bob".to_string(), age: 30 }, - User { db_id: None, username: "John".to_string(), age: 20 }]; - -// We can pass users directly as -// query paramter thanks to the -// implementation of the agdb::DbUserValue -// trait via #[derive(UserValue)]. -let queries: Vec = vec![QueryBuilder::insert().nodes().aliases("users").query().into(), - QueryBuilder::insert().nodes().values(&users).query().into(), - QueryBuilder::insert().edges().from("users").to(":1").query().into(), - // We can feed the result of a previous query directly to the next one - // referencing with as index into the (previous) results starting - // with semicolon followed by the index, e.g. :1. - ]; - -client.exec("my_user", "my_db", &queries).await?; -``` - -
8. Run another query searching & selecting the users and converting them back to the native local object: -

- -```rs -let queries = vec![QueryBuilder::select() - .values(User::db_keys()) // Select only relevant properties for the User struct. - .ids( - QueryBuilder::search() - .from("users") // Start the search from the "users" node. - .where_() - .key("age") // Examine "age" property. - .value(LessThan(40.into())) // Include it in the search result if the value - // is less than 40. - .query(), - ) - .query()]; - -// Runs the query against the db, grabs the first result and converts it to the collection of users. -let users: Vec = client.exec("my_user", "my_db", &queries).await?[0].try_into()?; - -println!("{:?}", users); -``` - -
9. Full program: -

- -Cargo.toml: - -``` -[package] -name = "agdb_client" -edition = "2021" - -[dependencies] -anyhow = "1" -agdb = { version = "0.5.2", path = "../agdb", features = ["serde", "openapi"] } -agdb_api = { version = "0.5.2", path = "../agdb_api/rust", features = ["reqwest"] } -tokio = { version = "1", features = ["full"] } -``` - -main.rs - -```rs -use agdb_api::AgdbApi; -use agdb_api::ReqwestClient; -use agdb_api::DbType; - -#[derive(Debug, UserValue)] -struct User { - db_id: Option, - username: String - age: u64, -} - -#[tokio:main] -async fn main() -> anyhow::Result<()> { - let mut client = AgdbApi::new(ReqwestClient::new(), "localhost:3000"); - - client.user_login("admin", "admin").await?; - client.admin_user_add("my_user", "password123").await?; - client.user_login("my_user", "password123").await?; - - - client.db_add("my_user", "my_db", DbType::Mapped).await?; - - let users = vec![User { db_id: None, username: "Alice".to_string(), age: 40 }, - User { db_id: None, username: "Bob".to_string(), age: 30 }, - User { db_id: None, username: "John".to_string(), age: 20 }]; - - let queries: Vec = vec![QueryBuilder::insert().nodes().aliases("users").query().into(), - QueryBuilder::insert().nodes().values(&users).query().into(), - QueryBuilder::insert().edges().from("users").to(":1").query().into()] - - client.exec("my_user", "my_db", &queries).await?; - - let queries = vec![QueryBuilder::select() - .values(User::db_keys()) - .ids( - QueryBuilder::search() - .from("users") - .where_() - .key("age") - .value(LessThan(40.into())) - .query(), - ) - .query()]; - - let users: Vec = client.exec("my_user", "my_db", &queries).await?[0].try_into()?; - - println!("{:?}", users); - - Ok(()) -} -``` - -
10. As an excercise, can you modify the program so that it runs all queries in a single batch? -

- -Hint: - -```rs -let queries: Vec = vec![QueryBuilder::insert().nodes().aliases("users").query().into(), - QueryBuilder::insert().nodes().values(&users).query().into(), - QueryBuilder::insert().edges().from("users").to(":1").query().into(), - QueryBuilder::select().values(User::db_keys()).ids( - QueryBuilder::search().from("users").where_().key("age").value(LessThan(40.into())).query(), - ).query()] -//... -let users: Vec = client.exec("my_user", "my_db", &queries).await?[3].try_into()?; // Have you noticed a different index of the result? -``` diff --git a/agdb_web/content/en/docs/1.guides/4.how_to_run_server.md b/agdb_web/content/en/docs/1.guides/4.how_to_run_server.md deleted file mode 100644 index d3015907c..000000000 --- a/agdb_web/content/en/docs/1.guides/4.how_to_run_server.md +++ /dev/null @@ -1,97 +0,0 @@ ---- -title: "How to run the server?" -description: "How to run the server, Agnesoft Graph Database" -navigation: - title: "How to run the server?" ---- - -# How to run the server? - -The following is a guide how to run a local instance of the `agdb_server` on any platform/OS supported by Rust building from source. - -
1. Install git from the [officail source](https://git-scm.com/) (skip if you already have it). -
- -
2. Install Rust toolchain from the [official source](https://www.rust-lang.org/tools/install) (mininum required version is `1.75.0`). -
- -
3. Clone the `agdb` repository: `git clone https://github.com/agnesoft/agdb.git` (or `git@github.com:agnesoft/agdb.git` if using SSH). -

- -
4. Enter the directory with `cd agdb` and build the server: -

- -```bash -cargo build --release -p agdb_server -``` - -
5. The server binary will be within the repository `target/release/agdb_server[.exe]`. You can either move/copy the binary to your desired location on `PATH` (e.g. `/usr/bin/`) or you can run it directly with cargo: -

- -When on `PATH`: - -```bash -agdb_server -``` - -Via `cargo`: - -```bash -cargo run --release -p agdb_server -``` - -The server upon starting will create few things in its working directory: - -- `agdb_server.yaml`: Configuration file. You can alter it as you wish. You would need to restart the server for the changes to take effect. -- `agdb_server.agdb` (`.agdb_server.agdb`): Internal databse of the server (uses `agdb` itself) + its write ahead file (the dotfile). -- `agdb_data_dir/`: Folder for stroing the user data. It can be changed in the configuration file (requires restart of the server). - -and report where it listens at: - -``` -2024-01-26T17:47:30.956260Z INFO agdb_server: Listening at localhost:3000 -``` - -NOTE: You can prepare the configuration file before starting the server. It supports following values: - -```yaml -# agdb_server.yaml -host: localhost # host address to listen on -port: 3000 # port to bind to -admin: admin # the admin user that will be created automatically for the server, the password will be the same as name (admin by default, recommended to change after startup) -data_dir: agdb_server_data # directory to store user data -``` - -
6. The server will be available on `host:port` as per configuration (i.e. `localhost:3000` by default). The server logs every request-response as a single entry each time to `STDOUT`. You can redirect the output to a file, e.g. `agdb_server > server.log`. It is recommended to **change the admin password from the default** (same as admin username by default). -

- -
7. You can test if the server is up with `curl`: -

- -```bash -curl -v localhost:3000/api/v1/status # should return 200 OK -``` - -
8. It is recommended by optional to create a user to use for the database management rather than using the `admin` user (which is however still possible): -

- -```bash - # produce an admin API token, e.g. "bb2fc207-90d1-45dd-8110-3247c4753cd5" -token=$(curl -X POST -H 'Content-Type: application/json' localhost:3000/api/v1/user/login -d '{"username":"admin","password":"admin"}') -# using admin token to create a user -curl -X POST -H "Authorization: Bearer ${token}" localhost:3000/api/v1/admin/user/my_db_user/add -d '{"password":"password123"}' -# login as the new user and producing their token -token=$(curl -X POST -H 'Content-Type: application/json' localhost:3000/api/v1/user/login -d '{"username":"my_db_user","password":"password123"}') -``` - -
9. To interact with the database you can either continue using `curl`, interactive OpenAPI GUI from any browser `localhost:3000/api/v1` (provided by `rapidoc`) or choose one of the [available API clients](/api.md). The raw OpenAPI specification can be downloaded from the server at `localhost:3000/api/v1/openapi.json`. -

- -
10. The server can be shutdown with `CTRL+C` or programmatically posting to the shutdown endpoint as logged in server admin: -

- -```bash -# this will produce an admin API token, e.g. "bb2fc207-90d1-45dd-8110-3247c4753cd5" -token=$(curl -X POST -H 'Content-Type: application/json' localhost:3000/api/v1/user/login -d '{"username":"admin","password":"admin"}') -curl -X POST -H "Authorization: Bearer ${token}" localhost:3000/api/v1/admin/shutdown -``` diff --git a/agdb_web/content/en/docs/1.guides/5.how_to_use_studio.md b/agdb_web/content/en/docs/1.guides/5.how_to_use_studio.md deleted file mode 100644 index dfd929231..000000000 --- a/agdb_web/content/en/docs/1.guides/5.how_to_use_studio.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "How to use studio?" -description: "How to use studio, Agnesoft Graph Database" -navigation: - title: "How to use studio?" ---- - -# How to use studio? - -TBD diff --git a/agdb_web/content/en/docs/1.guides/6.troubleshooting.md b/agdb_web/content/en/docs/1.guides/6.troubleshooting.md deleted file mode 100644 index 20e7dfb04..000000000 --- a/agdb_web/content/en/docs/1.guides/6.troubleshooting.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Troubleshooting" -description: "Troubleshooting, Agnesoft Graph Database" -navigation: - title: "Troubleshooting" ---- - -# troubleshooting - -TBD diff --git a/agdb_web/content/en/docs/1.guides/7.migration_from_sql.md b/agdb_web/content/en/docs/1.guides/7.migration_from_sql.md deleted file mode 100644 index 5288b36e7..000000000 --- a/agdb_web/content/en/docs/1.guides/7.migration_from_sql.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Migration from SQL" -description: "Migration from SQL, Agnesoft Graph Database" -navigation: - title: "Migration from SQL" ---- - -# migration from sql - -TBD diff --git a/agdb_web/content/en/docs/1.guides/index.md b/agdb_web/content/en/docs/1.guides/index.md deleted file mode 100644 index a2e5825cd..000000000 --- a/agdb_web/content/en/docs/1.guides/index.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: "Guides" -description: "Guides, Agnesoft Graph Database" -navigation: - title: "Guides" ---- - -# guides - -The following guides are guided examples of usage of the agdb: - -1. [Concepts](/docs/guides/concepts) -

- -2. [Quickstart](/docs/guides/quickstart) -

- -3. [Quickstart - Client](/docs/guides/quickstart_client) -

- -4. [How to run a server?](/docs/guides/how_to_run_server) -

- -5. [How to use the studio?](/docs/guides/how_to_use_studio) -

- -6. [Troubleshooting](docs/guides/troubleshooting) -

diff --git a/agdb_web/content/en/docs/2.examples/index.md b/agdb_web/content/en/docs/2.examples/index.md deleted file mode 100644 index 985b12251..000000000 --- a/agdb_web/content/en/docs/2.examples/index.md +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: "Examples" -description: "Examples, Agnesoft Graph Database" -navigation: - title: "Examples" ---- - -# examples - -The following links lead you to the example code in the `agdb` repository. For the guided examples see [guides](docs/guides). - -
- -1. [app_db](https://github.com/agnesoft/agdb/tree/main/examples/app_db) -

- -2. [indexes](https://github.com/agnesoft/agdb/tree/main/examples/indexes) -

- -3. [joins](https://github.com/agnesoft/agdb/tree/main/examples/joins) -

- -4. [schema migration](https://github.com/agnesoft/agdb/tree/main/examples/schema_migration) -

- -5. [server client - rurst](https://github.com/agnesoft/agdb/tree/main/examples/server_client_rust) -

- -6. [server client - typescript](https://github.com/agnesoft/agdb/tree/main/examples/server_client_typescript) -

- -7. [strong types](https://github.com/agnesoft/agdb/tree/main/examples/strong_types) -

diff --git a/agdb_web/content/en/docs/3.references/1.queries.md b/agdb_web/content/en/docs/3.references/1.queries.md deleted file mode 100644 index 5f42e91a9..000000000 --- a/agdb_web/content/en/docs/3.references/1.queries.md +++ /dev/null @@ -1,1155 +0,0 @@ ---- -title: "Queries" -description: "Queries, Agnesoft Graph Database" -navigation: - title: "Queries" ---- - -# queries - -```mermaid -flowchart LR - - QueryBuilder["QueryBuilder"] --> insert("insert") - QueryBuilder --> remove("remove") - QueryBuilder --> select("select") - QueryBuilder --> search("search") - - insert --> i_aliases("aliases") --> i_a_ids("ids") --> InsertAliasesQuery["InsertAliasesQuery"] - insert --> i_edges("edges") --> i_e_from("from") --> i_e_to("to") --> InsertEdgesQuery["InsertEdgesQuery"] - i_e_to --> each("each") --> InsertEdgesQuery - i_e_to --> i_e_values("values") - each --> i_e_values_uniform("values_uniform") --> InsertEdgesQuery - each --> i_e_values("values") --> InsertEdgesQuery - insert --> i_index("index") --> InsertIndexQuery["InsertIndexQuery"] - insert --> i_nodes("nodes") - i_nodes --> i_n_values("values") --> InsertNodesQuery["InsertNodesQuery"] - i_nodes --> i_n_aliases("aliases") - i_n_count --> i_n_values_uniform("values_uniform") - i_n_aliases --> i_n_values - i_n_aliases --> InsertNodesQuery - i_n_aliases --> i_n_values_uniform - i_nodes --> i_n_count("count") --> InsertNodesQuery - insert --> i_element("element") --> InsertValuesQuery["InsertValuesQuery"] - insert --> i_elements("elements") --> InsertValuesQuery - insert --> i_values("values") - i_values --> i_v_ids("ids") --> InsertValuesQuery - insert --> i_values_uniform("values_uniform") --> InsertValuesQuery - - remove --> r_aliases("aliases") --> RemoveAliasesQuery["RemoveAliasesQuery"] - remove --> r_ids("ids") --> RemoveQuery["RemoveQuery"] - remove --> r_index("index") --> RemoveIndexQuery["RemoveIndexQuery"] - remove --> r_values("values") --> r_v_ids("ids") --> RemoveValuesQuery["RemoveValuesQuery"] - - select --> s_aliases("aliases") --> SelectAllAliasesQuery["SelectAllAliasesQuery"] - s_aliases --> s_a_ids("ids") --> SelectAliasesQuery["SelectAliasesQuery"] - select --> s_ids("ids") --> SelectQuery["SelectQuery"] - select --> s_indexes("indexes") --> SelectIndexesQuery["SelectIndexesQuery"] - select --> s_keys("keys") --> s_k_ids("ids") --> SelectKeysQuery["SelectKeysQuery"] - select --> key_count("key_count") --> s_k_c_ids("ids") --> SelectKeyCountQuery["SelectKeyCountQuery"] - select --> values("values") --> s_v_ids("ids") --> SelectValuesQuery["SelectValuesQuery"] - - search --> index("index") --> s_i_value("value") --> SearchQuery["SearchQuery"] - search --> from("from") --> SearchQuery - from --> limit("limit") --> SearchQuery - from --> offset("offset") - offset --> limit - from --> order_by("order_by") - order_by --> offset - order_by --> limit - order_by --> SearchQuery - from --> where --> SearchQuery - from --> to("to") - to --> order_by - to --> offset - to --> limit - search --> breadth_first("breadth_first") --> from - search --> depth_first("depth_first") --> from - search --> to - depth_first --> to - breadth_first --> to - to --> where(("where")) - order_by --> where - offset --> where - limit --> where - - condition --> SearchQuery - end_where("end_where") --> SearchQuery - where --> condition - modifier --> where - condition --> end_where - end_where --> logic - where --> modifier("not/beyond") - modifier --> condition[["distance
edge
edge_count
edge_count_from
edge_count_to
ids
key.value
keys
node
"]] - condition --> logic("and/or") - logic --> where -``` - -- [Queries](#queries) -- [DbUserValue](#dbuservalue) -- [QueryResult](#queryresult) -- [QueryError](#queryerror) -- [Transactions](#transactions) -- [QueryIds \& QueryId](#queryids--queryid) -- [QueryValues](#queryvalues) -- [Mutable queries](#mutable-queries) - - [Insert](#insert) - - [Insert aliases](#insert-aliases) - - [Insert edges](#insert-edges) - - [Insert index](#insert-index) - - [Insert nodes](#insert-nodes) - - [Insert values](#insert-values) - - [Remove](#remove) - - [Remove aliases](#remove-aliases) - - [Remove elements](#remove-elements) - - [Remove index](#remove-index) - - [Remove values](#remove-values) -- [Immutable queries](#immutable-queries) - - [Select](#select) - - [Select aliases](#select-aliases) - - [Select all aliases](#select-all-aliases) - - [Select elements](#select-elements) - - [Select indexes](#select-indexes) - - [Select keys](#select-keys) - - [Select key count](#select-key-count) - - [Select values](#select-values) - - [Search](#search) - - [Conditions](#conditions) - - [Truth tables](#truth-tables) - - [And](#and) - - [Or](#or) - - [Modifiers](#modifiers) - - [Results](#results) - - [Paths](#paths) - -All interactions with the `agdb` are realized through queries. There are two kinds of queries: - -- Immutable queries -- Mutable queries - -Immutable queries read the data from the database through `select` and `search` queries. Mutable queries write to or delete from the database through `insert` and `remove` queries. All queries follow the Rust rules about borrowing: - -``` -There can be unlimited number of immutable concurrent queries or exactly one mutable query running against the database. -``` - -The queries are executed against the database by calling the corresponding method on the database object: - -```Rust -impl Db { - // immutable queries only - pub fn exec(&self, query: &T) -> Result - - // mutable queries only - pub fn exec_mut(&mut self, query: &T) -> Result -} -``` - -Alternatively you can run a series of queries as a [transaction](#transactions). - -All queries return `Result`. The [`QueryResult`](#queryresult) is the universal data structure holding results of all queries in an uniform structure. The [`QueryError`](#queryerror) is the singular error type holding information of any failure or problem encountered when running the query. - -# DbUserValue - -The `DbUserValue` trait is an interface that can be implemented for user defined types so that they can be seamlessly used with the database: - -```Rust -pub trait DbUserValue: Sized { - fn db_id(&self) -> Option; - fn db_keys() -> Vec; - fn from_db_element(element: &DbElement) -> Result; - fn to_db_values(&self) -> Vec; -} -``` - -Typically you would derive this trait with `agdb::UserValue` procedural macro that uses the field names as keys (of type `String`) and loss-lessly converts the values when reading/writing from/to the database from supported types (e.g. field type `i32` will become `i64` in the database). - -It is recommended but optional to have `db_id` field of type `Option` in your user defined types which will further allow you to directly update your values with a query shorthands. However it is optional and all other features will still work including conversion from `QueryResult` or passing your types to `values()` in the builders: - -```Rust -#[derive(UserValue)] -struct User { db_id: Option, name: String, } -let user = User { db_id: None, name: "Bob".to_string() }; -db.exec_mut(&QueryBuilder::insert().nodes().values(vec![user]).query())?; -let mut user: User = db.exec(&QueryBuilder::select().values(User::db_keys()).ids(1).query())?.try_into()?; // User { db_id: Some(DbId(1)), name: "Bob" } -user.name = "Alice".to_string(); -db.exec_mut(&QueryBuilder::insert().element(&user).query())?; //updates the user element with new name -``` - -In some cases you may want to implement the `DbUserValue` trait yourself. For example when you want to omit a field or construct it based on other values. - -Types not directly used in the database but for which the conversions are supported: - -- u32 <=> u64 -- i32 <=> i64 -- f32 <=> f64 -- Vec <=> Vec -- Vec <=> Vec -- Vec <=> Vec -- &str => String (only one way conversion to `String`) -- Vec<&str> => Vec (only one way conversion to `Vec`) - -# QueryResult - -The `QueryResult` is the universal result type for all successful queries. It can be converted to user defined types that implement [`DbUserValue`](#dbuservalue) with `try_into()`. It looks like this: - -```Rust -pub struct QueryResult { - pub result: i64, - pub elements: Vec, -} -``` - -The `result` field holds numerical result of the query. It typically returns the number of database items affected. For example when selecting from the database it will hold a positive number of elements returned. When removing from the database it will hold a negative number of elements deleted from the database. The optional `from` and `to` fields will hold origin/destination id of an edge and will be `None` for nodes. - -The `elements` field hold the [database elements](concepts.md#graph) returned. Each element looks like: - -```Rust -pub struct DbElement { - pub id: DbId, - pub from: Option, - pub to: Option, - pub values: Vec, -} -``` - -The `id` (i.e. `pub struct DbId(i64)`) is a numerical identifier of a database element. Positive number means the element is a `node` while negative number means the elements is an `edge`. The value `0` is a special value signifying no valid element and is used when certain queries return data not related to any particular element, e.g. aliases. - -The values are `key-value` pairs (properties) associated with the given element: - -```Rust -pub struct DbKeyValue { - pub key: DbValue, - pub value: DbValue, -} -``` - -Where `DbValue` is: - -```Rust -pub enum DbValue { - Bytes(Vec), - I64(i64), - U64(u64), - F64(DbF64), - String(String), - VecI64(Vec), - VecU64(Vec), - VecF64(Vec), - VecString(Vec), -} -``` - -Note the `DbF64` type (i.e. `pub struct DbF64(f64)`) which is a convenient wrapper of `f64` to provide opinionated implementation of some of the operations that are not floating type friendly like comparisons. In `agdb` the float type is using [`total_cmp` standard library function](https://doc.rust-lang.org/std/primitive.f64.html#method.total_cmp). Please see its documentation for important details about possible limits or issues on certain platforms. - -The enum variants can be conveniently accessed through methods named after each variant: - -```Rust -fn bytes(&self) -> Result<&Vec, DbError>; -fn to_f64(&self) -> Result; -fn to_i64(&self) -> Result; -fn to_u64(&self) -> Result; -fn to_string(&self) -> String; -fn string(&self) -> Result<&String, DbError>; -fn vec_f64(&self) -> Result<&Vec, DbError>; -fn vec_i64(&self) -> Result<&Vec, DbError>; -fn vec_u64(&self) -> Result<&Vec, DbError>; -fn vec_string(&self) -> Result<&Vec, DbError>; - -``` - -The numerical variants (`I64`, `U64`, `DbF64`) will attempt loss-less conversions where possible. To avoid copies all other variants return `&` where conversions are not possible even if they could be done in theory. The special case is `to_string()` provided by the `Display` trait. It converts any values into string (it also copies the `String` variant) and performs possibly lossy conversion from `Bytes` to UTF-8 string. - -# QueryError - -Failure when running a query is reported through a single `QueryError` object which can optionally hold internal error (or chain of errors) that led to the failure. Most commonly it will represent **data error** or **logic error** in your query. Less commonly it may also report a failure to perform the requested operation due to underlying infrastructure issue (e.g. out of memory). It is up to the client code to handle the error. - -# Transactions - -You can run a series of queries as a transaction invoking corresponding methods on the database object: - -```Rust -impl Db { - // immutable transactions - pub fn transaction(&self, mut f: impl FnMut(&Transaction) -> Result) -> Result - - // mutable transactions - pub fn transaction_mut>(&mut self, mut f: impl FnMut(&mut TransactionMut) -> Result) -> Result -} -``` - -The transaction methods take a closure that itself takes a transaction object as an argument. This is to prevent long lived transactions and force them to be as concise as possible. The transaction objects implement much the same methods as the `Db` itself (`exec` / `exec_mut`). It is not possible to nest transactions but you can run immutable queries within a mutable transaction `TransactionMut`. - -Note that you cannot manually abort, rollback or commit the transaction. These are handled by the database itself based on the result of the closure. If it's `Ok` the transaction will be committed (in case `mutable` queries as there is nothing to commit for `immutable` queries). If the result is `Err` the transaction will be rolled back. - -In both cases the result will be returned and the signature of the transaction methods allows for custom mapping of the default `Result` to an arbitrary `` result-error pair. - -Worth noting is that regular `exec / exec_mut` methods on the `Db` object are actually implemented as transactions. - -# QueryIds & QueryId - -Most queries operate over a set of database ids. The `QueryIds` type is actually an enum: - -```Rust -pub enum QueryIds { - Ids(Vec), - Search(SearchQuery), -} -``` - -It represents either a set of actual `ids` or a `search` query that will be executed as the larger query and its results fed as ids to the larger query. The `QueryId` is defined as another enum: - -```Rust -pub enum QueryId { - Id(DbId), - Alias(String), -} -``` - -This is because you can refer to the database elements via their numerical identifier or by the `string` alias (name). The `DbId` is then just a wrapper type: `pub struct DbId(pub i64)`. Both `QueryIds` and `QueryId` can be constructed from large number of different types like raw `i64`, `&str`, `String` or vectors of those etc. - -# QueryValues - -The `QueryValues` is a an enum type that makes a distinction between singular and multiple values like so: - -```Rust -pub enum QueryValues { - Single(Vec), - Multi(Vec>), -} -``` - -This is especially important because it can change the meaning of query making use of this type. For example when inserting elements into the database and supplying `QueryValues::Single` all the elements will have the copy of the single set of properties associated with them. Conversely `QueryValues::Multi` will initialize each element with a different provided set of properties bu the number of inserted elements and the number of property sets must then match (it would be a query logic error if they did not match and the query would fail with such an error). - -# Mutable queries - -Mutable queries are the way to modify the data in the database. Remember there can only be a mutable query running against the database at any one time preventing all other mutable or immutable queries running concurrently. There are two types of mutable queries: - -- insert -- remove - -The `insert` queries are used for both insert and updating data while `remove` queries are used to delete data from the database. - -## Insert - -There are 5 distinct insert queries: - -- insert aliases -- insert edges -- insert nodes -- insert index -- insert values - -### Insert aliases - - -
StructResult
- -```Rust -pub struct InsertAliasesQuery { - pub ids: QueryIds, - pub aliases: Vec, -} -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of inserted/updated aliases - pub elements: Vec, // empty -} -``` - -
Builder
- -```Rust -QueryBuilder::insert().aliases("a").ids(1).query(); -QueryBuilder::insert().aliases("a").ids("b").query(); // alias "b" is replaced with "a" -QueryBuilder::insert().aliases(vec!["a", "b"]).ids(vec![1, 2]).query(); -``` - -
- -Inserts or updates aliases of existing nodes (and only nodes, edges cannot have aliases) through this query. It takes `ids` [`QueryIds`](#queryids--queryid) and list of `aliases` as arguments. The number of aliases must match the `ids` (even if they are a search query). Empty alias (`""`) are not allowed. - -Note that this query is also used for updating existing aliases. Byt inserting a different alias of an id that already has one that alias will be overwritten with the new one. - -### Insert edges - - -
StructResult
- -```Rust -pub struct InsertEdgesQuery { - pub from: QueryIds, - pub to: QueryIds, - pub values: QueryValues, - pub each: bool, -} -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of inserted edges - pub elements: Vec, // list of inserted edges (only ids) -} -``` - -
Builder
- -```Rust -QueryBuilder::insert().edges().from(1).to(2).query(); -QueryBuilder::insert().edges().from("a").to("b").query(); -QueryBuilder::insert().edges().from("a").to(vec![1, 2]).query(); -QueryBuilder::insert().edges().from(vec![1, 2]).to(vec![2, 3]).query(); -QueryBuilder::insert().edges().from(vec![1, 2]).to(vec![2, 3]).each().query(); -QueryBuilder::insert().edges().from("a").to(vec![1, 2]).values(vec![vec![("k", 1).into()], vec![("k", 2).into()]]).query(); -QueryBuilder::insert().edges().from("a").to(vec![1, 2]).values_uniform(vec![("k", "v").into(), (1, 10).into()]).query(); -QueryBuilder::insert().edges().from(QueryBuilder::search().from("a").where_().node().query()).to(QueryBuilder::search().from("b").where_().node().query()).query(); -QueryBuilder::insert().edges().from(QueryBuilder::search().from("a").where_().node().query()).to(QueryBuilder::search().from("b").where_().node().query()).values(vec![vec![("k", 1).into()], vec![("k", 2).into()]]).query(); -QueryBuilder::insert().edges().from(QueryBuilder::search().from("a").where_().node().query()).to(QueryBuilder::search().from("b").where_().node().query()).values_uniform(vec![("k", "v").into(), (1, 10).into()]).query(); -``` - -
- -The `from` and `to` represents list of origins and destinations of the edges to be inserted. As per [`QueryIds`](#queryids--queryid) it can be a list, single value, search query or even a result of another query (e.g. [insert nodes](#insert-nodes)) through the call of convenient `QueryResult::ids()` method. All ids must be `node`s and all must exist in the database otherwise data error will occur. If the `values` is [`QueryValues::Single`](#queryvalues) all edges will be associated with the copy of the same properties. If `values` is [`QueryValues::Multi`](#queryvalues) then the number of edges being inserted must match the provided values otherwise a logic error will occur. By default the `from` and `to` are expected to be of equal length specifying at each index the pair of nodes to connect with an edge. If all-to-all is desired set the `each` flag to `true`. The rule about the `values` [`QueryValues::Multi`](#queryvalues) still applies though so there must be enough values for all nodes resulting from the combination. The values can be inferred from user defined types if they implement `DbUserValue` trait (`#derive(agdb::UserValue)`). Both singular nad vectorized versions are supported. - -### Insert index - - -
StructResult
- -```Rust -pub struct InsertIndexQuery(pub DbValue); -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of indexed values - pub elements: Vec, // empty -} -``` - -
Builder
- -```Rust -QueryBuilder::insert().index("key").query(); -``` - -
- -Creates an index for a key. The index is valid for the entire database including any and all existing values in the database. The purpose of the index is to provide faster lookup for data that is not modelled on the graph itself. Example can be looking up users by their username or token. - -### Insert nodes - - -
StructResult
- -```Rust -pub struct InsertNodesQuery { - pub count: u64, - pub values: QueryValues, - pub aliases: Vec, -} -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of inserted nodes - pub elements: Vec, // list of inserted nodes (only ids) -} -``` - -
Builder
- -```Rust -QueryBuilder::insert().nodes().count(2).query(); -QueryBuilder::insert().nodes().count(2).values_uniform(vec![("k", "v").into(), (1, 10).into()]).query(); -QueryBuilder::insert().nodes().aliases(vec!["a", "b"]).query(); -QueryBuilder::insert().nodes().aliases(vec!["a", "b"]).values(vec![vec![("k", 1).into()], vec![("k", 2).into()]]).query(); -QueryBuilder::insert().nodes().aliases(vec!["a", "b"]).values_uniform(vec![("k", "v").into(), (1, 10).into()]).query(); -QueryBuilder::insert().nodes().values(vec![vec![("k", 1).into()], vec![("k", 2).into()]]).query(); -``` - -
- -The `count` is the number of nodes to be inserted into the database. It can be omitted (left `0`) if either `values` or `aliases` (or both) are provided. If the `values` is [`QueryValues::Single`](#queryvalues) you must provide either `count` or `aliases`. It is a logic error if the count cannot be inferred and is set to `0`. If both `values` [`QueryValues::Multi`](#queryvalues) and `aliases` are provided their lengths must match, otherwise it will result in a logic error. Empty alias (`""`) are not allowed. The values can be inferred from user defined types if they implement `DbUserValue` trait (`#derive(agdb::UserValue)`). Both singular nad vectorized versions are supported. - -### Insert values - - -
StructResult
- -```Rust -pub struct InsertValuesQuery { - pub ids: QueryIds, - pub values: QueryValues, -} -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of inserted key-value pairs - pub elements: Vec, // empty -} -``` - -
Builder
- -```Rust -QueryBuilder::insert().element(&T { ... }).query(); //Where T: DbUserValue (i.e. #derive(UserValue)) -QueryBuilder::insert().elements(&vec![T {...}, T {...}]).query(); //Where T: DbUserValue (i.e. #derive(UserValue)) -QueryBuilder::insert().values(vec![vec![("k", "v").into(), (1, 10).into()], vec![("k", 2).into()]]).ids(vec![1, 2]).query(); -QueryBuilder::insert().values(vec![vec![("k", "v").into(), (1, 10).into()], vec![("k", 2).into()]]).ids(QueryBuilder::search().from("a").query()).query(); -QueryBuilder::insert().values_uniform(vec![("k", "v").into(), (1, 10).into()]).ids(vec![1, 2]).query(); -QueryBuilder::insert().values_uniform(vec![("k", "v").into(), (1, 10).into()]).ids(QueryBuilder::search().from("a").query()).query(); -``` - -
- -Inserts or updates key-value pairs (properties) of existing elements. You need to specify the `ids` [`QueryIds`](#queryids--queryid) and the list of `values`. The `values` can be either [`QueryValues::Single`](#queryvalues) that will insert the single set of properties to all elements identified by `ids` or [`QueryValues::Multi`](#queryvalues) that will insert to each `id` its own set of properties but their number must match the number of `ids`. If the user defined type contains `db_id` field of type `Option` you can use the shorthand `insert().element() / .insert().elements()` that will infer the values and ids from your types. All the rules as if specified manually still apply (e.g. the ids must exist in the database). The `values()` can be inferred from user defined types if they implement `DbUserValue` trait (`#derive(agdb::UserValue)`). Both singular nad vectorized versions are supported. - -Note that this query is also used for updating existing values. By inserting the same `key` its old value will be overwritten with the new one. - -## Remove - -There are 4 distinct remove queries: - -- remove aliases -- remove (elements) -- remove index -- remove values - -### Remove aliases - - -
StructResult
- -```Rust -pub struct RemoveAliasesQuery(pub Vec); -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // negative number of removed aliases - pub elements: Vec, // empty -} -``` - -
Builder
- -```Rust -QueryBuilder::remove().aliases("a").query(); -QueryBuilder::remove().aliases(vec!["a", "b"]).query(); -``` - -
- -The aliases listed will be removed from the database if they exist. It is NOT an error if the aliases do not exist in the database. - -### Remove elements - - -
StructResult
- -```Rust -pub struct RemoveQuery(pub QueryIds); -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // negative number of removed ids - // (does not include removed edges - // unless listed in query ids) - pub elements: Vec, // empty -} -``` - -
Builder
- -```Rust -QueryBuilder::remove().ids(1).query(); -QueryBuilder::remove().ids("a").query(); -QueryBuilder::remove().ids(vec![1, 2]).query(); -QueryBuilder::remove().ids(vec!["a", "b"]).query(); -QueryBuilder::remove().ids(QueryBuilder::search().from("a").query()).query(); -``` - -
- -The elements identified by [`QueryIds`](#queryids--queryid) will be removed from the database if they exist. It is NOT an error if the elements to be removed do not exist in the database. All associated properties (key-value pairs) are also removed from all elements. Removing nodes will also remove all their edges (incoming and outgoing) and their properties. - -### Remove index - - -
StructResult
- -```Rust -pub struct RemoveIndexQuery(pub DbValue); -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // negative number of values removed - // from the index - pub elements: Vec, // empty -} -``` - -
Builder
- -```Rust -QueryBuilder::remove().index("key").query() -``` - -
- -Removes an index from the database. It is NOT an error if the index does not exist in the database. - -### Remove values - - -
StructResult
- -```Rust -pub struct RemoveValuesQuery(pub SelectValuesQuery); -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // negative number of actually removed - // key-value pairs - pub elements: Vec, // empty -} -``` - -
Builder
- -```Rust -QueryBuilder::remove().values(vec!["k1".into(), "k2".into()]).ids(vec![1, 2]).query(); -QueryBuilder::remove().values(vec!["k1".into(), "k2".into()]).ids(QueryBuilder::search().from("a").query()).query(); -``` - -
- -NOTE: See [`SelectValuesQuery`](#select-values) for more details. - -The properties (key-value pairs) identified by `keys` and associated with `ids` [`QueryIds`](#queryids--queryid) will be removed from the database if they exist. It is an error if any of the `ids` do not exist in the database but it is NOT an error if any of the keys does not exist or is not associated as property to any of the `ids`. - -# Immutable queries - -Immutable queries read the data from the database and there can be unlimited number of concurrent queries running against the database at the same time. There are two types of immutable queries: - -- select -- search - -The `select` queries are used to read the data from the database using known `id`s of elements. The `search` queries are used to find the `id`s and the result of search queries is thus often combined with the `select` queries. - -## Select - -There are 7 select queries: - -- select aliases -- select all aliases -- select (elements) -- select indexes -- select keys -- select key count -- select values - -### Select aliases - - -
StructResult
- -```Rust -pub struct SelectAliasesQuery(pub QueryIds); -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of returned elements - pub elements: Vec, // list of elements each with - // a single property - // (`String("alias")`: `String`) -} -``` - -
Builder
- -```Rust -QueryBuilder::select().aliases().ids(vec![1, 2]).query(); -QueryBuilder::select().aliases().ids(QueryBuilder::search().from(1).query()).query(); -``` - -
- -Selects aliases of the `ids` [`QueryIds`](#queryids--queryid) or a search. If any of the ids does not have an alias running the query will return an error. - -### Select all aliases - - -
StructResult
- -```Rust -pub struct SelectAllAliases {} -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of elements with aliases - pub elements: Vec, // list of elements with an - // alias each with a single - // property (`String("alias"): String`) -} -``` - -
Builder
- -```Rust -QueryBuilder::select().aliases().query() -``` - -
- -Selects all aliases in the database. - -### Select elements - - -
StructResult
- -```Rust -pub struct SelectQuery(pub QueryIds); -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of returned elements - pub elements: Vec, // list of elements with - // all properties -} -``` - -
Builder
- -```Rust -QueryBuilder::select().ids("a").query(); -QueryBuilder::select().ids(vec![1, 2]).query(); -QueryBuilder::select().ids(QueryBuilder::search().from(1).query()).query(); -``` - -
- -Selects elements identified by `ids` [`QueryIds`](#queryids--queryid) or search query with all their properties. If any of the ids does not exist in the database running the query will return an error. The search query is most commonly used to find, filter or otherwise limit what elements to select. - -### Select indexes - - -
StructResult
- -```Rust -pub struct SelectIndexesQuery {}; -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of indexes in the database - pub elements: Vec, // single element with id 0 and list of - // properties representing each index - // (`DbValue`: `u64`) where the key is - // the indexed key and the value is number - // of indexed values in the index. -} -``` - -
Builder
- -```Rust -QueryBuilder::select().indexes().query(); -``` - -
- -Selects all indexes in the database. - -### Select keys - - -
StructResult
- -```Rust -pub struct SelectKeysQuery(pub QueryIds); -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of returned elements - pub elements: Vec, // list of elements with only keys - // defaulted values will be `I64(0)` -} -``` - -
Builder
- -```Rust -QueryBuilder::select().keys().ids("a").query(); -QueryBuilder::select().keys().ids(vec![1, 2]).query(); -QueryBuilder::select().keys().ids(QueryBuilder::search().from(1).query()).query(); -``` - -
- -Selects elements identified by `ids` [`QueryIds`](#queryids--queryid) or search query with only keys returned. If any of the ids does not exist in the database running the query will return an error. This query is most commonly used for establishing what data is available in on the graph elements (e.g. when transforming the data into a table this query could be used to populate the column names). - -### Select key count - - -
StructResult
- -```Rust -pub struct SelectKeyCountQuery(pub QueryIds); -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of returned elements - pub elements: Vec, // list of elements each with a - // single property - // (`String("key_count")`: `u64`) -} -``` - -
Builder
- -```Rust -QueryBuilder::select().key_count().ids("a").query(); -QueryBuilder::select().key_count().ids(vec![1, 2]).query(); -QueryBuilder::select().key_count().ids(QueryBuilder::search().from(1).query()).query(); -``` - -
- -Selects elements identified by `ids` [`QueryIds`](#queryids--queryid) or search query with only key count returned. If any of the ids does not exist in the database running the query will return an error. This query is most commonly used for establishing how many properties there are associated with the graph elements. - -### Select values - - -
StructResult
- -```Rust -pub struct SelectValuesQuery { - pub keys: Vec, - pub ids: QueryIds, -} -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of returned elements - pub elements: Vec, // list of elements with only - // selected properties -} -``` - -
Builder
- -```Rust -QueryBuilder::select().values(vec!["k".into(), "k2".into()]).ids("a").query(); -QueryBuilder::select().values(vec!["k".into(), "k2".into()]).ids(vec![1, 2]).query(); -QueryBuilder::select().values(vec!["k".into(), "k2".into()]).ids(QueryBuilder::search().from(1).query()).query(); -``` - -
- -Selects elements identified by `ids` [`QueryIds`](#queryids--queryid) or search query with only selected properties (identified by the list of keys). If any of the ids does not exist in the database or does not have all the keys associated with it then running the query will return an error. While the search query is most commonly used to find, filter or otherwise limit what elements to select, using this particular query can limit what properties will be returned. If you plan to convert the result into your user defined type(s) you should use `T::db_keys()` provided through the `DbUserValue` trait (`#derive(UserValue)`) as argument to `values()`. - -## Search - - -
StructResult
- -```Rust -pub struct SearchQuery { - pub algorithm: SearchQueryAlgorithm, - pub origin: QueryId, - pub destination: QueryId, - pub limit: u64, - pub offset: u64, - pub order_by: Vec, - pub conditions: Vec, -} -``` - - - -```Rust -pub struct QueryResult { - pub result: i64, // number of elements found - pub elements: Vec, // list of elements found (only ids) -} -``` - -
- -```Rust -pub enum SearchQueryAlgorithm { - BreadthFirst, - DepthFirst, - Index, -} - -pub enum DbKeyOrder { - Asc(DbValue), - Desc(DbValue), -} -``` - -
Builder
- -```Rust -QueryBuilder::search().from("a").query(); -QueryBuilder::search().to(1).query(); //reverse search -QueryBuilder::search().from("a").to("b").query(); //path search using A* algorithm -QueryBuilder::search().breadth_first().from("a").query(); //breadth first is the default and can be omitted -QueryBuilder::search().depth_first().from("a").query(); -QueryBuilder::search().index("age").value(20).query(); //index search -//limit, offset and order_by can be applied similarly to all the search variants -QueryBuilder::search().from(1).order_by(vec![DbKeyOrder::Desc("age".into()), DbKeyOrder::Asc("name".into())]).query() -QueryBuilder::search().from(1).offset(10).query(); -QueryBuilder::search().from(1).limit(5).query(); -QueryBuilder::search().from(1).order_by(vec![DbKeyOrder::Desc("k".into())]).offset(10).query(); -QueryBuilder::search().from(1).order_by(vec![DbKeyOrder::Desc("k".into())]).limit(5).query(); -QueryBuilder::search().from(1).order_by(vec![DbKeyOrder::Desc("k".into())]).offset(10).limit(5).query(); -QueryBuilder::search().from(1).offset(10).limit(5).query(); -``` - -
- -There is only a single search query that provides the ability to search the graph or indexes. When searching the graph it examines connected elements and their properties. While it is possible to construct the search queries manually, specifying conditions manually in particular can be excessively difficult and therefore **using the builder pattern is recommended**. The default search algorithm is `breadth first` however you can choose to use `depth first`. For path search the `A*` algorithm is used. For searching an index the algorithm is `index`. - -If the index search is done the graph traversal is skipped entirely as are most of the parameters including like limit, offset, ordering and conditions. - -The graph search query is made up of the `origin` and `destination` of the search and the algorithm. Specifying only `origin` (from) will result in a search along `from->to` edges. Specifying only `destination` (to) will result in the reverse search along the `to<-from` edges. When both `origin` and `destination` are specified the search algorithm becomes a path search and the algorithm used will be `A*`. Optionally you can specify a `limit` (0 = unlimited) and `offset` (0 = no offset) to the returned list of graph element ids. If specified (!= 0) the `origin` and the `destination` must exist in the database, otherwise an error will be returned. The elements can be optionally ordered with `order_by` list of keys allowing ascending/descending ordering based on multiple properties. - -Finally the list of `conditions` that each examined graph element must satisfy to be included in the result (and subjected to the `limit` and `offset`). - -**NOTE:** When both `origin` and `destination` are specified and the algorithm is switched to the `A*` the `limit` and `offset` are applied differently. In regular (open-ended) search the search will end when the `limit` is reached but with the path search (A\*) the `destination` must be reached first before they are applied. - -### Conditions - - -
Struct
- -```Rust -pub struct QueryCondition { - pub logic: QueryConditionLogic, - pub modifier: QueryConditionModifier, - pub data: QueryConditionData, -} - -pub enum QueryConditionLogic { - And, - Or, -} - -pub enum QueryConditionModifier { - None, - Beyond, - Not, - NotBeyond, -} - -pub enum QueryConditionData { - Distance(CountComparison), - Edge, - EdgeCount(CountComparison), - EdgeCountFrom(CountComparison), - EdgeCountTo(CountComparison), - Ids(Vec), - KeyValue { key: DbValue, value: Comparison }, - Keys(Vec), - Node, - Where(Vec), -} - -pub enum CountComparison { - Equal(u64), - GreaterThan(u64), - GreaterThanOrEqual(u64), - LessThan(u64), - LessThanOrEqual(u64), - NotEqual(u64), -} - -pub enum Comparison { - Equal(DbValue), - GreaterThan(DbValue), - GreaterThanOrEqual(DbValue), - LessThan(DbValue), - LessThanOrEqual(DbValue), - NotEqual(DbValue), - Contains(DbValue), -} -``` - -
Builder
- -```Rust -//the where_() can be applied to any of the basic search queries after order_by/offset/limit -//not() and not_beyond() can be applied to all conditions including nested where_() -QueryBuilder::search().from(1).where_().distance(CountComparison::LessThan(3)).query(); -QueryBuilder::search().from(1).where_().edge().query(); -QueryBuilder::search().from(1).where_().edge_count(CountComparison::GreaterThan(2))().query(); -QueryBuilder::search().from(1).where_().edge_count_from(CountComparison::Equal(1))().query(); -QueryBuilder::search().from(1).where_().edge_count_to(CountComparison::NotEqual(1))().query(); -QueryBuilder::search().from(1).where_().node().query(); -QueryBuilder::search().from(1).where_().key("k").value(Comparison::Equal(1.into())).query(); -QueryBuilder::search().from(1).where_().keys(vec!["k1".into(), "k2".into()]).query(); -QueryBuilder::search().from(1).where_().not().keys(vec!["k1".into(), "k2".into()]).query(); -QueryBuilder::search().from(1).where_().ids(vec![1, 2]).query(); -QueryBuilder::search().from(1).where_().beyond().keys(vec!["k"]).query(); -QueryBuilder::search().from(1).where_().not().ids(vec![1, 2]).query(); -QueryBuilder::search().from(1).where_().not_beyond().ids("a").query(); -QueryBuilder::search().from(1).where_().node().or().edge().query(); -QueryBuilder::search().from(1).where_().node().and().distance().query(CountComparison::GreaterThanOrEqual(3)).query(); -QueryBuilder::search().from(1).where_().node().or().where_().edge().and().key("k").value(Comparison::Equal(1.into())).end_where().query(); -QueryBuilder::search().from(1).where_().node().or().where_().edge().and().key("k").value(Comparison::Contains(1.into())).end_where().query(); -QueryBuilder::search().from(1).where_().node().or().where_().edge().and().key("k").value(Comparison::Contains(vec![1, 2].into())).end_where().query(); -``` - -
- -The currently supported conditions are: - -- Where (opens nested list of conditions) -- Edge (if the element is an `edge`) -- Node (if the element is a `node`) -- Distance (if the current distance of the search satisfies the numerical comparison, each graph element away from the start increases the distance, including edges, i.e. second node from start is at distance `2`) -- EdgeCount (if the element is a node and total number of edges (in and out) satisfies the numerical comparison - self-referential edges are counted twice) -- EdgeCountFrom (if the element is a node and total number of outgoing edges satisfies the numerical comparison) -- EdgeCountTo (if the element is a node and total number of incoming edges satisfies the numerical comparison) -- Ids (if the element id is in the list) -- KeyValue (if the element's property has the `key` and its value satisfies `value` comparison) -- Keys (if the element has all the `keys` regardless of their values) -- EndWhere (closes nested list of conditions) - -All conditions can be further modified as follows: - -- Beyond (continues the search only beyond this element) -- Not (reverses the condition result) -- NotBeyond (stops the search beyond this element) - -The conditions can be changed with logic operators: - -- And (logical `and`) -- Or (logical `or`) - -NOTE: The use of `where_` with an underscore as the method name is necessary to avoid conflict with the Rust keyword. - -The conditions are applied one at a time to each visited element and chained using logic operators `AND` and `OR`. They can be nested using `where_` and `end_where` (in place of brackets). The condition evaluator supports short-circuiting not evaluating conditions further if the logical outcome cannot change. The condition comparators are type strict meaning that they do not perform type conversions nor coercion (e.g. `Comparison::Equal(1_i64).compare(1_u64)` will evaluate to `false`). Slight exception to this rule is the `Comparison::Contains` as it allows vectorized version of the base type (e.g. `Comparison::Contains(vec!["bc", "ef"]).compare("abcdefg")` will evaluate to `true`). - -The condition `Distance` and the condition modifiers `Beyond` and `NotBeyond` are particularly important because they can directly influence the search. The former (`Distance`) can limit the depth of the search and can help with constructing more elaborate queries (or sequence thereof) extracting only fine grained elements (e.g. nodes whose edges have particular properties or are connected to other nodes with some properties). The latter (`Beyond` and `NotBeyond`) can limit search to only certain areas of an otherwise larger graph. Its most basic usage would be with condition `ids` to flat out stop the search at certain elements or continue only beyond certain elements. - -### Truth tables - -The following information should help with reasoning about the query conditions. Most of it should be intuitive but there are some aspects that might not be obvious especially when combining logic operators and condition modifiers. The search is using the following `enum` when evaluating conditions: - -```Rust -pub enum SearchControl { - Continue(bool), - Finish(bool), - Stop(bool), -} -``` - -The type controls the search and the boolean value controls if the given element should be included in a search result. The `Stop` will prevent the search expanding beyond current element (stopping the search in that direction). `Finish` will immediately exit the search returning accumulated elements (ids) and is only used internally with `offset` and `limit` (NOTE: path search and `order_by` still require complete search regardless of `limit`). - -Each condition contributes to the final control result as follows with the starting/default value being always `Continue(true)`: - -#### And - -| Left | Right | Result | -| -------------- | --------------- | ----------------------- | -| Continue(left) | Continue(right) | Continue(left && right) | -| Continue(left) | Stop(right) | Stop(left && right) | -| Continue(left) | Finish(right) | Finish(left && right) | -| Stop(left) | Stop(right) | Stop(left && right) | -| Stop(left) | Finish(right) | Finish(left && right) | -| Finish(left) | Finish(right) | Finish(left && right) | - -#### Or - -| Left | Right | Result | -| -------------- | --------------- | ------------------------- | -| Continue(left) | Continue(right) | Continue(left \|\| right) | -| Continue(left) | Stop(right) | Continue(left \|\| right) | -| Continue(left) | Finish(right) | Continue(left \|\| right) | -| Stop(left) | Stop(right) | Stop(left \|\| right) | -| Stop(left) | Finish(right) | Stop(left \|\| right) | -| Finish(left) | Finish(right) | Finish(left \|\| right) | - -#### Modifiers - -Modifiers will change the result of a condition based on the control value (the boolean) as follows: - -| Modifier | TRUE | FALSE | -| --------- | ------------------- | ---------------------- | -| None | - | - | -| Beyond | `&& Continue(true)` | `\|\| Stop(false)` | -| Not | `!` | `!` | -| NotBeyond | `&& Stop(true)` | `\|\| Continue(false)` | - -#### Results - -Most conditions result in `Continue(bool)` except for `distance()` and nested `where()` which can also result in `Stop(bool)`: - -| Condition | Continue | Stop | -| ----------- | -------- | ---- | -| Where | YES | YES | -| Edge | YES | NO | -| Node | YES | NO | -| Distance | YES | YES | -| EdgeCount\* | YES | NO | -| Ids | YES | NO | -| Key(Value) | YES | NO | -| Keys | YES | NO | - -### Paths - -Path search (`from().to()`) uses A\* algorithm. Every element (node or edge) has a cost of `1` by default. If it passes all the conditions (the `SearchControl` value `true`) the cost will remain `1` and would be included in the result (if the path it is on would be selected). If it fails any of the conditions (the `SearchControl` value `false`) its cost will be `2`. This means that the algorithm will prefer paths where elements match the conditions rather than the absolutely shortest path (that can be achieved with no conditions). If the search is not to continue beyond certain element (through `beyond()`, `not_beyond()` or `distance()` conditions) its cost will be `0` and the paths it is on will no longer be considered for that search. - ---- - -For further examples and use cases see the [efficient agdb](docs/efficient_agdb.md). diff --git a/agdb_web/content/en/docs/3.references/2.server.md b/agdb_web/content/en/docs/3.references/2.server.md deleted file mode 100644 index 8367115ea..000000000 --- a/agdb_web/content/en/docs/3.references/2.server.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Server" -description: "Server, Agnesoft Graph Database" -navigation: - title: "Server" ---- - -# server - -TBD diff --git a/agdb_web/content/en/docs/3.references/3.studio.md b/agdb_web/content/en/docs/3.references/3.studio.md deleted file mode 100644 index 6d4ad91d9..000000000 --- a/agdb_web/content/en/docs/3.references/3.studio.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Studio" -description: "Studio, Agnesoft Graph Database" -navigation: - title: "Studio" ---- - -# studio - -TBD diff --git a/agdb_web/content/en/docs/3.references/4.cloud.md b/agdb_web/content/en/docs/3.references/4.cloud.md deleted file mode 100644 index b746393b6..000000000 --- a/agdb_web/content/en/docs/3.references/4.cloud.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Coud" -description: "Cloud, Agnesoft Graph Database" -navigation: - title: "Cloud" ---- - -# cloud - -TBD diff --git a/agdb_web/content/en/docs/3.references/5.effiicient_agdb.md b/agdb_web/content/en/docs/3.references/5.effiicient_agdb.md deleted file mode 100644 index 890099275..000000000 --- a/agdb_web/content/en/docs/3.references/5.effiicient_agdb.md +++ /dev/null @@ -1,576 +0,0 @@ ---- -title: "Efficient agdb" -description: "Efficient agdb, Agnesoft Graph Database" -navigation: - title: "Efficient agdb" ---- - -# efficient agdb - -In this document we will explore more realistic use of the `agdb`. It should help you understand how to make the best use of the `graph` data schema and how to build complex queries. - -The premise that we will be working on is building a database for a social network. The users of the network can create posts and share them with other users to comment and like. You can see the complete code under [tests/efficient_agdb.rs](../tests/efficient_agdb.rs). - -- [The setup](#the-setup) - - [Users](#users) - - [Posts](#posts) - - [Comments](#comments) - - [Likes](#likes) -- [Selects \& Searches](#selects--searches) - - [Login](#login) - - [User content](#user-content) - - [Posts](#posts-1) - - [Comments](#comments-1) -- [Schema updates](#schema-updates) - - [Likes](#likes-1) - - [Comments](#comments-2) -- [Summary](#summary) - -## The setup - -```Rust -fn create_db() -> Result>, QueryError> { - let db = Arc::new(RwLock::new(Db::new("social.agdb")?)); - db.write()?.transaction_mut(|t| -> Result<(), QueryError> { - t.exec_mut( - &QueryBuilder::insert() - .nodes() - .aliases(vec!["root", "users", "posts"]) - .query(), - )?; - t.exec_mut( - &QueryBuilder::insert() - .edges() - .from("root") - .to(vec!["users", "posts"]) - .query(), - )?; - Ok(()) - })?; - - Ok(db) -} -``` - -We are setting up the database for the multithread use with the `Arc` and the `RwLock` in order to leverage unlimited read parallelism. We create nodes for `users` and one for `posts`. We also create a `root` node and connect the other two to it. The `agdb` does allow disjointed graphs but it is not easy to navigate an unknown database (e.g. when opening the database file in a data editor/explorer without knowing its content). A useful convention is thus to specify a root node. If it is a first node (that would always end up with the `id` == `1`) or has an alias (i.e. `root`) the entrypoint is known. We can then connect other nodes to it or insert their aliases (or ids) as properties to the `root` node. There is no preferred or hardcoded method to do this which is intentional. You may also choose not to do it at all if you do not have a need for data discovery. - -### Users - -The users of our social network will be nodes connected to the `users` node. The information we want to store about our users are: - -- username -- e-mail -- password - -Lets firs define the `User` struct to hold this information: - -```Rust -#[derive(UserValue)] -struct User { - username: String, - email: String, - password: String, -} -``` - -We derive from `agdb::UserValue` so we can use the `User` type directly in our queries. A query creating the user would therefore look like this: - -```Rust -fn register_user(db: &mut Db, user: &User) -> Result { - db.transaction_mut(|t| -> Result { - if t.exec( - &QueryBuilder::search() - .from("users") - .where_() - .key("username") - .value(Equal(user.username.into())) - .query(), - )? - .result - != 0 - { - return Err(QueryError::from(format!( - "User {} already exists.", - user.username - ))); - } - - let user = t - .exec_mut( - &QueryBuilder::insert() - .nodes() - .values(vec![user.to_db_values()]) - .query(), - )? - .elements[0] - .id; - - t.exec_mut( - &QueryBuilder::insert() - .edges() - .from("users") - .to(user) - .query(), - )?; - - Ok(user) - }) -} -``` - -First we check if the user exists and return error if the username is taken. We then use a transaction to create a user node and edge from `users` node. The reason why this is done in two steps (queries) is to keep the queries simpler and because we want to get back the result of the node insertion - the user id. If we fed the insert nodes query to the insert edges query the id would be lost. - -### Posts - -The users should be able to create posts. The data we want to store about the posts are: - -- title -- body -- author - -Once again lets define the `Post` type. The specially treated `db_id` field wil become useful later on: - -```Rust -#[derive(UserValue)] -struct Post { - db_id: Option, - title: String, - body: String, -} -``` - -The first two will become properties while the `author` will be represented as an edge. To create a post: - -```Rust -fn create_post(db: &mut Db, user: DbId, post: &Post) -> Result { - db.transaction_mut(|t| -> Result { - let post = t - .exec_mut( - &QueryBuilder::insert() - .nodes() - .values(vec![post.to_db_values()]) - .query(), - )? - .elements[0] - .id; - - t.exec_mut( - &QueryBuilder::insert() - .edges() - .from(vec![QueryId::from("posts"), user.into()]) - .to(post) - .values(vec![vec![], vec![("authored", 1_u64).into()]]) - .query(), - )?; - - Ok(post) - }) -} -``` - -Beside connecting the node to two others we are also adding a property `authored` to the edge coming from the `user`. This is to distinguish it from other possible edges coming from the user - comments and likes. - -### Comments - -The comments are created by the users and are either top level comments on a post or replies to other comments. Information we want to store about the comments are: - -- body -- author -- parent (post OR comment) - -We define the comment type: - -```Rust -#[derive(UserValue)] -struct Comment { - body: String, -} -``` - -To create a comment: - -```Rust -fn create_comment( - db: &mut Db, - user: DbId, - parent: DbId, - comment: &Comment, -) -> Result { - db.transaction_mut(|t| -> Result { - let comment = t - .exec_mut( - &QueryBuilder::insert() - .nodes() - .values(vec![comment.to_db_values()]) - .query(), - )? - .elements[0] - .id; - - t.exec_mut( - &QueryBuilder::insert() - .edges() - .from(vec![parent, user]) - .to(comment) - .values(vec![vec![], vec![("commented", 1_u64).into()]]) - .query(), - )?; - - Ok(comment) - }) -} -``` - -The `parent` parameter can be either a post id or a comment id. The edges from the user have now a property `commented` to distinguish them from `authored` edges. - -### Likes - -Likes can be best modelled as connections from users to posts and comments: - -```Rust -fn like(db: &mut Db, user: DbId, id: DbId) -> Result<(), QueryError> { - db.exec_mut( - &QueryBuilder::insert() - .edges() - .from(user) - .to(id) - .values_uniform(vec![("liked", 1).into()]) - .query(), - )?; - Ok(()) -} -``` - -The query is fairly self-explanatory. The edge has the `liked` property that distinguishes it from the other edges from a user (i.e. `authored` and `commented`). - -Since users can decide that they no longer like a post or comment we need to have the ability to remove it: - -```Rust -fn remove_like(db: &mut Db, user: DbId, id: DbId) -> Result<(), QueryError> { - db.transaction_mut(|t| -> Result<(), QueryError> { - t.exec_mut( - &QueryBuilder::remove() - .ids( - QueryBuilder::search() - .from(user) - .to(id) - .where_() - .keys(vec!["liked".into()]) - .query(), - ) - .query(), - )?; - Ok(()) - }) -} -``` - -This query removes elements returned by the search. The search is the "path search" starting (`from`) the user and looking for the id (`to`). It selects only the element with the `liked` property which would be the edge we are looking for. The query is simple because it takes advantage of several facts: - -- if the `id` exists the path to it will contain 3 elements: starting node, an edge and the `id` node -- elements not selected for the result by the condition are penalized in the path search eliminating the candidate path through the `authored` node -- `limit(1)` is not useful here because path search applies the limit after it found the best path which would be as described - containing just one suitable element anyway - -Still if we were unsure the `id` exists or if we wanted to limit the search area as much as possible we could create a chain of conditions to only restrict the search to a particular distance and prevent the other edges to be followed: - -```Rust -.where_() -.distance(CountComparison::LessThanOrEqual(2)) -.and() -.keys(vec!["liked".into()]) -.and() -.beyond() -.where_() -.keys(vec!["liked".into()]) -.or() -.node() -``` - -While this condition is more robust it is also harder to follow, particularly the `beyond()` part where the function of the `.or().node()` might not be immediately obvious. It has to be there because otherwise the `beyond()` condition would prevent the starting node to be followed as well since it does not have the `liked` property and we only want the search to follow those (and naturally the starting node). - -## Selects & Searches - -Now that we have the data in our database and means to add (or remove) more it is time to create the select and search queries. Recall that the search queries find the ids of the database (graph) elements. To read properties the properties you would need to combine it with a `select` query. - -### Login - -First the user login which means searching the database for a particular username and matching its password: - -```Rust -fn login(db: &Db, username: &str, password: &str) -> Result { - let result = db - .exec( - &QueryBuilder::select() - .values(vec!["password".into()]) - .ids( - QueryBuilder::search() - .depth_first() - .from("users") - .limit(1) - .where_() - .distance(CountComparison::Equal(2)) - .and() - .key("username") - .value(Equal(username.into())) - .query(), - ) - .query(), - )? - .elements; - - let user = result - .first() - .ok_or(QueryError::from(format!("Username '{username}' not found")))?; - - let pswd = user.values[0].value.to_string(); - - if password != pswd { - return Err(QueryError::from("Password is incorrect")); - } - - Ok(user.id) -} -``` - -First we retrieve the password if the user exist: - -1. Start the search at the `users` node using depth first algorithm. The depth first is better here because it allows us to examine users in sequence rather than first examining all the edges from the `users` node and only then all the users. -2. Limit the search to just a single element (`limit(1)`) as we want just one user and we want to stop once it is found. -3. Limit the distance of the search to elements at distance 2 (distance 0 = starting node, distance 1 == edges from users, distance 2 == user nodes). -4. Check `username` property for a match against the passed in username. - -Upon success we attempt to get the first element in the result returning "user not found" if it is not there. Finally we get the value of the password (we have selected single property so we know it is there) from the result and check if the password matches. - -You may be wondering why we do not check the password in the query directly. The reason is that we have no way of stopping the further search if only the `username` matched but not the `password`. The search would then needlessly continue over all users. Therefore we only retrieve the password and match it in the code. Since it would be salted and hashed anyway it would not be possible to do it with a database query in the first place. - -### User content - -Showing users their content or content they liked can be done with a following query first retrieving the ids of the posts: - -```Rust -fn user_posts_ids(db: &Db, user: DbId) -> Result, QueryError> { - Ok(db - .exec( - &QueryBuilder::search() - .from(user) - .where_() - .distance(CountComparison::Equal(2)) - .and() - .beyond() - .where_() - .keys(vec!["authored".into()]) - .or() - .node() - .query(), - )? - .ids()) -} -``` - -This time we search from the logged in `user` node identified by its id (i.e. returned from the `login()` function). We know the posts are at distance 2 from there (beyond just a single edge) so the first condition is `distance(Equal(2))`. We narrow down the search further with `beyond()` and a condition that limits where we want the search to go. That is the purpose of the `keys(vec!["authored".into()])` so only elements with `authored` key are followed. Unfortunately that would exclude the starting user node (user nodes do not have the `authored` property) so we add `or().node()` condition to continue search from nodes as well. In this case it would apply only to the very first node but that is exactly what we need. - -The same outcome can be reached with number of other conditions as well. For example using `keys(vec!["title".into()])` condition. However it would also examine all the comments and likes (you may remember similar discussion in the method to [remove likes](#likes)). Another option could be using `not_beyond()` with `where_().keys(vec!["commented"]).or().keys(vec!["liked"])` - explicitly stopping at edges with those properties (`commented` and `liked`). The `keys()` condition is "all or nothing" so it needs to be `or`ed and specified twice in this case. - -Similarly to `user_posts` we can fetch the user comments and liked posts with slight modification of the condition: - -- user comments: `.keys(vec!["commented".into()])` -- liked posts: `keys(vec!["title".into()])` and `.keys(vec!["liked".into()])` - -Notice as well that the function returns the `ids` of the elements we were interested in which gives us flexibility in what we want to retrieve about the posts. In order to retrieve say titles of the posts we would need to feed it to a select query: - -```Rust -fn post_titles(db: &Db, ids: Vec) -> Result, QueryError> { - Ok(db - .exec( - &QueryBuilder::select() - .values(vec!["title".into()]) - .ids(ids) - .query(), - )? - .elements - .into_iter() - .map(|post| post.values[0].value.to_string()) - .collect()) -} -``` - -Here we take advantage of the fact that we have selected a single property so every element in the result is guaranteed to have it. - -### Posts - -Selecting all posts is a fairly straightforward query but we would rarely need all of them at once. A common need for large collections of data is "paging". That means returning only a chunk of data at a time. Similarly to SQL we can use both `offset` and `limit` to achieve this: - -```Rust -fn posts(db: &Db, offset: u64, limit: u64) -> Result, QueryError> { - Ok(db - .exec( - &QueryBuilder::select() - .values(Post::db_keys()) - .ids( - QueryBuilder::search() - .from("posts") - .offset(offset) - .limit(limit) - .where_() - .distance(CountComparison::Equal(2)) - .query(), - ) - .query(), - )? - .try_into()?) -} -``` - -By running the function repeatedly and incrementing the `offset` by the `limit` we would iterate over all posts in `limit` steps (usually called "pages"). Notice the `distance` condition which is all we need to limit the search to just posts. - -There is something missing though as we would want to also order the posts by the number of likes they have. That would be possible with the current schema but not very easily. We will revisit this a later when we will discuss the schema updates. - -### Comments - -Now that we have the posts we will want to fetch the comments on them. Our schema says that the only outgoing edges from posts are the comments so getting the comments can be done like this: - -```Rust -fn comments(db: &Db, id: DbId) -> Result, QueryError> { - Ok(db - .exec( - &QueryBuilder::select() - .values(Comment::db_keys()) - .ids( - QueryBuilder::search() - .depth_first() - .from(id) - .where_() - .node() - .and() - .distance(CountComparison::GreaterThan(1)) - .query(), - ) - .query(), - )? - .try_into()?) -} -``` - -Using the `depth_first` algorithm will help in organizing the comments in their natural tree structure in the result. The comments are nodes so `.node()` is the first condition. We are starting at the post but we are not interested in selecting that hence the condition `.distance(CountComparison::GreaterThan(1))`. Since we are selecting the `body` property we can assume it when extracting it to a vector of comments. - -There is a another flaw here however, do you see it? We currently do not have a way to tell which comment is a top level comment to correctly present the comments to the user other then in a flat list. This is another case for a schema update to satisfy this requirement. - -## Schema updates - -Possibly the most common problem with any database is that it contains the information we want in some form but it does not allow us using it in the way we would like. Perhaps we want to join the information together or get it in a different format than in which it is stored. Or the information is not there and we need to start capturing it. These issues are not unique to `agdb` or to databases in general for that matter. They are ubiquitous in all software as requirements and our understanding of the problem domains change over time. The ability to change is what matters the most. Let's see how `agdb` tackles it. - -In our case we have already identified two such issues with our database so far: - -- ordering posts based on likes -- determining level of comments - -We can perhaps already come up with more such as getting the authors of posts or comments, missing timestamp information etc. There are certainly more but for now let's focus on the two highlighted ones: - -### Likes - -Lets start with the likes. The query to make use of the `liked` edges would not be terribly difficult (counting the `liked` edges incoming to a post or comment) but it certainly does not seem that easy or fast. Especially as we would be doing it over and over. Instead we could simply introduce a counter property called `likes` and essentially cache the information on the posts (or comments) themselves. That would simplify and speed up things: - -```Rust -fn add_likes_to_posts(db: &mut Db) -> Result<(), QueryError> { - db.transaction_mut(|t| -> Result<(), QueryError> { - let posts = t.exec( - &QueryBuilder::search() - .from("posts") - .where_() - .distance(CountComparison::Equal(2)) - .query(), - )?; - let mut likes = Vec::>::new(); - - for post in posts.ids() { - let post_likes = t - .exec( - &QueryBuilder::search() - .to(post) - .where_() - .distance(CountComparison::Equal(1)) - .and() - .keys(vec!["liked".into()]) - .query(), - )? - .result; - likes.push(vec![("likes", post_likes).into()]); - } - - t.exec_mut(&QueryBuilder::insert().values(likes).ids(posts).query())?; - Ok(()) - }) -} -``` - -We are doing a mutable transaction to prevent any new posts, likes or other modifications to interfere while we do this. First we get the ids of all the posts. Then we count the `liked` edges of each post (exactly what we would be doing if we did not want to change the schema) and finally we insert a new `likes` property with that count back to the posts. Furthermore we should update our definition of `Post`: - -```Rust -#[derive(UserValue)] -struct PostLiked { - db_id: Option, - title: String, - body: String, - likes: i64, -} -``` - -This allows us to select and order posts based on likes: - -```Rust -fn liked_posts(db: &Db, offset: u64, limit: u64) -> Result, QueryError> { - Ok(db - .exec( - &QueryBuilder::select() - .values(PostLiked::db_keys()) - .ids( - QueryBuilder::search() - .from("posts") - .order_by(vec![DbKeyOrder::Desc("likes".into())]) - .offset(offset) - .limit(limit) - .where_() - .distance(CountComparison::Equal(2)) - .query(), - ) - .query(), - )? - .try_into()?) -} -``` - -However this change is not "free" in that caching any information means it now exists in two places and those places must be synchronized (the famous cache invalidation problem). Fortunately this instance is not as hard. We simply make sure that whenever we add or remove `likes` we also update the counter on the post or comment. Since when we do those operations we also have the post/comment id doing that would be trivial. - -### Comments - -Another issue we found was that comments do not track their level and we cannot present them hierarchically. To make things simpler let's add only a simple distinction between top level comments and replies disregarding any further nesting. To do that we would simply mark the top level comments with a new property: - -```Rust -fn mark_top_level_comments(db: &mut Db) -> Result<(), QueryError> { - db.exec_mut( - &QueryBuilder::insert() - .values_uniform(vec![("level", 1).into()]) - .ids( - QueryBuilder::search() - .from("posts") - .where_() - .distance(CountComparison::Equal(4)) - .query(), - ) - .query(), - )?; - Ok(()) -} -``` - -Although this task might have seemed daunting it could be done with a simple query that once more takes advantage of the graph schema. We know that the only outgoing edges from the posts are the comments and that they are hierarchical (replies are attached to the comments they reply to). Therefore when searching from the `posts` node at distance `4` we will find only the top level comments. We then uniformly apply a property `level=1` to them. Such a property could then be used by the client code to determine how the data is displayed to the users. - -## Summary - -In this guide we have gone through a realistic example of an inception of a database setting it up from scratch, designing search queries and leveraging the graph schema. We have used the ability to limit the search area based on our data and the graph schema multiple times. Instead of searching possibly millions of records and filtering them out to get what we want we could search & select just the relevant fraction of the data set. That is the main advantage of the graph databases. If a user authored just 3 posts the query would do exactly the same work if there were 30 posts total in the database as if there were 3 billion. - -We have also discovered issues with the schema and were able to seamlessly fix them. It demonstrated yet another important aspect of graph databases which is fearless schema updates. Modelling data on a graph feels natural and changing it to fit new or changing requirements is just as natural. - -Lastly we have seen that the queries can be simple, readable, statically checked and completely native while still providing complex functionality such as filtering through conditions, paging, ordering etc. Moreover while the features of object queries won't make them always logically correct they eliminate entire categories of issues like syntax errors, type errors, security issues like SQL injection, and even certain logic errors etc. - -For the comprehensive overview of all queries see the [query reference](queries.md). For the code used in this document see [tests/efficient_agdb.rs](../tests/efficient_agdb.rs). diff --git a/agdb_web/content/en/docs/3.references/6.performance.md b/agdb_web/content/en/docs/3.references/6.performance.md deleted file mode 100644 index 1e1c82cbe..000000000 --- a/agdb_web/content/en/docs/3.references/6.performance.md +++ /dev/null @@ -1,208 +0,0 @@ ---- -title: "Performance" -description: "Performance, Agnesoft Graph Database" -navigation: - title: "Performance" ---- - -# performance - -- [The benchmark](#the-benchmark) - - [Default settings](#default-settings) - - [Measured operations](#measured-operations) - - [Run command](#run-command) -- [Results](#results) - - [Memory mapped (default)](#memory-mapped-default) - - [File only](#file-only) - - [In memory (cache only)](#in-memory-cache-only) - - [In Memory (10x)](#in-memory-10x) -- [Flamegraph](#flamegraph) -- [Conclusion](#conclusion) - -Database performance is one of the key metrics when judging the suitability of the solution for a given use case. Individual metrics such as how many inserts or selects can a database handle in a tight loop are not very interesting or indicative of real performance. In this document we will therefore examine the performance of `agdb` in more realistic use cases via `agdb_benchmarks` that simulate real world usage. - -The `agdb` is designed with the following principles: - -- ACID database -- O(1) complexity for direct access -- O(n) complexity for search -- Unlimited read concurrency -- Exclusive writes - -The database is ACID compliant, operations must be transactional = `atomic` (A) meaning they are "all or nothing" operations, `consistent` (C) so that the queries will only produce valid state of the data, `isolated` (I) meaning the transactions do not affect each other when in flight and `durable` (D) meaning the database is resistent to system failure and will preserve integrity of the data. Direct access read/write operations have constant complexity of O(1) while search operations are O(n) but the `n` can be limited to a subgraph greatly reducing the time the operation takes. - -Let's see if the `agdb` lives up to these principles. - -## The benchmark - -The `agdb_benchmarks` project is building upon the [Effective agdb](effective_agdb.md) simulating the traffic in a "social network" database. It simulates concurrent read & write operations on the same database: - -- Posters: Writes social media posts -- Commenters: Writes comments to the existing posts -- Post readers: Reads existing posts -- Comment readers: Read existing comments - -It is highly configurable through the `agdb_benchmarks.yaml` file (produced on first run) with the following settings: - -- How many of each category of users (post writers, comment writers, post readers, comment readers) -- How many operations should each user perform -- How large each operation should be [readers only] (e.g. how many posts to read) -- Contents of each operation [writes only] (e.g. post title, post body) -- Delay between each operation - -For writers the configured content is additionally augmented by the user id to produce unique content. The delays are further shifted by the user id to prevent unrealistic resource contention by everyone in a single millisecond. The read operations are repeated if no result is yielded effectively "waiting" for the readers to input data first. - -The benchmark uses tokio tasks spawning everything together. It measures each database operation (transaction as some operations are multiple queries) for minimum, average, maximum and total elapsed time. Additionally it shows total database size after all operations finished and furthermore after running the optimization algorithm compacting (defragmenting) the data. - -### Default settings - -- Insert user nodes (for post & comment writers) -- 10 post writers (100 posts each, 100ms delay, non small title (>15 bytes) & body (>15 bytes)) -- 10 comment writers (100 comments each, 100ms delay, non small body (>15 bytes)) -- 100 post readers (100 reads each, 10 posts per read, 100ms delay) -- 100 comment readers (100 reads each, 10 comments per read, 100ms delay). - -### Measured operations - -- Insert user nodes: a node aliased `"users"` with individual users connected to it with a blank edge. Each user has properties `"name"` and `"email"` (values small values `<15 bytes`). -- Write posts: a post node connected with a blank edge to the single node aliased `"posts"` and with an edge (property `"authored": 1`) to the respective user node. The properties are `"title"` and `"body"` from config (values are large `>15 bytes`). -- Write comments: a comment node connected with a blank edge to the latest post (found via search from `"posts"` node) and with an edge (property `"commented": 1`) to the respective user node. The properties are only `"body"` from config (value is large `>15 bytes`). -- Read posts: reads configured amount (e.g. 10 by default) of recent posts on each iteration (found via search from `"posts"` node). -- Read comments: reads configured amount (e.g. 10 by default) of recent comments on the latest post (found via search from `"posts"` node). -- Database size: after all operations finished & after optimization algorithm is run. - -### Run command - -``` -cargo run --release -p agdb_benchmarks -``` - -## Results - -The following benchmarks were run on: - -- CPU: Intel Core i7-7700 4 cores (8 logical cores) @ 3,6 GHz -- RAM: Crucial Ballistix Sport LT 16GB (2x8GB) DDR4 @ 2400 MHz -- DISK: HyperX Savage - 240GB (KINGSTON SHSS37A240G, 4 cores, 8 channels Phison S10, 560 MB/s read, 530 MB/s write, SATA III (6 Gb/s)) -- OS: Windows 10 22H2 (19045.3448), Debian: Version 12 (bookworm) [running in Hyper-V/WSL2] - -When running on a different machine your results will vary but the relative comparisons should still hold. - -### Memory mapped (default) - -The benchmark run with [default settings](#default-settings) using memory mapped file persistent storage (database size is limited to available RAM): - -**Windows** - -| Description | Threads | Iters | Per iter | Count | Min | Avg | Max | Total | -| -------------- | -------- | ------ | -------- | ------ | ----- | ------ | ------ | ----- | -| Creating users | 1 | 1 | 20 | 20 | - | 1 ms | - | 30 ms | -| Write posts | 10 | 100 | 1 | 1 000 | 1 ms | 25 ms | 3 s | 8 s | -| Write comments | 10 | 100 | 1 | 1 000 | 1 ms | 29 ms | 3 s | 8 s | -| Read posts | 100 | 100 | 10 | 10 000 | 14 μs | 387 μs | 282 ms | 9 s | -| Read comments | 100 | 100 | 10 | 10 000 | 9 μs | 295 μs | 21 ms | 9 s | -| Database size | 1 627 kB | 785 kB | | | | | | | - -**Debian (Hyper-V/WSL2)** - -| Description | Threads | Iters | Per iter | Count | Min | Avg | Max | Total | -| -------------- | -------- | ------ | -------- | ------ | ------ | ------ | ------ | ----- | -| Creating users | 1 | 1 | 20 | 20 | - | 316 μs | - | 6 ms | -| Write posts | 10 | 100 | 1 | 1 000 | 390 μs | 1 ms | 141 ms | 2 s | -| Write comments | 10 | 100 | 1 | 1 000 | 397 μs | 1 ms | 286 ms | 1 s | -| Read posts | 100 | 100 | 10 | 10 000 | 12 μs | 716 μs | 287 ms | 5 s | -| Read comments | 100 | 100 | 10 | 10 000 | 6 μs | 445 μs | 286 ms | 5 s | -| Database size | 1 627 kB | 785 kB | | | | | | | - ---- - -The data shows that the average write operation without contention is very fast (Creating users). Concurrent writes that also contest the database with read operations increase the latency by an order of magnitude. The read operations that can be as fast as <10μs can slow down with contention up to two orders of magnitude particularly due to frequent reads. - -### File only - -The benchmark run with [default settings](#default-settings) using file persistent storage only (no memory use but unlimited database size): - -**Windows** - -| Description | Threads | Iters | Per iter | Count | Min | Avg | Max | Total | -| -------------- | -------- | ------ | -------- | ------ | ------ | ------ | ------ | ----- | -| Creating users | 1 | 1 | 20 | 20 | - | 1 ms | - | 38 ms | -| Write posts | 10 | 100 | 1 | 1 000 | 1 ms | 650 ms | 96 s | 306 s | -| Write comments | 10 | 100 | 1 | 1 000 | 1 ms | 1 s | 149 s | 306 s | -| Read posts | 100 | 100 | 10 | 10 000 | 604 μs | 23 ms | 758 ms | 305 s | -| Read comments | 100 | 100 | 10 | 10 000 | 390 μs | 28 ms | 775 ms | 304 s | -| Database size | 1 627 kB | 785 kB | | | | | | | - -**Debian (Hyper-V/WSL2)** - -| Description | Threads | Iters | Per iter | Count | Min | Avg | Max | Total | -| -------------- | -------- | ------ | -------- | ------ | ------ | ------ | ------ | ----- | -| Creating users | 1 | 1 | 20 | 20 | - | 340 μs | - | 6 ms | -| Write posts | 10 | 100 | 1 | 1 000 | 459 μs | 9 ms | 304 ms | 67 s | -| Write comments | 10 | 100 | 1 | 1 000 | 431 μs | 15 ms | 99 ms | 65 s | -| Read posts | 100 | 100 | 10 | 10 000 | 384 μs | 23 ms | 351 ms | 68 s | -| Read comments | 100 | 100 | 10 | 10 000 | 61 μs | 24 ms | 213 ms | 68 s | -| Database size | 1 627 kB | 785 kB | | | | | | | - -Running purely off a file significantly decreases performance. While the minimum write times remain expectedly the same as with memory mapped option (that uses the same underlying persistent file storage for writes) the average and particularly maximum times increased dramatically. This indicates that for data sets too large to fit to RAM running purely off a file is not a viable option either due to prohibitively bad performance. Therefore a different strategy would be required (in-memory caching, splitting the data set over multiple databases etc.). - -The file based database might be suitable for write heavy use cases with huge amounts of data such as log store where operations can be serialized to limit the contention and reads/searches are relatively infrequent and do not collide with writes often. - -### In memory (cache only) - -The benchmark run with [default settings](#default-settings) using in-memory cache only (no persistence): - -**Windows** - -| Description | Threads | Iters | Per iter | Count | Min | Avg | Max | Total | -| -------------- | -------- | ------ | -------- | ------ | ----- | ------ | ------ | ------ | -| Creating users | 1 | 1 | 20 | 20 | - | 9 μs | - | 189 μs | -| Write posts | 10 | 100 | 1 | 1 000 | 11 μs | 5 ms | 442 ms | 3 s | -| Write comments | 10 | 100 | 1 | 1 000 | 10 μs | 10 ms | 440 ms | 3 s | -| Read posts | 100 | 100 | 10 | 10 000 | 14 μs | 300 μs | 7 ms | 6 s | -| Read comments | 100 | 100 | 10 | 10 000 | 13 μs | 319 μs | 7 ms | 6 s | -| Database size | 1 627 kB | 785 kB | | | | | | | - -**Debian (Hyper-V/WSL2)** - -| Description | Threads | Iters | Per iter | Count | Min | Avg | Max | Total | -| -------------- | -------- | ------ | -------- | ------ | ---- | ------ | ---- | ------ | -| Creating users | 1 | 1 | 20 | 20 | - | 6 μs | - | 125 μs | -| Write posts | 10 | 100 | 1 | 1 000 | 6 μs | 503 μs | 7 ms | 2 s | -| Write comments | 10 | 100 | 1 | 1 000 | 4 μs | 374 μs | 1 ms | 1 s | -| Read posts | 100 | 100 | 10 | 10 000 | 9 μs | 729 μs | 8 ms | 5 s | -| Read comments | 100 | 100 | 10 | 10 000 | 6 μs | 741 μs | 5 ms | 5 s | -| Database size | 1 627 kB | 785 kB | | | | | | | - -Unsurprisingly by far the fastest option. Operating purely off RAM offers unmatched performance but without any persistence such a database can be of limited use. Still for caching purposes this solution is very viable offering sub-millisecond performance for all operations (read & write) with minimal impact of contention even in highly contested cases such as the one being benchmarked. - -### In Memory (10x) - -Increasing the number of writers and readers 10x: - -| Description | Threads | Iters | Per iter | Count | Min | Avg | Max | Total | -| -------------- | ------- | -------- | -------- | ------- | ----- | ------ | ------ | ----- | -| Creating users | 1 | 1 | 200 | 200 | - | 9 μs | - | 1 ms | -| Write posts | 100 | 100 | 1 | 10 000 | 10 μs | 152 ms | 34 s | 497 s | -| Write comments | 100 | 100 | 1 | 10 000 | 9 μs | 154 ms | 64 s | 496 s | -| Read posts | 1 000 | 100 | 10 | 100 000 | 21 μs | 3 ms | 235 ms | 497 s | -| Read comments | 1 000 | 100 | 10 | 100 000 | 12 μs | 4 ms | 344 ms | 497 s | -| Database size | 12 MB | 6 528 kB | | | | | | | - -## Flamegraph - -The following is the ["flamegraph"](https://github.com/flamegraph-rs/flamegraph) illustrating what the benchmark is spending most time on. The obvious answer (as predicted) is the async orchestration through tokio followed by the database running queries. Digging down the callgraph there is no immediate performance bottleneck (such as memory allocation) that could be significantly optimised. The database functionality seems to be evenly distributed matching the expectations given what is being run: - -![Flamegraph](/images/flamegraph.svg) - -## Conclusion - -The used benchmark simulates highly contested database environment where dozens of writers and hundreds of readers are using the database at the same time. Tweaking the values (e.g. increasing/decreasing) the writers/readers had no significant effect on overall results meaning that the database can scale and the principles hold under all circumstances. Running the benchmark in 2 OSs with 3 different storage backends showed that results will vary depending primarily on use (or not) of RAM for caching and on the level of data contention. The contention slowdown however is by no means linear is largely down to the scheduling of tasks (tasks not actually being executed and waiting their turn) - more powerful hardware would improve the results significantly (vertical scalability). As demonstrated `agdb` can handle even an extreme load such as the one in the benchmark. The flamegraph has also shown that the database itself is well optimized and there are no obvious/easy wins with most of the time being taken by orchestration (Tokio runtime) as expected. When using `agdb` your bottlenecks will likely lay elsewhere and not in the database itself. - -Some advise: - -- Always measure your use case but do not rely on micro-benchmarks, use realistic workloads. See `Creating users` line in each table which is equivalent to a isolated microbenchmark and compare it with the rest of the table that demonstrates realistic load with contention. -- Correct storage backend matters. While the default is usually the best choice offering persistence and speed it comes with certain caveats: - - Do not use memory mapped database if you store terabytes of data or your data set is likely to exceed your available RAM size. - - Do not use memory mapped database if your use case is write heavy with infrequent reads. The memory mapping aids only in reading and slows down the writes a little bit. - - Do not use in-memory cache if you need persistence even though it is the fastest. diff --git a/agdb_web/content/en/docs/3.references/index.md b/agdb_web/content/en/docs/3.references/index.md deleted file mode 100644 index 9df8467af..000000000 --- a/agdb_web/content/en/docs/3.references/index.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: "References" -description: "References, Agnesoft Graph Database" -navigation: - title: "References" ---- - -# references - -In this section you will find complete references of all aspects of `agdb` incuding full reference of queries, and other aspects of `agdb`: - -1. [Queries](docs/references/queries) -

- -2. [Server](docs/references/server) -

- -3. [Studio](docs/references/studio) -

- -4. [Cloud](docs/references/cloud) -

- -5. [Efficient agdb](docs/references/efficient_agdb) -

- -6. [Performance](docs/references/performance) -

diff --git a/agdb_web/content/en/docs/index.md b/agdb_web/content/en/docs/index.md deleted file mode 100644 index ca581c024..000000000 --- a/agdb_web/content/en/docs/index.md +++ /dev/null @@ -1,80 +0,0 @@ ---- -title: "Docs" -description: "Docs, Agnesoft Graph Database" -navigation: - title: "Docs" ---- - -# docs - -Documentation for the Agnesoft Graph Database can be found here. - -## guides - -
- -1. [Concepts](/docs/guides/concepts) -

- -2. [Quickstart](/docs/guides/quickstart) -

- -3. [Quickstart - Client](/docs/guides/quickstart_client) -

- -4. [How to run a server?](/docs/guides/server) -

- -5. [How to use the studio?](/docs/guides/studio) -

- -6. [Troubleshooting](docs/guides/troubleshooting) -

- -7. [Migration from SQL](docs/guides/migration_from_sql) -

- -## examples - -
- -1. [app_db](https://github.com/agnesoft/agdb/tree/main/examples/app_db) -

- -2. [indexes](https://github.com/agnesoft/agdb/tree/main/examples/indexes) -

- -3. [joins](https://github.com/agnesoft/agdb/tree/main/examples/joins) -

- -4. [schema migration](https://github.com/agnesoft/agdb/tree/main/examples/schema_migration) -

- -5. [server client - rurst](https://github.com/agnesoft/agdb/tree/main/examples/server_client_rust) -

- -6. [server client - typescript](https://github.com/agnesoft/agdb/tree/main/examples/server_client_typescript) -

- -7. [strong types](https://github.com/agnesoft/agdb/tree/main/examples/strong_types) -

- -## references - -1. [Queries](docs/references/queries) -

- -2. [Server](docs/references/server) -

- -3. [Studio](docs/references/studio) -

- -4. [Cloud](docs/references/cloud) -

- -5. [Efficient agdb](docs/references/efficient_agdb) -

- -6. [Performance](docs/references/performance) -

diff --git a/agdb_web/content/en/enterprise/1.pricing/index.md b/agdb_web/content/en/enterprise/1.pricing/index.md deleted file mode 100644 index 9999c061a..000000000 --- a/agdb_web/content/en/enterprise/1.pricing/index.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: "Pricing" -description: "Pricing, Agnesoft Graph Database" -navigation: - title: "Pricing" ---- - -# pricing - -There are 3 tiers of `agdb` subscription: - -- free -- professional -- enterprise - -The services included in each tier: - -| | Free | Professional | Enterprise | -| --------------- | ----- | -------------------- | -------------------- | -| embedded db | YES | YES | YES | -| server db | YES | YES | YES | -| studio | YES | YES | YES | -| playground | YES | YES | YES | -| cloud | NO | YES (1 GB \*) | YES (1 TB \*) | -| support | NO | YES | YES | -| support on site | NO | NO | YES | -|
|
|
|
| -| monthly rate | 0 € | 10 € / month / user | 30 € / month / user | -| yearly rate | | 100 € / month / user | 300 € / month / user | - -\* Additional storage can be obtained at the rate of 1 € / GB / month or 10 € / GB / year. diff --git a/agdb_web/content/en/enterprise/2.cloud/index.md b/agdb_web/content/en/enterprise/2.cloud/index.md deleted file mode 100644 index d4807ebcb..000000000 --- a/agdb_web/content/en/enterprise/2.cloud/index.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Cloud" -description: "Cloud, Agnesoft Graph Database" -navigation: - title: "Cloud" ---- - -# cloud - -TBD diff --git a/agdb_web/content/en/enterprise/3.self_hosted/index.md b/agdb_web/content/en/enterprise/3.self_hosted/index.md deleted file mode 100644 index 3dac368c1..000000000 --- a/agdb_web/content/en/enterprise/3.self_hosted/index.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Self-hosted" -description: "Self-hosted, Agnesoft Graph Database" -navigation: - title: "Self-hosted" ---- - -# self-hosted - -TBD diff --git a/agdb_web/content/en/enterprise/4.support/index.md b/agdb_web/content/en/enterprise/4.support/index.md deleted file mode 100644 index 7b67569b2..000000000 --- a/agdb_web/content/en/enterprise/4.support/index.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Support" -description: "Support, Agnesoft Graph Database" -navigation: - title: "Support" ---- - -# support - -TBD diff --git a/agdb_web/content/en/enterprise/5.sponsors/index.md b/agdb_web/content/en/enterprise/5.sponsors/index.md deleted file mode 100644 index f29e4f879..000000000 --- a/agdb_web/content/en/enterprise/5.sponsors/index.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Sponsors" -description: "Sponsors, Agnesoft Graph Database" -navigation: - title: "Sponsors" ---- - -# sponsors - -TBD diff --git a/agdb_web/content/en/enterprise/index.md b/agdb_web/content/en/enterprise/index.md deleted file mode 100644 index 14076aeb2..000000000 --- a/agdb_web/content/en/enterprise/index.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Enterprise" -description: "Enterprise, Agnesoft Graph Database" -navigation: - title: "Enterprise" ---- - -# enterprise - -By default the `agdb` is open-source software provided as-is under [Apache 2.0 license](/license). You can obtain a commercial license that would entitle you to use of various services like a cloud hosted database, support for self-hosted solutions and personal support. - -You can also consider [sponsoring](enterprise/sponsors) the development of `agdb` and get mentioned on the homepage and in the repository! - -1. [pricing](enterprise/pricing) - -2. [cloud](enterprise/cloud) - -3. [self-hosted](enterprise/self_hosted) - -4. [support](enterprise/support) - -5. [sponsors](enterprise/sponsors) diff --git a/agdb_web/content/en/index.md b/agdb_web/content/en/index.md deleted file mode 100644 index 751c70706..000000000 --- a/agdb_web/content/en/index.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: agdb -description: agdb homepage ---- - -

- The graph database. -

- -

- db       - api       - studio       - server       - cloud -

- -

- Quickstart | Why agdb? -

diff --git a/agdb_web/content/en/license.md b/agdb_web/content/en/license.md deleted file mode 100644 index de2a8554d..000000000 --- a/agdb_web/content/en/license.md +++ /dev/null @@ -1,203 +0,0 @@ -# License - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [yyyy] [name of copyright owner] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/agdb_web/content/en/privacy-policy.md b/agdb_web/content/en/privacy-policy.md deleted file mode 100644 index 0557a91be..000000000 --- a/agdb_web/content/en/privacy-policy.md +++ /dev/null @@ -1 +0,0 @@ -# Privacy Policy diff --git a/agdb_web/content/en/terms-and-conditions.md b/agdb_web/content/en/terms-and-conditions.md deleted file mode 100644 index 7727a13a3..000000000 --- a/agdb_web/content/en/terms-and-conditions.md +++ /dev/null @@ -1 +0,0 @@ -# Terms and Conditions diff --git a/agdb_web/content/index.md b/agdb_web/content/index.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/agdb_web/e2e/app.spec.ts b/agdb_web/e2e/app.spec.ts deleted file mode 100644 index fbaf5e9d3..000000000 --- a/agdb_web/e2e/app.spec.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { test, expect } from "@playwright/test"; - -// See here how to get started: -// https://playwright.dev/docs/intro -test("visits the app root url", async ({ page, baseURL }) => { - await page.goto(baseURL + "/"); - - await expect(page.locator("main")).toBeEnabled(); -}); diff --git a/agdb_web_next/e2e/example.spec.ts b/agdb_web/e2e/example.spec.ts similarity index 100% rename from agdb_web_next/e2e/example.spec.ts rename to agdb_web/e2e/example.spec.ts diff --git a/agdb_web_next/hooks/i18n.spec.tsx b/agdb_web/hooks/i18n.spec.tsx similarity index 100% rename from agdb_web_next/hooks/i18n.spec.tsx rename to agdb_web/hooks/i18n.spec.tsx diff --git a/agdb_web_next/hooks/i18n.tsx b/agdb_web/hooks/i18n.tsx similarity index 100% rename from agdb_web_next/hooks/i18n.tsx rename to agdb_web/hooks/i18n.tsx diff --git a/agdb_web/i18n.config.ts b/agdb_web/i18n.config.ts deleted file mode 100644 index 55156d6aa..000000000 --- a/agdb_web/i18n.config.ts +++ /dev/null @@ -1,17 +0,0 @@ -export default { - defaultLocale: "en", - locales: [ - { - code: "en", - iso: "en-US", - file: "en-US.json", - name: "English", - }, - { - code: "cs", - iso: "cs-CZ", - file: "cs-CZ.json", - name: "Čeština", - }, - ], -}; diff --git a/agdb_web/layouts/default.vue b/agdb_web/layouts/default.vue deleted file mode 100644 index 98fa566c4..000000000 --- a/agdb_web/layouts/default.vue +++ /dev/null @@ -1,35 +0,0 @@ - - - - - diff --git a/agdb_web/locales/cs.json b/agdb_web/locales/cs.json deleted file mode 100644 index 46d315fc4..000000000 --- a/agdb_web/locales/cs.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "url": { - "home": "/", - "about": "/o-agdb", - "contact": "/kontakt", - "docs": "/docs", - "blog": "/blog", - "api": "/api", - "enterprise": "/enterprise", - "terms-and-conditions": "/podminky-uziti", - "privacy-policy": "/ochrana-osobnich-udaju" - }, - "menu": { - "home": "Domů", - "about": "O agdb", - "contact": "Kontakt", - "docs": "Dokumentace", - "blog": "Blog", - "api": "API", - "enterprise": "Enterprise", - "terms-and-conditions": "Podmínky užití", - "privacy-policy": "Ochrana osobních údajů" - } -} diff --git a/agdb_web/locales/en.json b/agdb_web/locales/en.json deleted file mode 100644 index ed2fb46d2..000000000 --- a/agdb_web/locales/en.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "url": { - "home": "/", - "about": "/about", - "contact": "/contact", - "docs": "/docs", - "blog": "/blog", - "api": "/api", - "enterprise": "/enterprise", - "terms-and-conditions": "/terms-and-conditions", - "privacy-policy": "/privacy-policy" - }, - "menu": { - "home": "Home", - "about": "About", - "contact": "Contact", - "docs": "Docs", - "blog": "Blog", - "api": "API", - "enterprise": "Enterprise", - "terms-and-conditions": "Terms and Conditions", - "privacy-policy": "Privacy Policy" - } -} diff --git a/agdb_web/locales/index.ts b/agdb_web/locales/index.ts deleted file mode 100644 index a3022fe54..000000000 --- a/agdb_web/locales/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -import en from "./en.json"; -import cs from "./cs.json"; - -export default { - en, - cs, -}; diff --git a/agdb_web_next/messages/cs-CZ.json b/agdb_web/messages/cs-CZ.json similarity index 100% rename from agdb_web_next/messages/cs-CZ.json rename to agdb_web/messages/cs-CZ.json diff --git a/agdb_web_next/messages/en-US.json b/agdb_web/messages/en-US.json similarity index 100% rename from agdb_web_next/messages/en-US.json rename to agdb_web/messages/en-US.json diff --git a/agdb_web_next/middleware.ts b/agdb_web/middleware.ts similarity index 100% rename from agdb_web_next/middleware.ts rename to agdb_web/middleware.ts diff --git a/agdb_web_next/next.config.mjs b/agdb_web/next.config.mjs similarity index 100% rename from agdb_web_next/next.config.mjs rename to agdb_web/next.config.mjs diff --git a/agdb_web/nuxt.config.ts b/agdb_web/nuxt.config.ts deleted file mode 100644 index f31322268..000000000 --- a/agdb_web/nuxt.config.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { resolve } from "node:path"; -import { fileURLToPath, URL } from "node:url"; -// https://nuxt.com/docs/api/configuration/nuxt-config -export default defineNuxtConfig({ - devServer: { - port: 5001, - }, - devtools: { enabled: true }, - modules: [ - [ - "@nuxt/content", - { - documentDriven: { injectPage: false }, - sources: { - en: { - base: resolve(__dirname, "content/en"), - driver: "fs", - prefix: "/", - }, - }, - highlight: { - theme: { - default: "github-light", - dark: "github-dark", - sepia: "monokai", - }, - }, - }, - ], - "@nuxt/test-utils/module", - ], - vite: { - resolve: { - alias: { - "@": fileURLToPath(new URL(".", import.meta.url)), - }, - }, - build: { - target: ["es2015", "edge88", "firefox78", "chrome87", "safari12"], - }, - css: { - preprocessorOptions: { - less: { - modifyVars: { - "@smallWidth": "600px", - "@mediumWidth": "768px", - "@largeWidth": "992px", - }, - }, - }, - }, - }, - css: ["@/assets/less/main.less"], -}); diff --git a/agdb_web/package-lock.json b/agdb_web/package-lock.json index 5c453b66d..da840ce8a 100644 --- a/agdb_web/package-lock.json +++ b/agdb_web/package-lock.json @@ -1,32 +1,34 @@ { - "name": "agdb_web", + "name": "agdb_web_next", + "version": "0.1.0", "lockfileVersion": 3, "requires": true, "packages": { "": { + "name": "agdb_web_next", + "version": "0.1.0", + "dependencies": { + "next": "14.1.1", + "nextra": "^2.13.2", + "nextra-theme-docs": "^2.13.2", + "react": "^18", + "react-dom": "^18", + "sass": "^1.77.5" + }, "devDependencies": { - "@nuxt/content": "^2.10.0", - "@nuxt/test-utils": "^3.9.0", - "@nuxtjs/eslint-config-typescript": "^12.1.0", - "@playwright/test": "^1.40.1", - "@tsconfig/node18": "^18.2.2", - "@types/jsdom": "^21.1.6", - "@types/node": "^20.10.6", - "@typescript-eslint/parser": "^6.16.0", - "@vitejs/plugin-vue": "^5.0.2", + "@playwright/test": "^1.41.1", + "@testing-library/react": "^14.1.2", + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "@vitejs/plugin-react": "^4.2.1", "@vitest/coverage-v8": "^1.5.3", - "@vue/test-utils": "^2.4.3", - "eslint": "^8.56.0", + "eslint": "^8", + "eslint-config-next": "14.1.0", "eslint-config-prettier": "^9.1.0", - "eslint-plugin-prettier": "^5.1.2", - "eslint-plugin-vitest": "^0.5.4", - "happy-dom": "^12.10.3", - "jsdom": "^23.0.1", - "less": "^4.2.0", - "nuxt": "^3.11.1", - "playwright-core": "^1.40.1", - "prettier": "3.1.1", - "typescript": "^5.3.3", + "jsdom": "^24.0.0", + "prettier": "^3.2.4", + "typescript": "^5", "vitest": "^1.5.3" } }, @@ -52,26 +54,6 @@ "node": ">=6.0.0" } }, - "node_modules/@antfu/utils": { - "version": "0.7.7", - "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.7.tgz", - "integrity": "sha512-gFPqTG7otEJ8uP6wrhDv6mqwGWYZKNvAcCq6u9hOj0c+IKCEsY4L1oC9trPq2SaWIzAfHvqfBDxF591JkMf+kg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@asamuzakjp/dom-selector": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@asamuzakjp/dom-selector/-/dom-selector-2.0.2.tgz", - "integrity": "sha512-x1KXOatwofR6ZAYzXRBL5wrdV0vwNxlTCK9NCuLqAzQYARqGcvFwiJA6A1ERuh+dgeA4Dxm3JBYictIes+SqUQ==", - "dev": true, - "dependencies": { - "bidi-js": "^1.0.3", - "css-tree": "^2.3.1", - "is-potential-custom-element-name": "^1.0.1" - } - }, "node_modules/@babel/code-frame": { "version": "7.23.5", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", @@ -166,9 +148,9 @@ } }, "node_modules/@babel/core": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.7.tgz", - "integrity": "sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.9.tgz", + "integrity": "sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -176,11 +158,11 @@ "@babel/generator": "^7.23.6", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.7", - "@babel/parser": "^7.23.6", - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.7", - "@babel/types": "^7.23.6", + "@babel/helpers": "^7.23.9", + "@babel/parser": "^7.23.9", + "@babel/template": "^7.23.9", + "@babel/traverse": "^7.23.9", + "@babel/types": "^7.23.9", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -195,6 +177,18 @@ "url": "https://opencollective.com/babel" } }, + "node_modules/@babel/core/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" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/@babel/core/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", @@ -219,18 +213,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", - "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-compilation-targets": { "version": "7.23.6", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", @@ -247,39 +229,16 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-compilation-targets/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, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.23.7.tgz", - "integrity": "sha512-xCoqR/8+BoNnXOY7RVSgv6X+o7pmT5q1d+gGcRlXYkI+9B31glE4jeejhKVpA04O1AtzOt7OSQ6VYKP5FcRl9g==", + "node_modules/@babel/helper-compilation-targets/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, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.20", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "yallist": "^3.0.2" } }, - "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", @@ -288,6 +247,12 @@ "semver": "bin/semver.js" } }, + "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, "node_modules/@babel/helper-environment-visitor": { "version": "7.22.20", "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", @@ -322,18 +287,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-member-expression-to-functions": { - "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.23.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-module-imports": { "version": "7.22.15", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", @@ -365,18 +318,6 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", - "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-plugin-utils": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", @@ -386,23 +327,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz", - "integrity": "sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-member-expression-to-functions": "^7.22.15", - "@babel/helper-optimise-call-expression": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, "node_modules/@babel/helper-simple-access": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", @@ -415,18 +339,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", - "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-split-export-declaration": { "version": "7.22.6", "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", @@ -467,14 +379,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.8", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.8.tgz", - "integrity": "sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.9.tgz", + "integrity": "sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==", "dev": true, "dependencies": { - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.7", - "@babel/types": "^7.23.6" + "@babel/template": "^7.23.9", + "@babel/traverse": "^7.23.9", + "@babel/types": "^7.23.9" }, "engines": { "node": ">=6.9.0" @@ -566,9 +478,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.9.tgz", + "integrity": "sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -577,42 +489,10 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-proposal-decorators": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.23.7.tgz", - "integrity": "sha512-b1s5JyeMvqj7d9m9KhJNHKc18gEJiSyVzVX3bwbiPalQBQpuvfPh6lA9F7Kk/dWH0TIiXRpB9yicwijY6buPng==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.23.7", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-decorators": "^7.23.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-decorators": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.23.3.tgz", - "integrity": "sha512-cf7Niq4/+/juY67E0PbgH0TDhLQ5J7zS8C/Q5FFx+DWyrRa9sUQdTXkjqKu8zGvuqr7vw1muKiukseihU+PJDA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-attributes": { + "node_modules/@babel/plugin-transform-react-jsx-self": { "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.23.3.tgz", - "integrity": "sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.23.3.tgz", + "integrity": "sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -624,37 +504,10 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz", - "integrity": "sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-typescript": { + "node_modules/@babel/plugin-transform-react-jsx-source": { "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz", - "integrity": "sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.23.3.tgz", + "integrity": "sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -666,51 +519,35 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-typescript": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.6.tgz", - "integrity": "sha512-6cBG5mBvUu4VUD04OHKnYzbuHNP8huDsD3EDqqpIpsswTDoqHCjLoHb6+QgsV1WsT2nipRqCPgxD3LXnEO7XfA==", - "dev": true, + "node_modules/@babel/runtime": { + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz", + "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.23.6", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-typescript": "^7.23.3" - }, - "engines": { - "node": ">=6.9.0" + "regenerator-runtime": "^0.14.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/standalone": { - "version": "7.23.10", - "resolved": "https://registry.npmjs.org/@babel/standalone/-/standalone-7.23.10.tgz", - "integrity": "sha512-xqWviI/pt1Zb/d+6ilWa5IDL2mkDzsBnlHbreqnfyP3/QB/ofQ1bNVcHj8YQX154Rf/xZKR6y0s1ydVF3nAS8g==", - "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", + "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.23.9", + "@babel/types": "^7.23.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", - "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.9.tgz", + "integrity": "sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", @@ -719,8 +556,8 @@ "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.6", - "@babel/types": "^7.23.6", + "@babel/parser": "^7.23.9", + "@babel/types": "^7.23.9", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -738,9 +575,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", - "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.9.tgz", + "integrity": "sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.23.4", @@ -757,26 +594,10 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, - "node_modules/@cloudflare/kv-asset-handler": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.3.1.tgz", - "integrity": "sha512-lKN2XCfKCmpKb86a1tl4GIwsJYDy9TGuwjhDELLmpKygQhw8X2xR4dusgpC5Tg7q1pB96Eb0rBo81kxSILQMwA==", - "dev": true, - "dependencies": { - "mime": "^3.0.0" - } - }, - "node_modules/@cloudflare/kv-asset-handler/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/@braintree/sanitize-url": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-6.0.4.tgz", + "integrity": "sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==" }, "node_modules/@esbuild/aix-ppc64": { "version": "0.20.2", @@ -1193,44 +1014,29 @@ "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==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "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, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/@eslint/js": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", - "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", + "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@fastify/busboy": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", - "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", - "dev": true, + "node_modules/@headlessui/react": { + "version": "1.7.18", + "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.18.tgz", + "integrity": "sha512-4i5DOrzwN4qSgNsL4Si61VMkUcWbcSKueUV7sFhpHzQcSShdlHENE5+QBntMSRvHt8NyoFO2AGG8si9lq+w4zQ==", + "dependencies": { + "@tanstack/react-virtual": "^3.0.0-beta.60", + "client-only": "^0.0.1" + }, "engines": { - "node": ">=14" + "node": ">=10" + }, + "peerDependencies": { + "react": "^16 || ^17 || ^18", + "react-dom": "^16 || ^17 || ^18" } }, "node_modules/@humanwhocodes/config-array": { @@ -1247,28 +1053,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, - "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, - "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", @@ -1288,12 +1072,6 @@ "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", "dev": true }, - "node_modules/@ioredis/commands": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ioredis/commands/-/commands-1.2.0.tgz", - "integrity": "sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==", - "dev": true - }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", @@ -1391,16 +1169,6 @@ "node": ">=6.0.0" } }, - "node_modules/@jridgewell/source-map": { - "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", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, "node_modules/@jridgewell/sourcemap-codec": { "version": "1.4.15", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", @@ -1417,3240 +1185,2602 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@kwsites/file-exists": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz", - "integrity": "sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1" + "node_modules/@mdx-js/mdx": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-2.3.0.tgz", + "integrity": "sha512-jLuwRlz8DQfQNiUCJR50Y09CGPq3fLtmtUQfVrj79E0JWu3dvsVcxVIcfhR5h0iXu+/z++zDrYeiJqifRynJkA==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/mdx": "^2.0.0", + "estree-util-build-jsx": "^2.0.0", + "estree-util-is-identifier-name": "^2.0.0", + "estree-util-to-js": "^1.1.0", + "estree-walker": "^3.0.0", + "hast-util-to-estree": "^2.0.0", + "markdown-extensions": "^1.0.0", + "periscopic": "^3.0.0", + "remark-mdx": "^2.0.0", + "remark-parse": "^10.0.0", + "remark-rehype": "^10.0.0", + "unified": "^10.0.0", + "unist-util-position-from-estree": "^1.0.0", + "unist-util-stringify-position": "^3.0.0", + "unist-util-visit": "^4.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/@kwsites/promise-deferred": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz", - "integrity": "sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==", - "dev": true - }, - "node_modules/@mapbox/node-pre-gyp": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", - "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", - "dev": true, + "node_modules/@mdx-js/mdx/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==", "dependencies": { - "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" }, - "bin": { - "node-pre-gyp": "bin/node-pre-gyp" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/@mapbox/node-pre-gyp/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/@mapbox/node-pre-gyp/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==", - "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/@mapbox/node-pre-gyp/node_modules/detect-libc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", - "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", - "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", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@mapbox/node-pre-gyp/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, + "node_modules/@mdx-js/mdx/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==", "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@mapbox/node-pre-gyp/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, - "bin": { - "semver": "bin/semver.js" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/@mapbox/node-pre-gyp/node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, + "node_modules/@mdx-js/react": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-2.3.0.tgz", + "integrity": "sha512-zQH//gdOmuu7nt2oJR29vFhDv88oGPmVw6BggmrHeMI+xgEkp1B2dX9/bMBSYtK0dyLX/aOmesKS09g222K1/g==", "dependencies": { - "abbrev": "1" + "@types/mdx": "^2.0.0", + "@types/react": ">=16" }, - "bin": { - "nopt": "bin/nopt.js" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" }, - "engines": { - "node": ">=6" + "peerDependencies": { + "react": ">=16" } }, - "node_modules/@netlify/functions": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@netlify/functions/-/functions-2.6.0.tgz", - "integrity": "sha512-vU20tij0fb4nRGACqb+5SQvKd50JYyTyEhQetCMHdakcJFzjLDivvRR16u1G2Oy4A7xNAtGJF1uz8reeOtTVcQ==", - "dev": true, - "dependencies": { - "@netlify/serverless-functions-api": "1.14.0" + "node_modules/@napi-rs/simple-git": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.11.tgz", + "integrity": "sha512-z14cPCBrtDKKVJ3q4GS5gmXEithGUAt+U8sICgA9i3UFdxJKD4H5rCnO7BVC3htdE9g6OR2w2IcHAL56AjpFbg==", + "engines": { + "node": ">= 10" }, + "optionalDependencies": { + "@napi-rs/simple-git-android-arm-eabi": "0.1.11", + "@napi-rs/simple-git-android-arm64": "0.1.11", + "@napi-rs/simple-git-darwin-arm64": "0.1.11", + "@napi-rs/simple-git-darwin-x64": "0.1.11", + "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.11", + "@napi-rs/simple-git-linux-arm64-gnu": "0.1.11", + "@napi-rs/simple-git-linux-arm64-musl": "0.1.11", + "@napi-rs/simple-git-linux-x64-gnu": "0.1.11", + "@napi-rs/simple-git-linux-x64-musl": "0.1.11", + "@napi-rs/simple-git-win32-arm64-msvc": "0.1.11", + "@napi-rs/simple-git-win32-x64-msvc": "0.1.11" + } + }, + "node_modules/@napi-rs/simple-git-android-arm-eabi": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.11.tgz", + "integrity": "sha512-wt4Wu9MxvKzEqT4iwodFs7Nrc31K73gR5hM7VnlO6iLELmUQZ5JVJkYoFWgzLQWtzIC48W2+zFMbBgY6+F2rZg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=14.0.0" + "node": ">= 10" } }, - "node_modules/@netlify/node-cookies": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@netlify/node-cookies/-/node-cookies-0.1.0.tgz", - "integrity": "sha512-OAs1xG+FfLX0LoRASpqzVntVV/RpYkgpI0VrUnw2u0Q1qiZUzcPffxRK8HF3gc4GjuhG5ahOEMJ9bswBiZPq0g==", - "dev": true, + "node_modules/@napi-rs/simple-git-android-arm64": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.11.tgz", + "integrity": "sha512-5/Aj6N44CxwhV3TZWRZ4vGqFj4wb2/a2gwvUZJo9Dwik9Spls7As8LaLe7pOptiGPH0GRP3H5kTT7I6twHNgqw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^14.16.0 || >=16.0.0" + "node": ">= 10" } }, - "node_modules/@netlify/serverless-functions-api": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/@netlify/serverless-functions-api/-/serverless-functions-api-1.14.0.tgz", - "integrity": "sha512-HUNETLNvNiC2J+SB/YuRwJA9+agPrc0azSoWVk8H85GC+YE114hcS5JW+dstpKwVerp2xILE3vNWN7IMXP5Q5Q==", - "dev": true, - "dependencies": { - "@netlify/node-cookies": "^0.1.0", - "urlpattern-polyfill": "8.0.2" - }, + "node_modules/@napi-rs/simple-git-darwin-arm64": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.11.tgz", + "integrity": "sha512-vdVsJUNcRsGVu0hBmLZdxxgwIbJA/Ias8NKWze8MZkZ3VyBwhg0uAzFgESEL3/USAgeCCHjF3uwVki8E+iPq1w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": "^14.18.0 || >=16.0.0" + "node": ">= 10" } }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, + "node_modules/@napi-rs/simple-git-darwin-x64": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.11.tgz", + "integrity": "sha512-ufVuZxyJ3LpApk3V101X9qYNX91fnQ4isulz9lWjg90U7Xz0Cav4J3yyFZy6B/cJpYxuiy49R8wV1xDtTeGThA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">= 8" + "node": ">= 10" } }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, + "node_modules/@napi-rs/simple-git-linux-arm-gnueabihf": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.11.tgz", + "integrity": "sha512-rFafW0Qc/j5we2ghUecB7mFzGcNDtJ5lTiB4I7kffNeL8pEi6Yi7kST8hylswcCowia65d45xsyeNp1mFlFwcg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">= 8" + "node": ">= 10" } }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, + "node_modules/@napi-rs/simple-git-linux-arm64-gnu": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.11.tgz", + "integrity": "sha512-HZ4yaqpj/FQ3V9qNQrTGhtXb7pLAARXeRJrwoaGfz3eZ069y2bHReFcNR//5bsVhZ18JaS9EV47F8WjDxtpI5g==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">= 8" + "node": ">= 10" } }, - "node_modules/@npmcli/agent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.0.tgz", - "integrity": "sha512-2yThA1Es98orMkpSLVqlDZAMPK3jHJhifP2gnNUdk1754uZ8yI5c+ulCoVG+WlntQA6MzhrURMXjSd9Z7dJ2/Q==", - "dev": true, - "dependencies": { - "agent-base": "^7.1.0", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.1", - "lru-cache": "^10.0.1", - "socks-proxy-agent": "^8.0.1" - }, + "node_modules/@napi-rs/simple-git-linux-arm64-musl": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.11.tgz", + "integrity": "sha512-b39lJiC3n2+Y6Exjx6qwHoBF++D3k2hN4mZZkvQCFSdLXJ2xtalCatSRWW3pt+mHOHMOgbGektL5v5BYq52hxw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">= 10" } }, - "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", - "dev": true, + "node_modules/@napi-rs/simple-git-linux-x64-gnu": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.11.tgz", + "integrity": "sha512-9EPFvY7PZg+oqWi6Jft5WgSsQtvy9Ey1g4NG+LG8y1RbvaNKthxKbR5zgx196pnFVdcLtsuIdOv/OaQlbcTXkw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "14 || >=16.14" + "node": ">= 10" } }, - "node_modules/@npmcli/fs": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", - "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", - "dev": true, - "dependencies": { - "semver": "^7.3.5" - }, + "node_modules/@napi-rs/simple-git-linux-x64-musl": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.11.tgz", + "integrity": "sha512-doIt1lPYIGL3UthlEQjdM9s1Wv0v8bz8LVAgbzJMS+UpVZzArwLWkanAJCy1HjgMTUMiE3AVJqACKIF3EfW/TQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">= 10" } }, - "node_modules/@npmcli/git": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.4.tgz", - "integrity": "sha512-nr6/WezNzuYUppzXRaYu/W4aT5rLxdXqEFupbh6e/ovlYFQ8hpu1UUPV3Ir/YTl+74iXl2ZOMlGzudh9ZPUchQ==", - "dev": true, - "dependencies": { - "@npmcli/promise-spawn": "^7.0.0", - "lru-cache": "^10.0.1", - "npm-pick-manifest": "^9.0.0", - "proc-log": "^3.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^4.0.0" - }, + "node_modules/@napi-rs/simple-git-win32-arm64-msvc": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.11.tgz", + "integrity": "sha512-TK3Uvj3Q72ebxfxDT/eLFt8sxCNHo20QMvqJ5BHt4zP1Y9Fl1DXSPRUKLBIhJd0nPcI45ZOMRiZyoT8joxAC9g==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">= 10" } }, - "node_modules/@npmcli/git/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, + "node_modules/@napi-rs/simple-git-win32-x64-msvc": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.11.tgz", + "integrity": "sha512-XOgP6kFDXGmB2KCXFQEsCq70n/Do2h7W9o7qZu8APAD+Sc8JGKz4hKG7PKY2ot924v9nIoKSYbHnupnhXSoXkg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=16" + "node": ">= 10" } }, - "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } + "node_modules/@next/env": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.1.tgz", + "integrity": "sha512-7CnQyD5G8shHxQIIg3c7/pSeYFeMhsNbpU/bmvH7ZnDql7mNRgg8O2JZrhrc/soFnfBnKP4/xXNiiSIPn2w8gA==" }, - "node_modules/@npmcli/git/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "node_modules/@next/eslint-plugin-next": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", + "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", "dev": true, "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^16.13.0 || >=18.0.0" + "glob": "10.3.10" } }, - "node_modules/@npmcli/installed-package-contents": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.2.tgz", - "integrity": "sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==", - "dev": true, - "dependencies": { - "npm-bundled": "^3.0.0", - "npm-normalize-package-bin": "^3.0.0" - }, - "bin": { - "installed-package-contents": "lib/index.js" - }, + "node_modules/@next/swc-darwin-arm64": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.1.tgz", + "integrity": "sha512-yDjSFKQKTIjyT7cFv+DqQfW5jsD+tVxXTckSe1KIouKk75t1qZmj/mV3wzdmFb0XHVGtyRjDMulfVG8uCKemOQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">= 10" } }, - "node_modules/@npmcli/node-gyp": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", - "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==", - "dev": true, + "node_modules/@next/swc-darwin-x64": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.1.tgz", + "integrity": "sha512-KCQmBL0CmFmN8D64FHIZVD9I4ugQsDBBEJKiblXGgwn7wBCSe8N4Dx47sdzl4JAg39IkSN5NNrr8AniXLMb3aw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">= 10" } }, - "node_modules/@npmcli/promise-spawn": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.1.tgz", - "integrity": "sha512-P4KkF9jX3y+7yFUxgcUdDtLy+t4OlDGuEBLNs57AZsfSfg+uV6MLndqGpnl4831ggaEdXwR50XFoZP4VFtHolg==", - "dev": true, - "dependencies": { - "which": "^4.0.0" - }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.1.tgz", + "integrity": "sha512-YDQfbWyW0JMKhJf/T4eyFr4b3tceTorQ5w2n7I0mNVTFOvu6CGEzfwT3RSAQGTi/FFMTFcuspPec/7dFHuP7Eg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">= 10" } }, - "node_modules/@npmcli/promise-spawn/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, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.1.tgz", + "integrity": "sha512-fiuN/OG6sNGRN/bRFxRvV5LyzLB8gaL8cbDH5o3mEiVwfcMzyE5T//ilMmaTrnA8HLMS6hoz4cHOu6Qcp9vxgQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=16" + "node": ">= 10" } }, - "node_modules/@npmcli/promise-spawn/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", - "dev": true, - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.1.tgz", + "integrity": "sha512-rv6AAdEXoezjbdfp3ouMuVqeLjE1Bin0AuE6qxE6V9g3Giz5/R3xpocHoAi7CufRR+lnkuUjRBn05SYJ83oKNQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^16.13.0 || >=18.0.0" + "node": ">= 10" } }, - "node_modules/@npmcli/run-script": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.3.tgz", - "integrity": "sha512-ZMWGLHpzMq3rBGIwPyeaoaleaLMvrBrH8nugHxTi5ACkJZXTxXPtVuEH91ifgtss5hUwJQ2VDnzDBWPmz78rvg==", - "dev": true, - "dependencies": { - "@npmcli/node-gyp": "^3.0.0", - "@npmcli/promise-spawn": "^7.0.0", - "node-gyp": "^10.0.0", - "read-package-json-fast": "^3.0.0", - "which": "^4.0.0" - }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.1.tgz", + "integrity": "sha512-YAZLGsaNeChSrpz/G7MxO3TIBLaMN8QWMr3X8bt6rCvKovwU7GqQlDu99WdvF33kI8ZahvcdbFsy4jAFzFX7og==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">= 10" } }, - "node_modules/@npmcli/run-script/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, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.1.tgz", + "integrity": "sha512-1L4mUYPBMvVDMZg1inUYyPvFSduot0g73hgfD9CODgbr4xiTYe0VOMTZzaRqYJYBA9mana0x4eaAaypmWo1r5A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=16" + "node": ">= 10" } }, - "node_modules/@npmcli/run-script/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", - "dev": true, - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, + "node_modules/@next/swc-win32-ia32-msvc": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.1.tgz", + "integrity": "sha512-jvIE9tsuj9vpbbXlR5YxrghRfMuG0Qm/nZ/1KDHc+y6FpnZ/apsgh+G6t15vefU0zp3WSpTMIdXRUsNl/7RSuw==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": "^16.13.0 || >=18.0.0" - } - }, - "node_modules/@nuxt/content": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@nuxt/content/-/content-2.10.0.tgz", - "integrity": "sha512-HZ+1RJJc2SZc/FPYvbsME7b8++a2uf6g9JlMm+qUMDjnCWJaF38pbrsmYq2b9whXx/3WjpBmCRkWCJy6bjSP+g==", - "dev": true, - "dependencies": { - "@nuxt/kit": "^3.8.2", - "@nuxtjs/mdc": "^0.3.0", - "@vueuse/core": "^10.7.0", - "@vueuse/head": "^2.0.0", - "@vueuse/nuxt": "^10.7.0", - "consola": "^3.2.3", - "defu": "^6.1.3", - "destr": "^2.0.2", - "json5": "^2.2.3", - "knitwork": "^1.0.0", - "listhen": "^1.5.5", - "mdast-util-to-string": "^4.0.0", - "mdurl": "^2.0.0", - "micromark": "^4.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-types": "^2.0.0", - "minisearch": "^6.3.0", - "ohash": "^1.1.3", - "pathe": "^1.1.1", - "scule": "^1.1.1", - "shiki-es": "^0.14.0", - "slugify": "^1.6.6", - "socket.io-client": "^4.7.2", - "ufo": "^1.3.2", - "unist-util-stringify-position": "^4.0.0", - "unstorage": "^1.10.1", - "ws": "^8.15.1" + "node": ">= 10" } }, - "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.8", - "resolved": "https://registry.npmjs.org/@nuxt/devtools/-/devtools-1.0.8.tgz", - "integrity": "sha512-o6aBFEBxc8OgVHV4OPe2g0q9tFIe9HiTxRiJnlTJ+jHvOQsBLS651ArdVtwLChf9UdMouFlpLLJ1HteZqTbtsQ==", - "dev": true, - "dependencies": { - "@antfu/utils": "^0.7.7", - "@nuxt/devtools-kit": "1.0.8", - "@nuxt/devtools-wizard": "1.0.8", - "@nuxt/kit": "^3.9.1", - "birpc": "^0.2.14", - "consola": "^3.2.3", - "destr": "^2.0.2", - "error-stack-parser-es": "^0.1.1", - "execa": "^7.2.0", - "fast-glob": "^3.3.2", - "flatted": "^3.2.9", - "get-port-please": "^3.1.2", - "hookable": "^5.5.3", - "image-meta": "^0.2.0", - "is-installed-globally": "^1.0.0", - "launch-editor": "^2.6.1", - "local-pkg": "^0.5.0", - "magicast": "^0.3.2", - "nypm": "^0.3.4", - "ohash": "^1.1.3", - "pacote": "^17.0.5", - "pathe": "^1.1.2", - "perfect-debounce": "^1.0.0", - "pkg-types": "^1.0.3", - "rc9": "^2.1.1", - "scule": "^1.2.0", - "semver": "^7.5.4", - "simple-git": "^3.22.0", - "sirv": "^2.0.4", - "unimport": "^3.7.1", - "vite-plugin-inspect": "^0.8.1", - "vite-plugin-vue-inspector": "^4.0.2", - "which": "^3.0.1", - "ws": "^8.16.0" - }, - "bin": { - "devtools": "cli.mjs" - }, - "peerDependencies": { - "nuxt": "^3.9.0", - "vite": "*" + "node_modules/@next/swc-win32-x64-msvc": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.1.tgz", + "integrity": "sha512-S6K6EHDU5+1KrBDLko7/c1MNy/Ya73pIAmvKeFwsF4RmBFJSO7/7YeD4FnZ4iBdzE69PpQ4sOMU9ORKeNuxe8A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" } }, - "node_modules/@nuxt/devtools-kit": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@nuxt/devtools-kit/-/devtools-kit-1.0.8.tgz", - "integrity": "sha512-j7bNZmoAXQ1a8qv6j6zk4c/aekrxYqYVQM21o/Hy4XHCUq4fajSgpoc8mjyWJSTfpkOmuLyEzMexpDWiIVSr6A==", + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, "dependencies": { - "@nuxt/kit": "^3.9.1", - "@nuxt/schema": "^3.9.1", - "execa": "^7.2.0" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, - "peerDependencies": { - "nuxt": "^3.9.0", - "vite": "*" + "engines": { + "node": ">= 8" } }, - "node_modules/@nuxt/devtools-kit/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/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", "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": ">= 8" } }, - "node_modules/@nuxt/devtools-kit/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/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">= 8" } }, - "node_modules/@nuxt/devtools-kit/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/@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, "engines": { - "node": ">=14.18.0" + "node": ">=14" } }, - "node_modules/@nuxt/devtools-kit/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/@nuxt/devtools-wizard": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@nuxt/devtools-wizard/-/devtools-wizard-1.0.8.tgz", - "integrity": "sha512-RxyOlM7Isk5npwXwDJ/rjm9ekX5sTNG0LS0VOBMdSx+D5nlRPMRr/r9yO+9WQDyzPLClLzHaXRHBWLPlRX3IMw==", + "node_modules/@playwright/test": { + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.1.tgz", + "integrity": "sha512-9g8EWTjiQ9yFBXc6HjCWe41msLpxEX0KhmfmPl9RPLJdfzL4F0lg2BdJ91O9azFdl11y1pmpwdjBiSxvqc+btw==", "dev": true, "dependencies": { - "consola": "^3.2.3", - "diff": "^5.1.0", - "execa": "^7.2.0", - "global-directory": "^4.0.1", - "magicast": "^0.3.2", - "pathe": "^1.1.2", - "pkg-types": "^1.0.3", - "prompts": "^2.4.2", - "rc9": "^2.1.1", - "semver": "^7.5.4" + "playwright": "1.41.1" }, "bin": { - "devtools-wizard": "cli.mjs" - } - }, - "node_modules/@nuxt/devtools-wizard/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" + "playwright": "cli.js" }, "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "node": ">=16" } }, - "node_modules/@nuxt/devtools-wizard/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, - "engines": { - "node": ">=10" - }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/popperjs" } }, - "node_modules/@nuxt/devtools-wizard/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/@rollup/rollup-android-arm-eabi": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.0.tgz", + "integrity": "sha512-jwXtxYbRt1V+CdQSy6Z+uZti7JF5irRKF8hlKfEnF/xJpcNGuuiZMBvuoYM+x9sr9iWGnzrlM0+9hvQ1kgkf1w==", + "cpu": [ + "arm" + ], "dev": true, - "engines": { - "node": ">=14.18.0" - } - }, - "node_modules/@nuxt/devtools-wizard/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 + "optional": true, + "os": [ + "android" + ] }, - "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/@rollup/rollup-android-arm64": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.0.tgz", + "integrity": "sha512-fI9nduZhCccjzlsA/OuAwtFGWocxA4gqXGTLvOyiF8d+8o0fZUeSztixkYjcGq1fGZY3Tkq4yRvHPFxU+jdZ9Q==", + "cpu": [ + "arm64" + ], "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" - } + "optional": true, + "os": [ + "android" + ] }, - "node_modules/@nuxt/devtools/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/@rollup/rollup-darwin-arm64": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.0.tgz", + "integrity": "sha512-BcnSPRM76/cD2gQC+rQNGBN6GStBs2pl/FpweW8JYuz5J/IEa0Fr4AtrPv766DB/6b2MZ/AfSIOSGw3nEIP8SA==", + "cpu": [ + "arm64" + ], "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "optional": true, + "os": [ + "darwin" + ] }, - "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/@rollup/rollup-darwin-x64": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.0.tgz", + "integrity": "sha512-LDyFB9GRolGN7XI6955aFeI3wCdCUszFWumWU0deHA8VpR3nWRrjG6GtGjBrQxQKFevnUTHKCfPR4IvrW3kCgQ==", + "cpu": [ + "x64" + ], "dev": true, - "engines": { - "node": ">=14.18.0" - } - }, - "node_modules/@nuxt/devtools/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 + "optional": true, + "os": [ + "darwin" + ] }, - "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/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.0.tgz", + "integrity": "sha512-ygrGVhQP47mRh0AAD0zl6QqCbNsf0eTo+vgwkY6LunBcg0f2Jv365GXlDUECIyoXp1kKwL5WW6rsO429DBY/bA==", + "cpu": [ + "arm" + ], "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } + "optional": true, + "os": [ + "linux" + ] }, - "node_modules/@nuxt/kit": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.11.1.tgz", - "integrity": "sha512-8VVlhaY4N+wipgHmSXP+gLM+esms9TEBz13I/J++PbOUJuf2cJlUUTyqMoRVL0xudVKK/8fJgSndRkyidy1m2w==", - "dev": true, - "dependencies": { - "@nuxt/schema": "3.11.1", - "c12": "^1.10.0", - "consola": "^3.2.3", - "defu": "^6.1.4", - "globby": "^14.0.1", - "hash-sum": "^2.0.0", - "ignore": "^5.3.1", - "jiti": "^1.21.0", - "knitwork": "^1.0.0", - "mlly": "^1.6.1", - "pathe": "^1.1.2", - "pkg-types": "^1.0.3", - "scule": "^1.3.0", - "semver": "^7.6.0", - "ufo": "^1.5.2", - "unctx": "^2.3.1", - "unimport": "^3.7.1", - "untyped": "^1.4.2" - }, - "engines": { - "node": "^14.18.0 || >=16.10.0" - } - }, - "node_modules/@nuxt/schema": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/@nuxt/schema/-/schema-3.11.1.tgz", - "integrity": "sha512-XyGlJsf3DtkouBCvBHlvjz+xvN4vza3W7pY3YBNMnktxlMQtfFiF3aB3A2NGLmBnJPqD3oY0j7lljraELb5hkg==", - "dev": true, - "dependencies": { - "@nuxt/ui-templates": "^1.3.1", - "consola": "^3.2.3", - "defu": "^6.1.4", - "hookable": "^5.5.3", - "pathe": "^1.1.2", - "pkg-types": "^1.0.3", - "scule": "^1.3.0", - "std-env": "^3.7.0", - "ufo": "^1.5.2", - "unimport": "^3.7.1", - "untyped": "^1.4.2" - }, - "engines": { - "node": "^14.18.0 || >=16.10.0" - } - }, - "node_modules/@nuxt/telemetry": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/@nuxt/telemetry/-/telemetry-2.5.3.tgz", - "integrity": "sha512-Ghv2MgWbJcUM9G5Dy3oQP0cJkUwEgaiuQxEF61FXJdn0a69Q4StZEP/hLF0MWPM9m6EvAwI7orxkJHM7MrmtVg==", - "dev": true, - "dependencies": { - "@nuxt/kit": "^3.8.2", - "ci-info": "^4.0.0", - "consola": "^3.2.3", - "create-require": "^1.1.1", - "defu": "^6.1.3", - "destr": "^2.0.2", - "dotenv": "^16.3.1", - "git-url-parse": "^13.1.1", - "is-docker": "^3.0.0", - "jiti": "^1.21.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.5.0" - }, - "bin": { - "nuxt-telemetry": "bin/nuxt-telemetry.mjs" - } - }, - "node_modules/@nuxt/telemetry/node_modules/ci-info": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.0.0.tgz", - "integrity": "sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.0.tgz", + "integrity": "sha512-x+uJ6MAYRlHGe9wi4HQjxpaKHPM3d3JjqqCkeC5gpnnI6OWovLdXTpfa8trjxPLnWKyBsSi5kne+146GAxFt4A==", + "cpu": [ + "arm64" ], - "engines": { - "node": ">=8" - } - }, - "node_modules/@nuxt/test-utils": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/@nuxt/test-utils/-/test-utils-3.10.0.tgz", - "integrity": "sha512-9ZKKrccCUyZP0P9/BdTNHWwTRvIbBnrmDvqvO0dQpTiUhgDVeO1vdG40o4e4olw7sbzUP51C8uA0OkRur/zBvQ==", - "dev": true, - "dependencies": { - "@nuxt/kit": "^3.9.3", - "@nuxt/schema": "^3.9.3", - "c12": "^1.6.1", - "consola": "^3.2.3", - "defu": "^6.1.4", - "destr": "^2.0.2", - "estree-walker": "^3.0.3", - "execa": "^8.0.1", - "fake-indexeddb": "^5.0.2", - "get-port-please": "^3.1.2", - "local-pkg": "^0.5.0", - "magic-string": "^0.30.5", - "node-fetch-native": "^1.6.1", - "ofetch": "^1.3.3", - "pathe": "^1.1.2", - "perfect-debounce": "^1.0.0", - "radix3": "^1.1.0", - "scule": "^1.2.0", - "std-env": "^3.7.0", - "ufo": "^1.3.2", - "unenv": "^1.9.0", - "unplugin": "^1.6.0", - "vitest-environment-nuxt": "^1.0.0" - }, - "engines": { - "node": "^14.18.0 || >=16.10.0" - }, - "peerDependencies": { - "@cucumber/cucumber": "^10.3.1", - "@jest/globals": "^29.5.0", - "@testing-library/vue": "^7.0.0 || ^8.0.1", - "@vitest/ui": "^0.34.6 || ^1.0.0", - "@vue/test-utils": "^2.4.2", - "h3": "*", - "happy-dom": "^9.10.9 || ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0", - "jsdom": "^22.0.0 || ^23.0.0", - "playwright-core": "^1.34.3", - "vite": "*", - "vitest": "^0.34.6 || ^1.0.0", - "vue": "^3.3.4", - "vue-router": "^4.0.0" - }, - "peerDependenciesMeta": { - "@cucumber/cucumber": { - "optional": true - }, - "@jest/globals": { - "optional": true - }, - "@testing-library/vue": { - "optional": true - }, - "@vitest/ui": { - "optional": true - }, - "@vue/test-utils": { - "optional": true - }, - "happy-dom": { - "optional": true - }, - "jsdom": { - "optional": true - }, - "playwright-core": { - "optional": true - }, - "vitest": { - "optional": true - } - } - }, - "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.11.1", - "resolved": "https://registry.npmjs.org/@nuxt/vite-builder/-/vite-builder-3.11.1.tgz", - "integrity": "sha512-8DVK2Jb9xgfnvTfKr5mL3UDdAIrd3q3F4EmoVsXVKJe8NTt9LW38QdGwGViIQm9wzLDDEo0mgWF+n7WoGEH0xQ==", - "dev": true, - "dependencies": { - "@nuxt/kit": "3.11.1", - "@rollup/plugin-replace": "^5.0.5", - "@vitejs/plugin-vue": "^5.0.4", - "@vitejs/plugin-vue-jsx": "^3.1.0", - "autoprefixer": "^10.4.18", - "clear": "^0.1.0", - "consola": "^3.2.3", - "cssnano": "^6.1.0", - "defu": "^6.1.4", - "esbuild": "^0.20.2", - "escape-string-regexp": "^5.0.0", - "estree-walker": "^3.0.3", - "externality": "^1.0.2", - "fs-extra": "^11.2.0", - "get-port-please": "^3.1.2", - "h3": "^1.11.1", - "knitwork": "^1.0.0", - "magic-string": "^0.30.8", - "mlly": "^1.6.1", - "ohash": "^1.1.3", - "pathe": "^1.1.2", - "perfect-debounce": "^1.0.0", - "pkg-types": "^1.0.3", - "postcss": "^8.4.36", - "rollup-plugin-visualizer": "^5.12.0", - "std-env": "^3.7.0", - "strip-literal": "^2.0.0", - "ufo": "^1.5.2", - "unenv": "^1.9.0", - "unplugin": "^1.10.0", - "vite": "^5.1.6", - "vite-node": "^1.4.0", - "vite-plugin-checker": "^0.6.4", - "vue-bundle-renderer": "^2.0.0" - }, - "engines": { - "node": "^14.18.0 || >=16.10.0" - }, - "peerDependencies": { - "vue": "^3.3.4" - } - }, - "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" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@nuxtjs/eslint-config": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/@nuxtjs/eslint-config/-/eslint-config-12.0.0.tgz", - "integrity": "sha512-ewenelo75x0eYEUK+9EBXjc/OopQCvdkmYmlZuoHq5kub/vtiRpyZ/autppwokpHUq8tiVyl2ejMakoiHiDTrg==", - "dev": true, - "dependencies": { - "eslint-config-standard": "^17.0.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-n": "^15.5.1", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-promise": "^6.1.1", - "eslint-plugin-unicorn": "^44.0.2", - "eslint-plugin-vue": "^9.7.0", - "local-pkg": "^0.4.2" - }, - "peerDependencies": { - "eslint": "^8.23.0" - } - }, - "node_modules/@nuxtjs/eslint-config-typescript": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/@nuxtjs/eslint-config-typescript/-/eslint-config-typescript-12.1.0.tgz", - "integrity": "sha512-l2fLouDYwdAvCZEEw7wGxOBj+i8TQcHFu3zMPTLqKuv1qu6WcZIr0uztkbaa8ND1uKZ9YPqKx6UlSOjM4Le69Q==", - "dev": true, - "dependencies": { - "@nuxtjs/eslint-config": "^12.0.0", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "@typescript-eslint/parser": "^6.5.0", - "eslint-import-resolver-typescript": "^3.6.0", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-vue": "^9.17.0" - }, - "peerDependencies": { - "eslint": "^8.48.0" - } - }, - "node_modules/@nuxtjs/eslint-config/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/@nuxtjs/mdc": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@nuxtjs/mdc/-/mdc-0.3.2.tgz", - "integrity": "sha512-iSepiwfNCh5dgO3ETqSdBHWdendRuRIZ7OsgIpEQXX2J9ubHK5XvRsK3DSUOqZZ8PHbRZ3eSr/9ZF9+IeZ0GFw==", "dev": true, - "dependencies": { - "@nuxt/kit": "^3.9.3", - "@types/hast": "^3.0.3", - "@types/mdast": "^4.0.3", - "@vue/compiler-core": "^3.4.15", - "consola": "^3.2.3", - "defu": "^6.1.4", - "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.1.0", - "micromark-util-sanitize-uri": "^2.0.0", - "ohash": "^1.1.3", - "property-information": "^6.4.0", - "rehype-external-links": "^3.0.0", - "rehype-raw": "^7.0.0", - "rehype-slug": "^6.0.0", - "rehype-sort-attribute-values": "^5.0.0", - "rehype-sort-attributes": "^5.0.0", - "remark-emoji": "^4.0.1", - "remark-gfm": "^4.0.0", - "remark-mdc": "^3.0.1", - "remark-parse": "^11.0.0", - "remark-rehype": "^11.1.0", - "scule": "^1.2.0", - "shikiji": "^0.9.19", - "shikiji-transformers": "^0.9.19", - "ufo": "^1.3.2", - "unified": "^11.0.4", - "unist-builder": "^4.0.0", - "unist-util-visit": "^5.0.0", - "unwasm": "^0.3.7" - } - }, - "node_modules/@one-ini/wasm": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@one-ini/wasm/-/wasm-0.1.1.tgz", - "integrity": "sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==", - "dev": true + "optional": true, + "os": [ + "linux" + ] }, - "node_modules/@parcel/watcher": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.4.1.tgz", - "integrity": "sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==", - "dev": true, - "dependencies": { - "detect-libc": "^1.0.3", - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "node-addon-api": "^7.0.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.4.1", - "@parcel/watcher-darwin-arm64": "2.4.1", - "@parcel/watcher-darwin-x64": "2.4.1", - "@parcel/watcher-freebsd-x64": "2.4.1", - "@parcel/watcher-linux-arm-glibc": "2.4.1", - "@parcel/watcher-linux-arm64-glibc": "2.4.1", - "@parcel/watcher-linux-arm64-musl": "2.4.1", - "@parcel/watcher-linux-x64-glibc": "2.4.1", - "@parcel/watcher-linux-x64-musl": "2.4.1", - "@parcel/watcher-win32-arm64": "2.4.1", - "@parcel/watcher-win32-ia32": "2.4.1", - "@parcel/watcher-win32-x64": "2.4.1" - } - }, - "node_modules/@parcel/watcher-android-arm64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.4.1.tgz", - "integrity": "sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==", + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.0.tgz", + "integrity": "sha512-nrRw8ZTQKg6+Lttwqo6a2VxR9tOroa2m91XbdQ2sUUzHoedXlsyvY1fN4xWdqz8PKmf4orDwejxXHjh7YBGUCA==", "cpu": [ "arm64" ], "dev": true, "optional": true, "os": [ - "android" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + "linux" + ] }, - "node_modules/@parcel/watcher-darwin-arm64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.4.1.tgz", - "integrity": "sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==", + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.0.tgz", + "integrity": "sha512-xV0d5jDb4aFu84XKr+lcUJ9y3qpIWhttO3Qev97z8DKLXR62LC3cXT/bMZXrjLF9X+P5oSmJTzAhqwUbY96PnA==", "cpu": [ - "arm64" + "ppc64le" ], "dev": true, "optional": true, "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + "linux" + ] }, - "node_modules/@parcel/watcher-darwin-x64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.4.1.tgz", - "integrity": "sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==", + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.0.tgz", + "integrity": "sha512-SDDhBQwZX6LPRoPYjAZWyL27LbcBo7WdBFWJi5PI9RPCzU8ijzkQn7tt8NXiXRiFMJCVpkuMkBf4OxSxVMizAw==", "cpu": [ - "x64" + "riscv64" ], "dev": true, "optional": true, "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + "linux" + ] }, - "node_modules/@parcel/watcher-freebsd-x64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.4.1.tgz", - "integrity": "sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==", + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.0.tgz", + "integrity": "sha512-RxB/qez8zIDshNJDufYlTT0ZTVut5eCpAZ3bdXDU9yTxBzui3KhbGjROK2OYTTor7alM7XBhssgoO3CZ0XD3qA==", "cpu": [ - "x64" + "s390x" ], "dev": true, "optional": true, "os": [ - "freebsd" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + "linux" + ] }, - "node_modules/@parcel/watcher-linux-arm-glibc": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.4.1.tgz", - "integrity": "sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==", + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.0.tgz", + "integrity": "sha512-C6y6z2eCNCfhZxT9u+jAM2Fup89ZjiG5pIzZIDycs1IwESviLxwkQcFRGLjnDrP+PT+v5i4YFvlcfAs+LnreXg==", "cpu": [ - "arm" + "x64" ], "dev": true, "optional": true, "os": [ "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + ] }, - "node_modules/@parcel/watcher-linux-arm64-glibc": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.4.1.tgz", - "integrity": "sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==", + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.0.tgz", + "integrity": "sha512-i0QwbHYfnOMYsBEyjxcwGu5SMIi9sImDVjDg087hpzXqhBSosxkE7gyIYFHgfFl4mr7RrXksIBZ4DoLoP4FhJg==", "cpu": [ - "arm64" + "x64" ], "dev": true, "optional": true, "os": [ "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + ] }, - "node_modules/@parcel/watcher-linux-arm64-musl": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.4.1.tgz", - "integrity": "sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==", + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.0.tgz", + "integrity": "sha512-Fq52EYb0riNHLBTAcL0cun+rRwyZ10S9vKzhGKKgeD+XbwunszSY0rVMco5KbOsTlwovP2rTOkiII/fQ4ih/zQ==", "cpu": [ "arm64" ], "dev": true, "optional": true, "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + "win32" + ] }, - "node_modules/@parcel/watcher-linux-x64-glibc": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.4.1.tgz", - "integrity": "sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==", + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.0.tgz", + "integrity": "sha512-e/PBHxPdJ00O9p5Ui43+vixSgVf4NlLsmV6QneGERJ3lnjIua/kim6PRFe3iDueT1rQcgSkYP8ZBBXa/h4iPvw==", "cpu": [ - "x64" + "ia32" ], "dev": true, "optional": true, "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + "win32" + ] }, - "node_modules/@parcel/watcher-linux-x64-musl": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.4.1.tgz", - "integrity": "sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==", + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.0.tgz", + "integrity": "sha512-aGg7iToJjdklmxlUlJh/PaPNa4PmqHfyRMLunbL3eaMO0gp656+q1zOKkpJ/CVe9CryJv6tAN1HDoR8cNGzkag==", "cpu": [ "x64" ], "dev": true, "optional": true, "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" + "win32" + ] + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.7.2.tgz", + "integrity": "sha512-RbhOOTCNoCrbfkRyoXODZp75MlpiHMgbE5MEBZAnnnLyQNgrigEj4p0lzsMDyc1zVsJDLrivB58tgg3emX0eEA==", + "dev": true + }, + "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/@swc/helpers": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", + "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tanstack/react-virtual": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.2.tgz", + "integrity": "sha512-9XbRLPKgnhMwwmuQMnJMv+5a9sitGNCSEtf/AZXzmJdesYk7XsjYHaEDny+IrJzvPNwZliIIDwCRiaUqR3zzCA==", + "dependencies": { + "@tanstack/virtual-core": "3.0.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" } }, - "node_modules/@parcel/watcher-wasm": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-wasm/-/watcher-wasm-2.4.1.tgz", - "integrity": "sha512-/ZR0RxqxU/xxDGzbzosMjh4W6NdYFMqq2nvo2b8SLi7rsl/4jkL8S5stIikorNkdR50oVDvqb/3JT05WM+CRRA==", - "bundleDependencies": [ - "napi-wasm" - ], + "node_modules/@tanstack/virtual-core": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.0.0.tgz", + "integrity": "sha512-SYXOBTjJb05rXa2vl55TTwO40A6wKu0R5i1qQwhJYNDIqaIGF7D0HsLw+pJAyi2OvntlEIVusx3xtbbgSUi6zg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@testing-library/dom": { + "version": "9.3.4", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.3.4.tgz", + "integrity": "sha512-FlS4ZWlp97iiNWig0Muq8p+3rVDjRiYE+YKGbAqXOu9nwJFFOdL00kFpz42M+4huzYi86vAK1sOOfyOG45muIQ==", "dev": true, "dependencies": { - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "napi-wasm": "^1.1.0" + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "5.1.3", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.5.0", + "pretty-format": "^27.0.2" }, "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "node": ">=14" } }, - "node_modules/@parcel/watcher-wasm/node_modules/napi-wasm": { - "version": "1.1.0", + "node_modules/@testing-library/dom/node_modules/aria-query": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", + "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", "dev": true, - "inBundle": true, - "license": "MIT" + "dependencies": { + "deep-equal": "^2.0.5" + } }, - "node_modules/@parcel/watcher-win32-arm64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.4.1.tgz", - "integrity": "sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==", - "cpu": [ - "arm64" - ], + "node_modules/@testing-library/react": { + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-14.1.2.tgz", + "integrity": "sha512-z4p7DVBTPjKM5qDZ0t5ZjzkpSNb+fZy1u6bzO7kk8oeGagpPCAtgh4cx1syrfp7a+QWkM021jGqjJaxJJnXAZg==", "dev": true, - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "@babel/runtime": "^7.12.5", + "@testing-library/dom": "^9.0.0", + "@types/react-dom": "^18.0.0" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=14" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "peerDependencies": { + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, - "node_modules/@parcel/watcher-win32-ia32": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.4.1.tgz", - "integrity": "sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" + "node_modules/@theguild/remark-mermaid": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@theguild/remark-mermaid/-/remark-mermaid-0.0.5.tgz", + "integrity": "sha512-e+ZIyJkEv9jabI4m7q29wZtZv+2iwPGsXJ2d46Zi7e+QcFudiyuqhLhHG/3gX3ZEB+hxTch+fpItyMS8jwbIcw==", + "dependencies": { + "mermaid": "^10.2.2", + "unist-util-visit": "^5.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "peerDependencies": { + "react": "^18.2.0" } }, - "node_modules/@parcel/watcher-win32-x64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.4.1.tgz", - "integrity": "sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==", - "cpu": [ - "x64" - ], + "node_modules/@theguild/remark-npm2yarn": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@theguild/remark-npm2yarn/-/remark-npm2yarn-0.2.1.tgz", + "integrity": "sha512-jUTFWwDxtLEFtGZh/TW/w30ySaDJ8atKWH8dq2/IiQF61dPrGfETpl0WxD0VdBfuLOeU14/kop466oBSRO/5CA==", + "dependencies": { + "npm-to-yarn": "^2.1.0", + "unist-util-visit": "^5.0.0" + } + }, + "node_modules/@types/acorn": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", + "integrity": "sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/@types/aria-query": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", + "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==", + "dev": true + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "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/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", "dev": true, - "optional": true, - "engines": { - "node": ">=14" + "dependencies": { + "@babel/types": "^7.0.0" } }, - "node_modules/@pkgr/core": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", - "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", "dev": true, - "engines": { - "node": "^12.20.0 || ^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts" + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" } }, - "node_modules/@playwright/test": { - "version": "1.41.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.1.tgz", - "integrity": "sha512-9g8EWTjiQ9yFBXc6HjCWe41msLpxEX0KhmfmPl9RPLJdfzL4F0lg2BdJ91O9azFdl11y1pmpwdjBiSxvqc+btw==", + "node_modules/@types/babel__traverse": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", + "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", "dev": true, "dependencies": { - "playwright": "1.41.1" - }, - "bin": { - "playwright": "cli.js" - }, - "engines": { - "node": ">=16" + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/d3-scale": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.8.tgz", + "integrity": "sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==", + "dependencies": { + "@types/d3-time": "*" + } + }, + "node_modules/@types/d3-scale-chromatic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.3.tgz", + "integrity": "sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw==" + }, + "node_modules/@types/d3-time": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.3.tgz", + "integrity": "sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==" + }, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "dependencies": { + "@types/ms": "*" } }, - "node_modules/@polka/url": { - "version": "1.0.0-next.24", - "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.24.tgz", - "integrity": "sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==", + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" + }, + "node_modules/@types/estree-jsx": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.3.tgz", + "integrity": "sha512-pvQ+TKeRHeiUGRhvYwRrQ/ISnohKkSJR14fT2yqyZ4e9K5vqc7hrtY2Y1Dw0ZwAzQ6DQsxsaCUuSIIi8v0Cq6w==", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/@types/hast": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.9.tgz", + "integrity": "sha512-pTHyNlaMD/oKJmS+ZZUyFUcsZeBZpC0lmGquw98CqRVNgAdJZJeD7GoeLiT6Xbx5rU9VCjSt0RwEvDgzh4obFw==", + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/@types/js-yaml": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.9.tgz", + "integrity": "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==" + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true }, - "node_modules/@rollup/plugin-alias": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-alias/-/plugin-alias-5.1.0.tgz", - "integrity": "sha512-lpA3RZ9PdIG7qqhEfv79tBffNaoDuukFDrmhLqg9ifv99u/ehn+lOg30x2zmhf8AQqQUZaMk/B9fZraQ6/acDQ==", + "node_modules/@types/katex": { + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.7.tgz", + "integrity": "sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==" + }, + "node_modules/@types/mdast": { + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/@types/mdx": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.10.tgz", + "integrity": "sha512-Rllzc5KHk0Al5/WANwgSPl1/CwjqCy+AZrGd78zuK+jO9aDM6ffblZ+zIjgPNAaEBmlO0RYDvLNh7wD0zKVgEg==" + }, + "node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" + }, + "node_modules/@types/node": { + "version": "20.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", + "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", "dev": true, "dependencies": { - "slash": "^4.0.0" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "undici-types": "~5.26.4" } }, - "node_modules/@rollup/plugin-alias/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "node_modules/@types/prop-types": { + "version": "15.7.11", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz", + "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" + }, + "node_modules/@types/react": { + "version": "18.2.48", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.48.tgz", + "integrity": "sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w==", + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.2.18", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.18.tgz", + "integrity": "sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==", "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "@types/react": "*" } }, - "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==", + "node_modules/@types/scheduler": { + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", + "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==" + }, + "node_modules/@types/unist": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" + }, + "node_modules/@typescript-eslint/parser": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.19.1.tgz", + "integrity": "sha512-WEfX22ziAh6pRE9jnbkkLGp/4RhTpffr2ZK5bJ18M8mIfA8A+k97U9ZyaXCEJRlmMHh7R9MJZWXp/r73DzINVQ==", "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" + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/typescript-estree": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", + "debug": "^4.3.4" }, "engines": { - "node": ">=14.0.0" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "rollup": "^2.68.0||^3.0.0||^4.0.0" + "eslint": "^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { - "rollup": { + "typescript": { "optional": true } } }, - "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==", - "dev": true - }, - "node_modules/@rollup/plugin-commonjs/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/@typescript-eslint/scope-manager": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.1.tgz", + "integrity": "sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1" }, "engines": { - "node": ">=12" + "node": "^16.0.0 || >=18.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@rollup/plugin-commonjs/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "node_modules/@typescript-eslint/types": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.1.tgz", + "integrity": "sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg==", "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, "engines": { - "node": ">=10" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "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/@typescript-eslint/typescript-estree": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.1.tgz", + "integrity": "sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA==", "dev": true, "dependencies": { - "@rollup/pluginutils": "^5.0.1", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.3" + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": ">=14.0.0" + "node": "^16.0.0 || >=18.0.0" }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependenciesMeta": { - "rollup": { + "typescript": { "optional": true } } }, - "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/@typescript-eslint/typescript-estree/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/@rollup/plugin-json": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.1.0.tgz", - "integrity": "sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==", + "node_modules/@typescript-eslint/typescript-estree/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": { - "@rollup/pluginutils": "^5.1.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + "node": ">=16 || 14 >=14.17" }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "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/@typescript-eslint/visitor-keys": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz", + "integrity": "sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ==", "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" + "@typescript-eslint/types": "6.19.1", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^2.78.0||^3.0.0||^4.0.0" + "node": "^16.0.0 || >=18.0.0" }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "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==", + "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==" + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.2.1.tgz", + "integrity": "sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==", "dev": true, "dependencies": { - "@rollup/pluginutils": "^5.0.1", - "magic-string": "^0.30.3" + "@babel/core": "^7.23.5", + "@babel/plugin-transform-react-jsx-self": "^7.23.3", + "@babel/plugin-transform-react-jsx-source": "^7.23.3", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.14.0" }, "engines": { - "node": ">=14.0.0" + "node": "^14.18.0 || >=16.0.0" }, "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "vite": "^4.2.0 || ^5.0.0" } }, - "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/@vitest/coverage-v8": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-1.5.3.tgz", + "integrity": "sha512-DPyGSu/fPHOJuPxzFSQoT4N/Fu/2aJfZRtEpEp8GI7NHsXBGE94CQ+pbEGBUMFjatsHPDJw/+TAF9r4ens2CNw==", "dev": true, "dependencies": { - "serialize-javascript": "^6.0.1", - "smob": "^1.0.0", - "terser": "^5.17.4" + "@ampproject/remapping": "^2.2.1", + "@bcoe/v8-coverage": "^0.2.3", + "debug": "^4.3.4", + "istanbul-lib-coverage": "^3.2.2", + "istanbul-lib-report": "^3.0.1", + "istanbul-lib-source-maps": "^5.0.4", + "istanbul-reports": "^3.1.6", + "magic-string": "^0.30.5", + "magicast": "^0.3.3", + "picocolors": "^1.0.0", + "std-env": "^3.5.0", + "strip-literal": "^2.0.0", + "test-exclude": "^6.0.0" }, - "engines": { - "node": ">=14.0.0" + "funding": { + "url": "https://opencollective.com/vitest" }, "peerDependencies": { - "rollup": "^2.0.0||^3.0.0||^4.0.0" + "vitest": "1.5.3" + } + }, + "node_modules/@vitest/expect": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.5.3.tgz", + "integrity": "sha512-y+waPz31pOFr3rD7vWTbwiLe5+MgsMm40jTZbQE8p8/qXyBX3CQsIXRx9XK12IbY7q/t5a5aM/ckt33b4PxK2g==", + "dev": true, + "dependencies": { + "@vitest/spy": "1.5.3", + "@vitest/utils": "1.5.3", + "chai": "^4.3.10" }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "funding": { + "url": "https://opencollective.com/vitest" } }, - "node_modules/@rollup/pluginutils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.0.tgz", - "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==", + "node_modules/@vitest/runner": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.5.3.tgz", + "integrity": "sha512-7PlfuReN8692IKQIdCxwir1AOaP5THfNkp0Uc4BKr2na+9lALNit7ub9l3/R7MP8aV61+mHKRGiqEKRIwu6iiQ==", "dev": true, "dependencies": { - "@types/estree": "^1.0.0", - "estree-walker": "^2.0.2", - "picomatch": "^2.3.1" + "@vitest/utils": "1.5.3", + "p-limit": "^5.0.0", + "pathe": "^1.1.1" }, - "engines": { - "node": ">=14.0.0" + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner/node_modules/p-limit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz", + "integrity": "sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + "engines": { + "node": ">=18" }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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==", - "dev": true - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.0.tgz", - "integrity": "sha512-jwXtxYbRt1V+CdQSy6Z+uZti7JF5irRKF8hlKfEnF/xJpcNGuuiZMBvuoYM+x9sr9iWGnzrlM0+9hvQ1kgkf1w==", - "cpu": [ - "arm" - ], + "node_modules/@vitest/runner/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", "dev": true, - "optional": true, - "os": [ - "android" - ] + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.0.tgz", - "integrity": "sha512-fI9nduZhCccjzlsA/OuAwtFGWocxA4gqXGTLvOyiF8d+8o0fZUeSztixkYjcGq1fGZY3Tkq4yRvHPFxU+jdZ9Q==", - "cpu": [ - "arm64" - ], + "node_modules/@vitest/snapshot": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.5.3.tgz", + "integrity": "sha512-K3mvIsjyKYBhNIDujMD2gfQEzddLe51nNOAf45yKRt/QFJcUIeTQd2trRvv6M6oCBHNVnZwFWbQ4yj96ibiDsA==", "dev": true, - "optional": true, - "os": [ - "android" - ] + "dependencies": { + "magic-string": "^0.30.5", + "pathe": "^1.1.1", + "pretty-format": "^29.7.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.0.tgz", - "integrity": "sha512-BcnSPRM76/cD2gQC+rQNGBN6GStBs2pl/FpweW8JYuz5J/IEa0Fr4AtrPv766DB/6b2MZ/AfSIOSGw3nEIP8SA==", - "cpu": [ - "arm64" - ], + "node_modules/@vitest/snapshot/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, - "optional": true, - "os": [ - "darwin" - ] + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.0.tgz", - "integrity": "sha512-LDyFB9GRolGN7XI6955aFeI3wCdCUszFWumWU0deHA8VpR3nWRrjG6GtGjBrQxQKFevnUTHKCfPR4IvrW3kCgQ==", - "cpu": [ - "x64" - ], + "node_modules/@vitest/snapshot/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "dev": true, - "optional": true, - "os": [ - "darwin" - ] + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.0.tgz", - "integrity": "sha512-ygrGVhQP47mRh0AAD0zl6QqCbNsf0eTo+vgwkY6LunBcg0f2Jv365GXlDUECIyoXp1kKwL5WW6rsO429DBY/bA==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] + "node_modules/@vitest/snapshot/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.0.tgz", - "integrity": "sha512-x+uJ6MAYRlHGe9wi4HQjxpaKHPM3d3JjqqCkeC5gpnnI6OWovLdXTpfa8trjxPLnWKyBsSi5kne+146GAxFt4A==", - "cpu": [ - "arm64" - ], + "node_modules/@vitest/spy": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.5.3.tgz", + "integrity": "sha512-Llj7Jgs6lbnL55WoshJUUacdJfjU2honvGcAJBxhra5TPEzTJH8ZuhI3p/JwqqfnTr4PmP7nDmOXP53MS7GJlg==", "dev": true, - "optional": true, - "os": [ - "linux" - ] + "dependencies": { + "tinyspy": "^2.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.0.tgz", - "integrity": "sha512-nrRw8ZTQKg6+Lttwqo6a2VxR9tOroa2m91XbdQ2sUUzHoedXlsyvY1fN4xWdqz8PKmf4orDwejxXHjh7YBGUCA==", - "cpu": [ - "arm64" - ], + "node_modules/@vitest/utils": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.5.3.tgz", + "integrity": "sha512-rE9DTN1BRhzkzqNQO+kw8ZgfeEBCLXiHJwetk668shmNBpSagQxneT5eSqEBLP+cqSiAeecvQmbpFfdMyLcIQA==", "dev": true, - "optional": true, - "os": [ - "linux" - ] + "dependencies": { + "diff-sequences": "^29.6.3", + "estree-walker": "^3.0.3", + "loupe": "^2.3.7", + "pretty-format": "^29.7.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } }, - "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.0.tgz", - "integrity": "sha512-xV0d5jDb4aFu84XKr+lcUJ9y3qpIWhttO3Qev97z8DKLXR62LC3cXT/bMZXrjLF9X+P5oSmJTzAhqwUbY96PnA==", - "cpu": [ - "ppc64le" - ], + "node_modules/@vitest/utils/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.0.tgz", - "integrity": "sha512-SDDhBQwZX6LPRoPYjAZWyL27LbcBo7WdBFWJi5PI9RPCzU8ijzkQn7tt8NXiXRiFMJCVpkuMkBf4OxSxVMizAw==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.0.tgz", - "integrity": "sha512-RxB/qez8zIDshNJDufYlTT0ZTVut5eCpAZ3bdXDU9yTxBzui3KhbGjROK2OYTTor7alM7XBhssgoO3CZ0XD3qA==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.0.tgz", - "integrity": "sha512-C6y6z2eCNCfhZxT9u+jAM2Fup89ZjiG5pIzZIDycs1IwESviLxwkQcFRGLjnDrP+PT+v5i4YFvlcfAs+LnreXg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.0.tgz", - "integrity": "sha512-i0QwbHYfnOMYsBEyjxcwGu5SMIi9sImDVjDg087hpzXqhBSosxkE7gyIYFHgfFl4mr7RrXksIBZ4DoLoP4FhJg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.0.tgz", - "integrity": "sha512-Fq52EYb0riNHLBTAcL0cun+rRwyZ10S9vKzhGKKgeD+XbwunszSY0rVMco5KbOsTlwovP2rTOkiII/fQ4ih/zQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.0.tgz", - "integrity": "sha512-e/PBHxPdJ00O9p5Ui43+vixSgVf4NlLsmV6QneGERJ3lnjIua/kim6PRFe3iDueT1rQcgSkYP8ZBBXa/h4iPvw==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.0.tgz", - "integrity": "sha512-aGg7iToJjdklmxlUlJh/PaPNa4PmqHfyRMLunbL3eaMO0gp656+q1zOKkpJ/CVe9CryJv6tAN1HDoR8cNGzkag==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "node_modules/@sigstore/bundle": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.1.tgz", - "integrity": "sha512-v3/iS+1nufZdKQ5iAlQKcCsoh0jffQyABvYIxKsZQFWc4ubuGjwZklFHpDgV6O6T7vvV78SW5NHI91HFKEcxKg==", + "node_modules/@vitest/utils/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "dev": true, "dependencies": { - "@sigstore/protobuf-specs": "^0.2.1" + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@sigstore/core": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-0.2.0.tgz", - "integrity": "sha512-THobAPPZR9pDH2CAvDLpkrYedt7BlZnsyxDe+Isq4ZmGfPy5juOFZq487vCU2EgKD7aHSiTfE/i7sN7aEdzQnA==", - "dev": true, + "node_modules/@vitest/utils/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "bin": { + "acorn": "bin/acorn" + }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=0.4.0" } }, - "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/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", "dev": true, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=0.4.0" } }, - "node_modules/@sigstore/sign": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.1.tgz", - "integrity": "sha512-U5sKQEj+faE1MsnLou1f4DQQHeFZay+V9s9768lw48J4pKykPj34rWyI1lsMOGJ3Mae47Ye6q3HAJvgXO21rkQ==", + "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": { - "@sigstore/bundle": "^2.1.1", - "@sigstore/core": "^0.2.0", - "@sigstore/protobuf-specs": "^0.2.1", - "make-fetch-happen": "^13.0.0" + "debug": "^4.3.4" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">= 14" } }, - "node_modules/@sigstore/tuf": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.0.tgz", - "integrity": "sha512-S98jo9cpJwO1mtQ+2zY7bOdcYyfVYCUaofCG6wWRzk3pxKHVAkSfshkfecto2+LKsx7Ovtqbgb2LS8zTRhxJ9Q==", + "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, "dependencies": { - "@sigstore/protobuf-specs": "^0.2.1", - "tuf-js": "^2.2.0" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@sigstore/verify": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-0.1.0.tgz", - "integrity": "sha512-2UzMNYAa/uaz11NhvgRnIQf4gpLTJ59bhb8ESXaoSS5sxedfS+eLak8bsdMc+qpNQfITUTFoSKFx5h8umlRRiA==", + "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": { - "@sigstore/bundle": "^2.1.1", - "@sigstore/core": "^0.2.0", - "@sigstore/protobuf-specs": "^0.2.1" - }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=8" } }, - "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/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==" }, - "node_modules/@sindresorhus/is": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", - "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "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": { + "color-convert": "^2.0.1" + }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@sindresorhus/merge-streams": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", - "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", - "dev": true, - "engines": { - "node": ">=18" + "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==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">= 8" } }, - "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/arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "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/@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, - "engines": { - "node": ">=10.13.0" - } + "node_modules/arg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/arg/-/arg-1.0.0.tgz", + "integrity": "sha512-Wk7TEzl1KqvTGs/uyhmHO/3XLd3t1UeU4IstvPXVzGPM522cTjqjNZ99esCkcL52sjqjo8e8CTBcWhkxvGzoAw==" }, - "node_modules/@tsconfig/node18": { - "version": "18.2.2", - "resolved": "https://registry.npmjs.org/@tsconfig/node18/-/node18-18.2.2.tgz", - "integrity": "sha512-d6McJeGsuoRlwWZmVIeE8CUA27lu6jLjvv1JzqmpsytOYYbVi1tHZEnwCNVOXnj4pyLvneZlFlpXUK+X9wBWyw==", - "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/@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/aria-query": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", + "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", "dev": true, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "dependencies": { + "dequal": "^2.0.3" } }, - "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/array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", "dev": true, "dependencies": { - "@tufjs/canonical-json": "2.0.0", - "minimatch": "^9.0.3" + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" }, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@types/debug": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", - "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "node_modules/array-includes": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", + "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", "dev": true, "dependencies": { - "@types/ms": "*" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "dev": true - }, - "node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dev": true, - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/http-proxy": { - "version": "1.17.14", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", - "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/jsdom": { - "version": "21.1.6", - "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-21.1.6.tgz", - "integrity": "sha512-/7kkMsC+/kMs7gAYmmBR9P0vGTnOoLhQhyhQJSlXGI5bzTHp6xdo0TtKWQAsz6pmSAeVqKSbqeyP6hytqr9FDw==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/tough-cookie": "*", - "parse5": "^7.0.0" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, - "node_modules/@types/mdast": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.3.tgz", - "integrity": "sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==", - "dev": true, - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/ms": { - "version": "0.7.34", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", - "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", - "dev": true - }, - "node_modules/@types/node": { - "version": "20.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", - "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, - "dependencies": { - "undici-types": "~5.26.4" + "engines": { + "node": ">=8" } }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", - "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", - "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/semver": { - "version": "7.5.8", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", - "dev": true - }, - "node_modules/@types/tough-cookie": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", - "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", - "dev": true - }, - "node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==", - "dev": true - }, - "node_modules/@types/web-bluetooth": { - "version": "0.0.20", - "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz", - "integrity": "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==", - "dev": true - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.0.tgz", - "integrity": "sha512-DUCUkQNklCQYnrBSSikjVChdc84/vMPDQSgJTHBZ64G9bA9w0Crc0rd2diujKbTdp6w2J47qkeHQLoi0rpLCdg==", + "node_modules/array.prototype.findlastindex": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", + "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", "dev": true, "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.19.0", - "@typescript-eslint/type-utils": "6.19.0", - "@typescript-eslint/utils": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.2.1" }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/parser": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.19.0.tgz", - "integrity": "sha512-1DyBLG5SH7PYCd00QlroiW60YJ4rWMuUGa/JBV0iZuqi4l4IK3twKPq5ZkEebmGqRjXWVgsUzfd3+nZveewgow==", + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.19.0", - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/typescript-estree": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0", - "debug": "^4.3.4" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.0.tgz", - "integrity": "sha512-dO1XMhV2ehBI6QN8Ufi7I10wmUovmLU0Oru3n5LVlM2JuzB4M+dVphCPLkVpKvGij2j/pHBWuJ9piuXx+BhzxQ==", + "node_modules/array.prototype.flatmap": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/type-utils": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.19.0.tgz", - "integrity": "sha512-mcvS6WSWbjiSxKCwBcXtOM5pRkPQ6kcDds/juxcy/727IQr3xMEcwr/YLHW2A2+Fp5ql6khjbKBzOyjuPqGi/w==", + "node_modules/array.prototype.tosorted": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz", + "integrity": "sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.19.0", - "@typescript-eslint/utils": "6.19.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.2.1" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", + "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-array-buffer": "^3.0.2", + "is-shared-array-buffer": "^1.0.2" }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/types": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.0.tgz", - "integrity": "sha512-lFviGV/vYhOy3m8BJ/nAKoAyNhInTdXpftonhWle66XHAtT1ouBlkjL496b5H5hb8dWXHwtypTqgtb/DEa+j5A==", + "node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", "dev": true, "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": "*" } }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.0.tgz", - "integrity": "sha512-o/zefXIbbLBZ8YJ51NlkSAt2BamrK6XOmuxSR3hynMIzzyMY33KuJ9vuMdFSXW+H0tVvdF9qBPTHA91HDb4BIQ==", + "node_modules/ast-types-flow": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", + "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", + "dev": true + }, + "node_modules/astring": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/astring/-/astring-1.8.6.tgz", + "integrity": "sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==", + "bin": { + "astring": "bin/astring" + } + }, + "node_modules/asynciterator.prototype": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz", + "integrity": "sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "9.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "has-symbols": "^1.0.3" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "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": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/axe-core": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz", + "integrity": "sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/@typescript-eslint/utils": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.19.0.tgz", - "integrity": "sha512-QR41YXySiuN++/dC9UArYOg4X86OAYP83OWTewpVx5ct1IZhjjgTLocj7QNxGhWoTqknsgpl7L+hGygCO+sdYw==", + "node_modules/axobject-query": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz", + "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==", "dev": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.19.0", - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/typescript-estree": "6.19.0", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" + "dequal": "^2.0.3" } }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.0.tgz", - "integrity": "sha512-hZaUCORLgubBvtGpp1JEFEazcuEdfxta9j4iUwdSAr7mEsYYAp3EAUyCZk3VEEqGj6W+AV4uWyrDGtrlawAsgQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.19.0", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, + "node_modules/bail": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", + "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "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==", + "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/@unhead/dom": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@unhead/dom/-/dom-1.9.4.tgz", - "integrity": "sha512-nEaHOcCL0u56g4XOV5XGwRMFZ05eEINfp8nxVrPiIGLrS9BoFrZS7/6IYSkalkNRTmw8M5xqxt6BalBr594SaA==", - "dev": true, - "dependencies": { - "@unhead/schema": "1.9.4", - "@unhead/shared": "1.9.4" + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "engines": { + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/harlan-zw" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@unhead/schema": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@unhead/schema/-/schema-1.9.4.tgz", - "integrity": "sha512-/J6KYQ+aqKO5uLDTU9BXfiRAfJ3mQNmF5gh3Iyd4qZaWfqjsDGYIaAe4xAGPnJxwBn6FHlnvQvZBSGqru1MByw==", + "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": { - "hookable": "^5.5.3", - "zhead": "^2.2.4" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" }, - "funding": { - "url": "https://github.com/sponsors/harlan-zw" + "engines": { + "node": ">=8" } }, - "node_modules/@unhead/shared": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@unhead/shared/-/shared-1.9.4.tgz", - "integrity": "sha512-ErP6SUzPPRX9Df4fqGlwlLInoG+iBiH0nDudRuIpoFGyTnv1uO9BQ+lfFld8s1gI1WCdoBwVkISBp9/f/E/GLA==", + "node_modules/browserslist": { + "version": "4.22.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.3.tgz", + "integrity": "sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==", "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": { - "@unhead/schema": "1.9.4" + "caniuse-lite": "^1.0.30001580", + "electron-to-chromium": "^1.4.648", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" }, - "funding": { - "url": "https://github.com/sponsors/harlan-zw" + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/@unhead/ssr": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@unhead/ssr/-/ssr-1.9.4.tgz", - "integrity": "sha512-+32lSX6q+c+PcF0NsywBMmwDgxApjo4R7yxjRBB0gmeEcr58hejS/Ju82D8dLKvHqafLB1cQA7I4XUPyrDUx3Q==", - "dev": true, + "node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", "dependencies": { - "@unhead/schema": "1.9.4", - "@unhead/shared": "1.9.4" + "streamsearch": "^1.1.0" }, - "funding": { - "url": "https://github.com/sponsors/harlan-zw" + "engines": { + "node": ">=10.16.0" + } + }, + "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/@unhead/vue": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@unhead/vue/-/vue-1.9.4.tgz", - "integrity": "sha512-F37bDhhieWQJyXvFV8NmrOXoIVJMhxVI/0ZUDrI9uTkMCofjfKWDJ+Gz0iYdhYF9mjQ5BN+pM31Zpxi+fN5Cfg==", + "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, "dependencies": { - "@unhead/schema": "1.9.4", - "@unhead/shared": "1.9.4", - "hookable": "^5.5.3", - "unhead": "1.9.4" + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.1", + "set-function-length": "^1.1.1" }, "funding": { - "url": "https://github.com/sponsors/harlan-zw" - }, - "peerDependencies": { - "vue": ">=2.7 || >=3" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@vercel/nft": { - "version": "0.26.4", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.26.4.tgz", - "integrity": "sha512-j4jCOOXke2t8cHZCIxu1dzKLHLcFmYzC3yqAK6MfZznOL1QIJKd0xcFsXK3zcqzU7ScsE2zWkiMMNHGMHgp+FA==", + "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, - "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.5", - "@rollup/pluginutils": "^4.0.0", - "acorn": "^8.6.0", - "acorn-import-attributes": "^1.9.2", - "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": ">=6" } }, - "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/caniuse-lite": { + "version": "1.0.30001643", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001643.tgz", + "integrity": "sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg==", + "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/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chai": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", + "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", "dev": true, "dependencies": { - "estree-walker": "^2.0.1", - "picomatch": "^2.2.2" + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.0.8" }, "engines": { - "node": ">= 8.0.0" + "node": ">=4" } }, - "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/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": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.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/@vercel/nft/node_modules/estree-walker": { + "node_modules/character-entities": { "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 + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "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/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==", + "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==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", "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" + "get-func-name": "^2.0.2" }, "engines": { "node": "*" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "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" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "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==", - "dev": true, + "node_modules/chokidar/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==", "dependencies": { - "brace-expansion": "^1.1.7" + "is-glob": "^4.0.1" }, "engines": { - "node": "*" + "node": ">= 6" } }, - "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, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" + }, + "node_modules/clipboardy": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-1.2.2.tgz", + "integrity": "sha512-16KrBOV7bHmHdxcQiCvfUFYVFyEah4FI8vYT1Fr7CGSA4G+xBWMEfUEQJS1hxeHGtI9ju1Bzs9uXSbj5HZKArw==", + "dependencies": { + "arch": "^2.1.0", + "execa": "^0.8.0" + }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/@vitejs/plugin-vue": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.4.tgz", - "integrity": "sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==", - "dev": true, + "node_modules/clsx": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.0.tgz", + "integrity": "sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==", "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "peerDependencies": { - "vite": "^5.0.0", - "vue": "^3.2.25" + "node": ">=6" } }, - "node_modules/@vitejs/plugin-vue-jsx": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-3.1.0.tgz", - "integrity": "sha512-w9M6F3LSEU5kszVb9An2/MmXNxocAnUb3WhRr8bHlimhDrXNt6n6D2nJQR3UXpGlZHh/EsgouOHCsM8V3Ln+WA==", + "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": { - "@babel/core": "^7.23.3", - "@babel/plugin-transform-typescript": "^7.23.3", - "@vue/babel-plugin-jsx": "^1.1.5" + "color-name": "~1.1.4" }, "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "peerDependencies": { - "vite": "^4.0.0 || ^5.0.0", - "vue": "^3.0.0" + "node": ">=7.0.0" } }, - "node_modules/@vitest/coverage-v8": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-1.5.3.tgz", - "integrity": "sha512-DPyGSu/fPHOJuPxzFSQoT4N/Fu/2aJfZRtEpEp8GI7NHsXBGE94CQ+pbEGBUMFjatsHPDJw/+TAF9r4ens2CNw==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.1", - "@bcoe/v8-coverage": "^0.2.3", - "debug": "^4.3.4", - "istanbul-lib-coverage": "^3.2.2", - "istanbul-lib-report": "^3.0.1", - "istanbul-lib-source-maps": "^5.0.4", - "istanbul-reports": "^3.1.6", - "magic-string": "^0.30.5", - "magicast": "^0.3.3", - "picocolors": "^1.0.0", - "std-env": "^3.5.0", - "strip-literal": "^2.0.0", - "test-exclude": "^6.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - }, - "peerDependencies": { - "vitest": "1.5.3" - } + "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/@vitest/expect": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.5.3.tgz", - "integrity": "sha512-y+waPz31pOFr3rD7vWTbwiLe5+MgsMm40jTZbQE8p8/qXyBX3CQsIXRx9XK12IbY7q/t5a5aM/ckt33b4PxK2g==", + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dev": true, "dependencies": { - "@vitest/spy": "1.5.3", - "@vitest/utils": "1.5.3", - "chai": "^4.3.10" + "delayed-stream": "~1.0.0" }, - "funding": { - "url": "https://opencollective.com/vitest" + "engines": { + "node": ">= 0.8" } }, - "node_modules/@vitest/runner": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.5.3.tgz", - "integrity": "sha512-7PlfuReN8692IKQIdCxwir1AOaP5THfNkp0Uc4BKr2na+9lALNit7ub9l3/R7MP8aV61+mHKRGiqEKRIwu6iiQ==", - "dev": true, - "dependencies": { - "@vitest/utils": "1.5.3", - "p-limit": "^5.0.0", - "pathe": "^1.1.1" - }, + "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==", "funding": { - "url": "https://opencollective.com/vitest" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/@vitest/runner/node_modules/p-limit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz", - "integrity": "sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^1.0.0" - }, + "node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 12" } }, - "node_modules/@vitest/runner/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "node_modules/compute-scroll-into-view": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-3.1.0.tgz", + "integrity": "sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg==" }, - "node_modules/@vitest/snapshot": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.5.3.tgz", - "integrity": "sha512-K3mvIsjyKYBhNIDujMD2gfQEzddLe51nNOAf45yKRt/QFJcUIeTQd2trRvv6M6oCBHNVnZwFWbQ4yj96ibiDsA==", - "dev": true, + "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/confbox": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz", + "integrity": "sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==", + "dev": true + }, + "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/cose-base": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-1.0.3.tgz", + "integrity": "sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==", "dependencies": { - "magic-string": "^0.30.5", - "pathe": "^1.1.1", - "pretty-format": "^29.7.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" + "layout-base": "^1.0.0" } }, - "node_modules/@vitest/spy": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.5.3.tgz", - "integrity": "sha512-Llj7Jgs6lbnL55WoshJUUacdJfjU2honvGcAJBxhra5TPEzTJH8ZuhI3p/JwqqfnTr4PmP7nDmOXP53MS7GJlg==", + "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": { - "tinyspy": "^2.2.0" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, - "funding": { - "url": "https://opencollective.com/vitest" + "engines": { + "node": ">= 8" } }, - "node_modules/@vitest/utils": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.5.3.tgz", - "integrity": "sha512-rE9DTN1BRhzkzqNQO+kw8ZgfeEBCLXiHJwetk668shmNBpSagQxneT5eSqEBLP+cqSiAeecvQmbpFfdMyLcIQA==", + "node_modules/cssstyle": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.0.1.tgz", + "integrity": "sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==", "dev": true, "dependencies": { - "diff-sequences": "^29.6.3", - "estree-walker": "^3.0.3", - "loupe": "^2.3.7", - "pretty-format": "^29.7.0" + "rrweb-cssom": "^0.6.0" }, - "funding": { - "url": "https://opencollective.com/vitest" + "engines": { + "node": ">=18" } }, - "node_modules/@vue-macros/common": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@vue-macros/common/-/common-1.10.1.tgz", - "integrity": "sha512-uftSpfwdwitcQT2lM8aVxcfe5rKQBzC9jMrtJM5sG4hEuFyfIvnJihpPpnaWxY+X4p64k+YYXtBFv+1O5Bq3dg==", - "dev": true, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + }, + "node_modules/cytoscape": { + "version": "3.28.1", + "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.28.1.tgz", + "integrity": "sha512-xyItz4O/4zp9/239wCcH8ZcFuuZooEeF8KHRmzjDfGdXsj3OG9MFSMA0pJE0uX3uCN/ygof6hHf4L7lst+JaDg==", "dependencies": { - "@babel/types": "^7.23.6", - "@rollup/pluginutils": "^5.1.0", - "@vue/compiler-sfc": "^3.4.13", - "ast-kit": "^0.11.3", - "local-pkg": "^0.5.0", - "magic-string-ast": "^0.3.0" + "heap": "^0.2.6", + "lodash": "^4.17.21" }, "engines": { - "node": ">=16.14.0" + "node": ">=0.10" + } + }, + "node_modules/cytoscape-cose-bilkent": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz", + "integrity": "sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==", + "dependencies": { + "cose-base": "^1.0.0" }, "peerDependencies": { - "vue": "^2.7.0 || ^3.2.25" - }, - "peerDependenciesMeta": { - "vue": { - "optional": true - } + "cytoscape": "^3.2.0" } }, - "node_modules/@vue/babel-helper-vue-transform-on": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.1.6.tgz", - "integrity": "sha512-XxM2tZHjYHTd9yiKHHt7fKCN0e2BK2z78UxU5rpjH3YCstEV/tcrW29CaOdrxIdeD0c/9mHHebvXWwDxlphjKA==", - "dev": true - }, - "node_modules/@vue/babel-plugin-jsx": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.1.6.tgz", - "integrity": "sha512-s2pK8Wwg0LiR25lyCKWGJePt8aXF0DsXOmTHYJnlKNdT3yTKfdvkKmsWjaHBctFvwWmetedObrAoINc9BeYZlA==", - "dev": true, + "node_modules/cytoscape-fcose": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cytoscape-fcose/-/cytoscape-fcose-2.2.0.tgz", + "integrity": "sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==", "dependencies": { - "@babel/helper-module-imports": "^7.22.15", - "@babel/plugin-syntax-jsx": "^7.23.3", - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.7", - "@babel/types": "^7.23.6", - "@vue/babel-helper-vue-transform-on": "^1.1.6", - "camelcase": "^6.3.0", - "html-tags": "^3.3.1", - "svg-tags": "^1.0.0" + "cose-base": "^2.2.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - } + "cytoscape": "^3.2.0" } }, - "node_modules/@vue/compiler-core": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.15.tgz", - "integrity": "sha512-XcJQVOaxTKCnth1vCxEChteGuwG6wqnUHxAm1DO3gCz0+uXKaJNx8/digSz4dLALCy8n2lKq24jSUs8segoqIw==", - "dev": true, + "node_modules/cytoscape-fcose/node_modules/cose-base": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-2.2.0.tgz", + "integrity": "sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==", "dependencies": { - "@babel/parser": "^7.23.6", - "@vue/shared": "3.4.15", - "entities": "^4.5.0", - "estree-walker": "^2.0.2", - "source-map-js": "^1.0.2" + "layout-base": "^2.0.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.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.15.tgz", - "integrity": "sha512-wox0aasVV74zoXyblarOM3AZQz/Z+OunYcIHe1OsGclCHt8RsRm04DObjefaI82u6XDzv+qGWZ24tIsRAIi5MQ==", - "dev": true, - "dependencies": { - "@vue/compiler-core": "3.4.15", - "@vue/shared": "3.4.15" + "node_modules/cytoscape-fcose/node_modules/layout-base": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-2.0.1.tgz", + "integrity": "sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==" + }, + "node_modules/d3": { + "version": "7.8.5", + "resolved": "https://registry.npmjs.org/d3/-/d3-7.8.5.tgz", + "integrity": "sha512-JgoahDG51ncUfJu6wX/1vWQEqOflgXyl4MaHqlcSruTez7yhaRKR9i8VjjcQGeS2en/jnFivXuaIMnseMMt0XA==", + "dependencies": { + "d3-array": "3", + "d3-axis": "3", + "d3-brush": "3", + "d3-chord": "3", + "d3-color": "3", + "d3-contour": "4", + "d3-delaunay": "6", + "d3-dispatch": "3", + "d3-drag": "3", + "d3-dsv": "3", + "d3-ease": "3", + "d3-fetch": "3", + "d3-force": "3", + "d3-format": "3", + "d3-geo": "3", + "d3-hierarchy": "3", + "d3-interpolate": "3", + "d3-path": "3", + "d3-polygon": "3", + "d3-quadtree": "3", + "d3-random": "3", + "d3-scale": "4", + "d3-scale-chromatic": "3", + "d3-selection": "3", + "d3-shape": "3", + "d3-time": "3", + "d3-time-format": "4", + "d3-timer": "3", + "d3-transition": "3", + "d3-zoom": "3" + }, + "engines": { + "node": ">=12" } }, - "node_modules/@vue/compiler-sfc": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.15.tgz", - "integrity": "sha512-LCn5M6QpkpFsh3GQvs2mJUOAlBQcCco8D60Bcqmf3O3w5a+KWS5GvYbrrJBkgvL1BDnTp+e8q0lXCLgHhKguBA==", - "dev": true, + "node_modules/d3-array": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", + "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", "dependencies": { - "@babel/parser": "^7.23.6", - "@vue/compiler-core": "3.4.15", - "@vue/compiler-dom": "3.4.15", - "@vue/compiler-ssr": "3.4.15", - "@vue/shared": "3.4.15", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.5", - "postcss": "^8.4.33", - "source-map-js": "^1.0.2" + "internmap": "1 - 2" + }, + "engines": { + "node": ">=12" } }, - "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/d3-axis": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz", + "integrity": "sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==", + "engines": { + "node": ">=12" + } }, - "node_modules/@vue/compiler-ssr": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.15.tgz", - "integrity": "sha512-1jdeQyiGznr8gjFDadVmOJqZiLNSsMa5ZgqavkPZ8O2wjHv0tVuAEsw5hTdUoUW4232vpBbL/wJhzVW/JwY1Uw==", - "dev": true, + "node_modules/d3-brush": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz", + "integrity": "sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==", "dependencies": { - "@vue/compiler-dom": "3.4.15", - "@vue/shared": "3.4.15" + "d3-dispatch": "1 - 3", + "d3-drag": "2 - 3", + "d3-interpolate": "1 - 3", + "d3-selection": "3", + "d3-transition": "3" + }, + "engines": { + "node": ">=12" } }, - "node_modules/@vue/devtools-api": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.1.tgz", - "integrity": "sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==", - "dev": true - }, - "node_modules/@vue/reactivity": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.15.tgz", - "integrity": "sha512-55yJh2bsff20K5O84MxSvXKPHHt17I2EomHznvFiJCAZpJTNW8IuLj1xZWMLELRhBK3kkFV/1ErZGHJfah7i7w==", - "dev": true, - "peer": true, + "node_modules/d3-chord": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz", + "integrity": "sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==", "dependencies": { - "@vue/shared": "3.4.15" + "d3-path": "1 - 3" + }, + "engines": { + "node": ">=12" } }, - "node_modules/@vue/runtime-core": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.15.tgz", - "integrity": "sha512-6E3by5m6v1AkW0McCeAyhHTw+3y17YCOKG0U0HDKDscV4Hs0kgNT5G+GCHak16jKgcCDHpI9xe5NKb8sdLCLdw==", - "dev": true, - "peer": true, - "dependencies": { - "@vue/reactivity": "3.4.15", - "@vue/shared": "3.4.15" + "node_modules/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "engines": { + "node": ">=12" } }, - "node_modules/@vue/runtime-dom": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.15.tgz", - "integrity": "sha512-EVW8D6vfFVq3V/yDKNPBFkZKGMFSvZrUQmx196o/v2tHKdwWdiZjYUBS+0Ez3+ohRyF8Njwy/6FH5gYJ75liUw==", - "dev": true, - "peer": true, + "node_modules/d3-contour": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz", + "integrity": "sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==", "dependencies": { - "@vue/runtime-core": "3.4.15", - "@vue/shared": "3.4.15", - "csstype": "^3.1.3" + "d3-array": "^3.2.0" + }, + "engines": { + "node": ">=12" } }, - "node_modules/@vue/server-renderer": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.15.tgz", - "integrity": "sha512-3HYzaidu9cHjrT+qGUuDhFYvF/j643bHC6uUN9BgM11DVy+pM6ATsG6uPBLnkwOgs7BpJABReLmpL3ZPAsUaqw==", - "dev": true, - "peer": true, + "node_modules/d3-delaunay": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz", + "integrity": "sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==", "dependencies": { - "@vue/compiler-ssr": "3.4.15", - "@vue/shared": "3.4.15" + "delaunator": "5" }, - "peerDependencies": { - "vue": "3.4.15" + "engines": { + "node": ">=12" } }, - "node_modules/@vue/shared": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.15.tgz", - "integrity": "sha512-KzfPTxVaWfB+eGcGdbSf4CWdaXcGDqckoeXUh7SB3fZdEtzPCK2Vq9B/lRRL3yutax/LWITz+SwvgyOxz5V75g==", - "dev": true + "node_modules/d3-dispatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", + "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", + "engines": { + "node": ">=12" + } }, - "node_modules/@vue/test-utils": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@vue/test-utils/-/test-utils-2.4.3.tgz", - "integrity": "sha512-F4K7mF+ad++VlTrxMJVRnenKSJmO6fkQt2wpRDiKDesQMkfpniGWsqEi/JevxGBo2qEkwwjvTUAoiGJLNx++CA==", - "dev": true, + "node_modules/d3-drag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", + "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", "dependencies": { - "js-beautify": "^1.14.9", - "vue-component-type-helpers": "^1.8.21" - }, - "peerDependencies": { - "@vue/server-renderer": "^3.0.1", - "vue": "^3.0.1" + "d3-dispatch": "1 - 3", + "d3-selection": "3" }, - "peerDependenciesMeta": { - "@vue/server-renderer": { - "optional": true - } + "engines": { + "node": ">=12" } }, - "node_modules/@vueuse/core": { - "version": "10.7.2", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.7.2.tgz", - "integrity": "sha512-AOyAL2rK0By62Hm+iqQn6Rbu8bfmbgaIMXcE3TSr7BdQ42wnSFlwIdPjInO62onYsEMK/yDMU8C6oGfDAtZ2qQ==", - "dev": true, + "node_modules/d3-dsv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz", + "integrity": "sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==", "dependencies": { - "@types/web-bluetooth": "^0.0.20", - "@vueuse/metadata": "10.7.2", - "@vueuse/shared": "10.7.2", - "vue-demi": ">=0.14.6" + "commander": "7", + "iconv-lite": "0.6", + "rw": "1" }, - "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" + "csv2json": "bin/dsv2json.js", + "csv2tsv": "bin/dsv2dsv.js", + "dsv2dsv": "bin/dsv2dsv.js", + "dsv2json": "bin/dsv2json.js", + "json2csv": "bin/json2dsv.js", + "json2dsv": "bin/json2dsv.js", + "json2tsv": "bin/json2dsv.js", + "tsv2csv": "bin/dsv2dsv.js", + "tsv2json": "bin/dsv2json.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/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": { - "@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" + "node_modules/d3-dsv/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==", + "engines": { + "node": ">= 10" } }, - "node_modules/@vueuse/metadata": { - "version": "10.7.2", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.7.2.tgz", - "integrity": "sha512-kCWPb4J2KGrwLtn1eJwaJD742u1k5h6v/St5wFe8Quih90+k2a0JP8BS4Zp34XUuJqS2AxFYMb1wjUL8HfhWsQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/antfu" + "node_modules/d3-ease": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", + "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "engines": { + "node": ">=12" } }, - "node_modules/@vueuse/nuxt": { - "version": "10.7.2", - "resolved": "https://registry.npmjs.org/@vueuse/nuxt/-/nuxt-10.7.2.tgz", - "integrity": "sha512-yv2hY4AiRoSqg9ELNpN6gOkDWxGuLiKE/bEbuTAAuUBhS5OeEDf5aB/kY0e/V6ZXj5XiU4LX3nE8YV8c+UKfmQ==", - "dev": true, + "node_modules/d3-fetch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz", + "integrity": "sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==", "dependencies": { - "@nuxt/kit": "^3.9.1", - "@vueuse/core": "10.7.2", - "@vueuse/metadata": "10.7.2", - "local-pkg": "^0.5.0", - "vue-demi": ">=0.14.6" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" + "d3-dsv": "1 - 3" }, - "peerDependencies": { - "nuxt": "^3.0.0" + "engines": { + "node": ">=12" } }, - "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" + "node_modules/d3-force": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz", + "integrity": "sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==", + "dependencies": { + "d3-dispatch": "1 - 3", + "d3-quadtree": "1 - 3", + "d3-timer": "1 - 3" }, "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/shared": { - "version": "10.7.2", - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.7.2.tgz", - "integrity": "sha512-qFbXoxS44pi2FkgFjPvF4h7c9oMDutpyBdcJdMYIMg9XyXli2meFMuaKn+UMgsClo//Th6+beeCgqweT/79BVA==", - "dev": true, - "dependencies": { - "vue-demi": ">=0.14.6" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" + "node_modules/d3-format": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", + "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==", + "engines": { + "node": ">=12" } }, - "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" + "node_modules/d3-geo": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.0.tgz", + "integrity": "sha512-JEo5HxXDdDYXCaWdwLRt79y7giK8SbhZJbFWXqbRTolCHFI5jRqteLzCsq51NKbUoX0PjBVSohxrx+NoOUujYA==", + "dependencies": { + "d3-array": "2.5.0 - 3" }, "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/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, + "node_modules/d3-hierarchy": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", + "integrity": "sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=12" } }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "dev": true, + "node_modules/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", "dependencies": { - "event-target-shim": "^5.0.0" + "d3-color": "1 - 3" }, "engines": { - "node": ">=6.5" + "node": ">=12" } }, - "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, + "node_modules/d3-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", + "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", "engines": { - "node": ">=0.4.0" + "node": ">=12" } }, - "node_modules/acorn-import-attributes": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", - "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", - "dev": true, - "peerDependencies": { - "acorn": "^8" + "node_modules/d3-polygon": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz", + "integrity": "sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==", + "engines": { + "node": ">=12" } }, - "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, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + "node_modules/d3-quadtree": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz", + "integrity": "sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==", + "engines": { + "node": ">=12" } }, - "node_modules/acorn-walk": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", - "dev": true, + "node_modules/d3-random": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz", + "integrity": "sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==", "engines": { - "node": ">=0.4.0" + "node": ">=12" } }, - "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, + "node_modules/d3-sankey": { + "version": "0.12.3", + "resolved": "https://registry.npmjs.org/d3-sankey/-/d3-sankey-0.12.3.tgz", + "integrity": "sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==", "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" + "d3-array": "1 - 2", + "d3-shape": "^1.2.0" } }, - "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, + "node_modules/d3-sankey/node_modules/d3-array": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz", + "integrity": "sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==", "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" + "internmap": "^1.0.0" } }, - "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, + "node_modules/d3-sankey/node_modules/d3-path": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", + "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" + }, + "node_modules/d3-sankey/node_modules/d3-shape": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", + "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", "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" + "d3-path": "1" } }, - "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, - "engines": { - "node": ">=6" - } + "node_modules/d3-sankey/node_modules/internmap": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz", + "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==" }, - "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, + "node_modules/d3-scale": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", + "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", "dependencies": { - "type-fest": "^0.21.3" + "d3-array": "2.10.0 - 3", + "d3-format": "1 - 3", + "d3-interpolate": "1.2.0 - 3", + "d3-time": "2.1.1 - 3", + "d3-time-format": "2 - 4" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=12" } }, - "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, - "engines": { - "node": ">=10" + "node_modules/d3-scale-chromatic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", + "integrity": "sha512-Lx9thtxAKrO2Pq6OO2Ua474opeziKr279P/TKZsMAhYyNDD3EnCffdbgeSYN5O7m2ByQsxtuP2CSDczNUIZ22g==", + "dependencies": { + "d3-color": "1 - 3", + "d3-interpolate": "1 - 3" }, - "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==", - "dev": true, + "node_modules/d3-selection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", + "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", "engines": { - "node": ">=8" + "node": ">=12" } }, - "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, + "node_modules/d3-shape": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", + "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", "dependencies": { - "color-convert": "^2.0.1" + "d3-path": "^3.1.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=12" } }, - "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, + "node_modules/d3-time": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", + "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "d3-array": "2 - 3" }, "engines": { - "node": ">= 8" + "node": ">=12" } }, - "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/archiver": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-7.0.1.tgz", - "integrity": "sha512-ZcbTaIqJOfCc03QwD468Unz/5Ir8ATtvAHsK+FdXbDIbGfihqh9mrvdcYunQzqn4HrvWWaFyaxJhGZagaJJpPQ==", - "dev": true, + "node_modules/d3-time-format": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", + "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", "dependencies": { - "archiver-utils": "^5.0.2", - "async": "^3.2.4", - "buffer-crc32": "^1.0.0", - "readable-stream": "^4.0.0", - "readdir-glob": "^1.1.2", - "tar-stream": "^3.0.0", - "zip-stream": "^6.0.1" + "d3-time": "1 - 3" }, "engines": { - "node": ">= 14" + "node": ">=12" } }, - "node_modules/archiver-utils": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-5.0.2.tgz", - "integrity": "sha512-wuLJMmIBQYCsGZgYLTy5FIB2pF6Lfb6cXMSF8Qywwk3t20zWnAi7zLcQFdKQmIB8wyZpY5ER38x08GbwtR2cLA==", - "dev": true, - "dependencies": { - "glob": "^10.0.0", - "graceful-fs": "^4.2.0", - "is-stream": "^2.0.1", - "lazystream": "^1.0.0", - "lodash": "^4.17.15", - "normalize-path": "^3.0.0", - "readable-stream": "^4.0.0" - }, + "node_modules/d3-timer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", "engines": { - "node": ">= 14" + "node": ">=12" } }, - "node_modules/archiver-utils/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, + "node_modules/d3-transition": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", + "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", + "dependencies": { + "d3-color": "1 - 3", + "d3-dispatch": "1 - 3", + "d3-ease": "1 - 3", + "d3-interpolate": "1 - 3", + "d3-timer": "1 - 3" + }, "engines": { - "node": ">=8" + "node": ">=12" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "d3-selection": "2 - 3" } }, - "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, + "node_modules/d3-zoom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", + "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" + "d3-dispatch": "1 - 3", + "d3-drag": "2 - 3", + "d3-interpolate": "1 - 3", + "d3-selection": "2 - 3", + "d3-transition": "2 - 3" }, "engines": { - "node": ">=10" + "node": ">=12" } }, - "node_modules/are-we-there-yet/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, + "node_modules/dagre-d3-es": { + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/dagre-d3-es/-/dagre-d3-es-7.0.10.tgz", + "integrity": "sha512-qTCQmEhcynucuaZgY5/+ti3X/rnszKZhEQH/ZdWdtP1tA/y3VoHJzcVrO9pjjJCNpigfscAtoUB5ONcd2wNn0A==", "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" + "d3": "^7.8.2", + "lodash-es": "^4.17.21" } }, - "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/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", "dev": true }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "node_modules/data-urls": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", + "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=18" } }, - "node_modules/array-includes": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", - "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", - "dev": true, + "node_modules/dayjs": { + "version": "1.11.10", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz", + "integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==" + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-string": "^1.0.7" + "ms": "2.1.2" }, "engines": { - "node": ">= 0.4" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "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==", + "dependencies": { + "character-entities": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "node_modules/deep-eql": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", + "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", "dev": true, + "dependencies": { + "type-detect": "^4.0.0" + }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "node_modules/deep-equal": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", + "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -4659,34 +3789,35 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "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 + }, + "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": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" }, "engines": { "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "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": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { "node": ">= 0.4" @@ -4695,1391 +3826,1354 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", - "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", - "dev": true, + "node_modules/delaunator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", + "integrity": "sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==", "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", - "is-shared-array-buffer": "^1.0.2" - }, + "robust-predicates": "^3.0.2" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=0.4.0" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "engines": { + "node": ">=6" + } + }, + "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==", + "dependencies": { + "dequal": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true, + "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==", "engines": { - "node": "*" + "node": ">=0.3.1" } }, - "node_modules/ast-kit": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-0.11.3.tgz", - "integrity": "sha512-qdwwKEhckRk0XE22/xDdmU3v/60E8Edu4qFhgTLIhGGDs/PAJwLw9pQn8Rj99PitlbBZbYpx0k/lbir4kg0SuA==", + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", "dev": true, - "dependencies": { - "@babel/parser": "^7.23.5", - "@rollup/pluginutils": "^5.1.0", - "pathe": "^1.1.1" - }, "engines": { - "node": ">=16.14.0" + "node": "^14.15.0 || ^16.10.0 || >=18.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/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": { - "@babel/parser": "^7.22.7", - "ast-kit": "^0.9.4" + "path-type": "^4.0.0" }, "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/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "dependencies": { - "@babel/parser": "^7.22.7", - "@rollup/pluginutils": "^5.0.2", - "pathe": "^1.1.1" + "esutils": "^2.0.2" }, "engines": { - "node": ">=16.14.0" + "node": ">=6.0.0" } }, - "node_modules/async": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", - "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==", + "node_modules/dom-accessibility-api": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", + "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", "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==", + "node_modules/dompurify": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.0.8.tgz", + "integrity": "sha512-b7uwreMYL2eZhrSCRC4ahLTeZcPZxSmYfmcQGXGkXiZSNW1X85v+SDM5KsWcpivIiUBH47Ji7NtyUdpLeF5JZQ==" + }, + "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/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "node_modules/electron-to-chromium": { + "version": "1.4.648", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.648.tgz", + "integrity": "sha512-EmFMarXeqJp9cUKu/QEciEApn0S/xRcpZWuAm32U7NgoZCimjsilKXHRO9saeEW55eHZagIDg6XTUOv32w9pjg==", + "dev": true + }, + "node_modules/elkjs": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.9.1.tgz", + "integrity": "sha512-JWKDyqAdltuUcyxaECtYG6H4sqysXSLeoXuGUBfRNESMTkj+w+qdb0jya8Z/WI0jVd03WQtCGhS6FOFtlhD5FQ==" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", "dev": true }, - "node_modules/autoprefixer": { - "version": "10.4.19", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", - "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", + "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, - "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.23.0", - "caniuse-lite": "^1.0.30001599", - "fraction.js": "^4.3.7", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" }, "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" + "node": ">=10.13.0" } }, - "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, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "engines": { - "node": ">= 0.4" + "node": ">=0.12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/b4a": { - "version": "1.6.6", - "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.6.tgz", - "integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==", - "dev": true - }, - "node_modules/bail": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", - "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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/bare-events": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.2.2.tgz", - "integrity": "sha512-h7z00dWdG0PYOQEvChhOSWvOfkIKsdZGkWr083FgN/HyoQuebSew/cgirYqh9SCuy/hRvxc5Vy6Fw8xAmYHLkQ==", - "dev": true, - "optional": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "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/bidi-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/bidi-js/-/bidi-js-1.0.3.tgz", - "integrity": "sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==", + "node_modules/es-abstract": { + "version": "1.22.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", + "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", "dev": true, "dependencies": { - "require-from-string": "^2.0.2" - } - }, - "node_modules/big-integer": { - "version": "1.6.52", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", - "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, + "array-buffer-byte-length": "^1.0.0", + "arraybuffer.prototype.slice": "^1.0.2", + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.5", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.2", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0", + "internal-slot": "^1.0.5", + "is-array-buffer": "^3.0.2", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.12", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "safe-array-concat": "^1.0.1", + "safe-regex-test": "^1.0.0", + "string.prototype.trim": "^1.2.8", + "string.prototype.trimend": "^1.0.7", + "string.prototype.trimstart": "^1.0.7", + "typed-array-buffer": "^1.0.0", + "typed-array-byte-length": "^1.0.0", + "typed-array-byte-offset": "^1.0.0", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.13" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", "dev": true, "dependencies": { - "file-uri-to-path": "1.0.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/birpc": { - "version": "0.2.14", - "resolved": "https://registry.npmjs.org/birpc/-/birpc-0.2.14.tgz", - "integrity": "sha512-37FHE8rqsYM5JEKCnXFyHpBCzvgHEExwVVTq+nUmloInU7l8ezD1TpOhKpS8oe1DTYFqEK27rFZVKG43oTqXRA==", + "node_modules/es-iterator-helpers": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz", + "integrity": "sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/antfu" + "dependencies": { + "asynciterator.prototype": "^1.0.0", + "call-bind": "^1.0.2", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.1", + "es-set-tostringtag": "^2.0.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.2.1", + "globalthis": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "iterator.prototype": "^1.1.2", + "safe-array-concat": "^1.0.1" } }, - "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/es-set-tostringtag": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", + "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", "dev": true, "dependencies": { - "big-integer": "^1.6.44" + "get-intrinsic": "^1.2.2", + "has-tostringtag": "^1.0.0", + "hasown": "^2.0.0" }, "engines": { - "node": ">= 5.10.0" + "node": ">= 0.4" } }, - "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/es-shim-unscopables": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0" + "hasown": "^2.0.0" } }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, - "license": "MIT", "dependencies": { - "fill-range": "^7.1.1" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "node_modules/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", "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.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - }, + "hasInstallScript": true, "bin": { - "browserslist": "cli.js" + "esbuild": "bin/esbuild" }, "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "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": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/buffer-crc32": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-1.0.0.tgz", - "integrity": "sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==", - "dev": true, - "engines": { - "node": ">=8.0.0" + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" } }, - "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/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" - }, - "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": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", - "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", + "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, - "dependencies": { - "run-applescript": "^5.0.0" - }, "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/c12": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/c12/-/c12-1.10.0.tgz", - "integrity": "sha512-0SsG7UDhoRWcuSvKWHaXmu5uNjDCDN3nkQLRL4Q42IlFy+ze58FcCoI3uPwINXinkz7ZinbhEgyzYFw9u9ZV8g==", + "node_modules/eslint": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", + "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", "dev": true, "dependencies": { - "chokidar": "^3.6.0", - "confbox": "^0.1.3", - "defu": "^6.1.4", - "dotenv": "^16.4.5", - "giget": "^1.2.1", - "jiti": "^1.21.0", - "mlly": "^1.6.1", - "ohash": "^1.1.3", - "pathe": "^1.1.2", - "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, - "engines": { - "node": ">=8" + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.56.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": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/cacache": { - "version": "18.0.2", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.2.tgz", - "integrity": "sha512-r3NU8h/P+4lVUHfeRw1dtgQYar3DZMm4/cm2bZgOvrFC/su7budSOeqh52VJIC4U4iG1WWwV6vRW0znqBvxNuw==", + "node_modules/eslint-config-next": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.1.0.tgz", + "integrity": "sha512-SBX2ed7DoRFXC6CQSLc/SbLY9Ut6HxNB2wPTcoIWjUMd7aF7O/SIE7111L8FdZ9TXsNV4pulUDnfthpyPtbFUg==", "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": "^2.0.1", - "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" + "@next/eslint-plugin-next": "14.1.0", + "@rushstack/eslint-patch": "^1.3.3", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^3.5.2", + "eslint-plugin-import": "^2.28.1", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-react": "^7.33.2", + "eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705" }, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "peerDependencies": { + "eslint": "^7.23.0 || ^8.0.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/cacache/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "node_modules/eslint-config-prettier": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", + "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", "dev": true, - "engines": { - "node": "14 || >=16.14" + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" } }, - "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==", + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", "dev": true, "dependencies": { - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.1", - "set-function-length": "^1.1.1" + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz", + "integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4", + "enhanced-resolve": "^5.12.0", + "eslint-module-utils": "^2.7.4", + "fast-glob": "^3.3.1", + "get-tsconfig": "^4.5.0", + "is-core-module": "^2.11.0", + "is-glob": "^4.0.3" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*" } }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "node_modules/eslint-module-utils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", + "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", "dev": true, + "dependencies": { + "debug": "^3.2.7" + }, "engines": { - "node": ">=6" + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" } }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/eslint-plugin-import": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", + "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", "dev": true, + "dependencies": { + "array-includes": "^3.1.7", + "array.prototype.findlastindex": "^1.2.3", + "array.prototype.flat": "^1.3.2", + "array.prototype.flatmap": "^1.3.2", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.8.0", + "hasown": "^2.0.0", + "is-core-module": "^2.13.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.7", + "object.groupby": "^1.0.1", + "object.values": "^1.1.7", + "semver": "^6.3.1", + "tsconfig-paths": "^3.15.0" + }, "engines": { - "node": ">=10" + "node": ">=4" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" } }, - "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==", + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" + "ms": "^2.1.1" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001605", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001605.tgz", - "integrity": "sha512-nXwGlFWo34uliI9z3n6Qc0wZaf7zaZWA1CPZ169La5mV3I/gem7bst0vr5XQH5TJXZIMfDeZyOrZnSlVzKxxHQ==", + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "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" - } - ] + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } }, - "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/eslint-plugin-import/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, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/chai": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", - "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz", + "integrity": "sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==", "dev": true, "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.3", - "deep-eql": "^4.1.3", - "get-func-name": "^2.0.2", - "loupe": "^2.3.6", - "pathval": "^1.1.1", - "type-detect": "^4.0.8" + "@babel/runtime": "^7.23.2", + "aria-query": "^5.3.0", + "array-includes": "^3.1.7", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "=4.7.0", + "axobject-query": "^3.2.1", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "es-iterator-helpers": "^1.0.15", + "hasown": "^2.0.0", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.entries": "^1.1.7", + "object.fromentries": "^2.0.7" }, "engines": { - "node": ">=4" + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "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/eslint-plugin-react": { + "version": "7.33.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", + "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "array-includes": "^3.1.6", + "array.prototype.flatmap": "^1.3.1", + "array.prototype.tosorted": "^1.1.1", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.0.12", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.6", + "object.fromentries": "^2.0.6", + "object.hasown": "^1.1.2", + "object.values": "^1.1.6", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.4", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.8" }, "engines": { - "node": ">=10" + "node": ">=4" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "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/eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", "dev": true, "engines": { "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" } }, - "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, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-html4": { + "node_modules/eslint-plugin-react/node_modules/doctrine": { "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, - "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==", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "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/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", "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": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/check-error": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", - "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "node_modules/eslint-plugin-react/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, - "dependencies": { - "get-func-name": "^2.0.2" - }, - "engines": { - "node": "*" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "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, "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" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">= 8.10.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true, - "engines": { - "node": ">=10" + "url": "https://opencollective.com/eslint" } }, - "node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "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, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], "engines": { - "node": ">=8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/citty": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/citty/-/citty-0.1.6.tgz", - "integrity": "sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==", + "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, "dependencies": { - "consola": "^3.2.3" + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/clean-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", - "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" + "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==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { "node": ">=4" } }, - "node_modules/clean-regexp/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "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, + "dependencies": { + "estraverse": "^5.1.0" + }, "engines": { - "node": ">=0.8.0" + "node": ">=0.10" } }, - "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/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, + "dependencies": { + "estraverse": "^5.2.0" + }, "engines": { - "node": ">=6" + "node": ">=4.0" } }, - "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/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, "engines": { - "node": "*" + "node": ">=4.0" } }, - "node_modules/clipboardy": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-4.0.0.tgz", - "integrity": "sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==", - "dev": true, + "node_modules/estree-util-attach-comments": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-2.1.1.tgz", + "integrity": "sha512-+5Ba/xGGS6mnwFbXIuQiDPTbuTxuMCooq3arVv7gPZtYpjp+VXH/NkHAP35OOefPhNG/UGqU3vt/LTABwcHX0w==", "dependencies": { - "execa": "^8.0.1", - "is-wsl": "^3.1.0", - "is64bit": "^2.0.0" - }, - "engines": { - "node": ">=18" + "@types/estree": "^1.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/estree-util-build-jsx": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-2.2.2.tgz", + "integrity": "sha512-m56vOXcOBuaF+Igpb9OPAy7f9w9OIkb5yhjsZuaPm7HoGi4oTOQi0h2+yZ+AtKklYFZ+rPC4n0wYCJCEU1ONqg==", "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" + "@types/estree-jsx": "^1.0.0", + "estree-util-is-identifier-name": "^2.0.0", + "estree-walker": "^3.0.0" }, - "engines": { - "node": ">=12" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/cliui/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/estree-util-is-identifier-name": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz", + "integrity": "sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/cliui/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, + "node_modules/estree-util-to-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-1.2.0.tgz", + "integrity": "sha512-IzU74r1PK5IMMGZXUVZbmiu4A1uhiPgW5hm1GjcOfr4ZzHaMPpLNJjR7HjXiIOzi25nZDrgFTobHTkV5Q6ITjA==", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "@types/estree-jsx": "^1.0.0", + "astring": "^1.8.0", + "source-map": "^0.7.0" }, - "engines": { - "node": ">=8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/cliui/node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, + "node_modules/estree-util-value-to-estree": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-1.3.0.tgz", + "integrity": "sha512-Y+ughcF9jSUJvncXwqRageavjrNPAI+1M/L3BI3PyLp1nmgYTGUXU6t5z1Y7OWuThoDdhPME07bQU+d5LxdJqw==", "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "is-plain-obj": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=12.0.0" + } + }, + "node_modules/estree-util-visit": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-1.2.1.tgz", + "integrity": "sha512-xbgqcrkIVbIG+lI/gzbvd9SGTJL4zqJKBFttUl5pP27KhAjtMKbX/mQXJ7qgyXpMgVy/zvpm0xoQQaGL8OloOw==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/unist": "^2.0.0" }, "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "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, "engines": { "node": ">=0.10.0" } }, - "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-name": "~1.1.4" + "node_modules/execa": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz", + "integrity": "sha512-zDWS+Rb1E8BlqqhALSt9kUhss8Qq4nN3iof3gsOdyINksElaPyNBtKUMTR62qhvgVWR0CqCX7sdnKe4MnUbFEA==", + "dependencies": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=4" } }, - "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/execa/node_modules/cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", + "dependencies": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, - "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/execa/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, + "node_modules/execa/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dependencies": { - "delayed-stream": "~1.0.0" + "shebang-regex": "^1.0.0" }, "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, - "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": { - "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==", - "dev": true, + "node_modules/execa/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", "engines": { - "node": ">=14" + "node": ">=0.10.0" } }, - "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/execa/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==" }, - "node_modules/compress-commons": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-6.0.2.tgz", - "integrity": "sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==", - "dev": true, + "node_modules/execa/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dependencies": { - "crc-32": "^1.2.0", - "crc32-stream": "^6.0.0", - "is-stream": "^2.0.1", - "normalize-path": "^3.0.0", - "readable-stream": "^4.0.0" + "isexe": "^2.0.0" }, - "engines": { - "node": ">= 14" + "bin": { + "which": "bin/which" } }, - "node_modules/compress-commons/node_modules/is-stream": { + "node_modules/execa/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/extend-shallow": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=0.10.0" } }, - "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/confbox": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.3.tgz", - "integrity": "sha512-eH3ZxAihl1PhKfpr4VfEN6/vUd87fmgb6JkldHgg/YR6aEBhW63qUDgzP2Y6WM0UumdsYp5H3kibalXAdHfbgg==", + "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/config-chain": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", - "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "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, "dependencies": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" + "@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" + }, + "engines": { + "node": ">=8.6.0" } }, - "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/fast-glob/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": "^14.18.0 || >=16.10.0" + "node": ">= 6" } }, - "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/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==", + "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 }, - "node_modules/cookie-es": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.1.0.tgz", - "integrity": "sha512-L2rLOcK0wzWSfSDA33YR+PUHDG10a8px7rUHKWbGLP4YfbsMed2KFUw5fczvDPbT98DDe3LEzviswl810apTEw==", + "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 }, - "node_modules/copy-anything": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", - "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "node_modules/fastq": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.0.tgz", + "integrity": "sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w==", "dev": true, "dependencies": { - "is-what": "^3.14.1" - }, - "funding": { - "url": "https://github.com/sponsors/mesqueeb" + "reusify": "^1.0.4" } }, - "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/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, - "bin": { - "crc32": "bin/crc32.njs" + "dependencies": { + "flat-cache": "^3.0.4" }, "engines": { - "node": ">=0.8" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/crc32-stream": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-6.0.0.tgz", - "integrity": "sha512-piICUB6ei4IlTv1+653yq5+KoqfBYmj9bw6LqXoOneTMDXk5nM1qt12mFW1caG3LlJXEKW1Bp0WggEmIfQB34g==", - "dev": true, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "license": "MIT", "dependencies": { - "crc-32": "^1.2.0", - "readable-stream": "^4.0.0" + "to-regex-range": "^5.0.1" }, "engines": { - "node": ">= 14" + "node": ">=8" } }, - "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/croner": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/croner/-/croner-8.0.1.tgz", - "integrity": "sha512-Hq1+lXVgjJjcS/U+uk6+yVmtxami0r0b+xVtlGyABgdz110l/kOnHWvlSI7nVzrTl8GCdZHwZS4pbBFT7hSL/g==", + "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, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, "engines": { - "node": ">=18.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dev": true, "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, "engines": { - "node": ">= 8" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/crossws": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/crossws/-/crossws-0.2.4.tgz", - "integrity": "sha512-DAxroI2uSOgUKLz00NX6A8U/8EE3SZHmIND+10jkVSaypvyt57J5JEOxAQOL6lQxyzi/wZbTIwssU1uy69h5Vg==", - "dev": true, - "peerDependencies": { - "uWebSockets.js": "*" - }, - "peerDependenciesMeta": { - "uWebSockets.js": { - "optional": true - } - } + "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/css-declaration-sorter": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz", - "integrity": "sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==", - "dev": true, - "engines": { - "node": "^14 || ^16 || >=18" - }, - "peerDependencies": { - "postcss": "^8.0.9" - } + "node_modules/flexsearch": { + "version": "0.7.43", + "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.7.43.tgz", + "integrity": "sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==" }, - "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/focus-visible": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/focus-visible/-/focus-visible-5.2.0.tgz", + "integrity": "sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==" + }, + "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": { - "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" + "is-callable": "^1.1.3" } }, - "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/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": { - "mdn-data": "2.0.30", - "source-map-js": "^1.0.1" + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" }, "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "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/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, "engines": { "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" } }, - "node_modules/css.escape": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", + "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/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" - }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=4" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/cssnano": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.1.2.tgz", - "integrity": "sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==", + "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": { - "cssnano-preset-default": "^6.1.2", - "lilconfig": "^3.1.1" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/cssnano" - }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/cssnano-preset-default": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz", - "integrity": "sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==", - "dev": true, - "dependencies": { - "browserslist": "^4.23.0", - "css-declaration-sorter": "^7.2.0", - "cssnano-utils": "^4.0.2", - "postcss-calc": "^9.0.1", - "postcss-colormin": "^6.1.0", - "postcss-convert-values": "^6.1.0", - "postcss-discard-comments": "^6.0.2", - "postcss-discard-duplicates": "^6.0.3", - "postcss-discard-empty": "^6.0.3", - "postcss-discard-overridden": "^6.0.2", - "postcss-merge-longhand": "^6.0.5", - "postcss-merge-rules": "^6.1.1", - "postcss-minify-font-values": "^6.1.0", - "postcss-minify-gradients": "^6.0.3", - "postcss-minify-params": "^6.1.0", - "postcss-minify-selectors": "^6.0.4", - "postcss-normalize-charset": "^6.0.2", - "postcss-normalize-display-values": "^6.0.2", - "postcss-normalize-positions": "^6.0.2", - "postcss-normalize-repeat-style": "^6.0.2", - "postcss-normalize-string": "^6.0.2", - "postcss-normalize-timing-functions": "^6.0.2", - "postcss-normalize-unicode": "^6.1.0", - "postcss-normalize-url": "^6.0.2", - "postcss-normalize-whitespace": "^6.0.2", - "postcss-ordered-values": "^6.0.2", - "postcss-reduce-initial": "^6.1.0", - "postcss-reduce-transforms": "^6.0.2", - "postcss-svgo": "^6.0.3", - "postcss-unique-selectors": "^6.0.4" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cssnano-utils": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz", - "integrity": "sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==", + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, "engines": { - "node": "^14 || ^16 || >=18.0" + "node": ">= 0.4" }, - "peerDependencies": { - "postcss": "^8.4.31" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, - "dependencies": { - "css-tree": "~2.2.0" - }, - "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", - "npm": ">=7.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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/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, - "dependencies": { - "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": ">=6.9.0" } }, - "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/cssstyle": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.0.1.tgz", - "integrity": "sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==", + "node_modules/get-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", "dev": true, - "dependencies": { - "rrweb-cssom": "^0.6.0" - }, "engines": { - "node": ">=18" + "node": "*" } }, - "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "dev": true - }, - "node_modules/data-urls": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", - "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", + "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": { - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0" + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" }, - "engines": { - "node": ">=18" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/data-urls/node_modules/whatwg-mimetype": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", - "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", - "dev": true, + "node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", "engines": { - "node": ">=18" + "node": ">=4" } }, - "node_modules/db0": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/db0/-/db0-0.1.4.tgz", - "integrity": "sha512-Ft6eCwONYxlwLjBXSJxw0t0RYtA5gW9mq8JfBXn9TtC0nDPlqePAhpv9v4g9aONBi6JI1OXHTKKkUYGd+BOrCA==", + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dev": true, - "peerDependencies": { - "@libsql/client": "^0.5.2", - "better-sqlite3": "^9.4.3", - "drizzle-orm": "^0.29.4" + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" }, - "peerDependenciesMeta": { - "@libsql/client": { - "optional": true - }, - "better-sqlite3": { - "optional": true - }, - "drizzle-orm": { - "optional": true - } + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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/get-tsconfig": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", + "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", "dev": true, "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" + "resolve-pkg-maps": "^1.0.0" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" } }, - "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "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==", + "dependencies": { + "is-ssh": "^1.4.0", + "parse-url": "^8.1.0" + } }, - "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/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==", + "dependencies": { + "git-up": "^7.0.0" + } + }, + "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==" + }, + "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": { - "character-entities": "^2.0.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 >=14.17" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/deep-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", + "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, "dependencies": { - "type-detect": "^4.0.0" + "is-glob": "^4.0.3" }, "engines": { - "node": ">=6" + "node": ">=10.13.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==", - "dev": 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==", + "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, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "balanced-match": "^1.0.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/glob/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": { - "bundle-name": "^3.0.0", - "default-browser-id": "^3.0.0", - "execa": "^7.1.1", - "titleize": "^3.0.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=14.16" + "node": ">=16 || 14 >=14.17" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/isaacs" } }, - "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/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { - "bplist-parser": "^0.2.0", - "untildify": "^4.0.0" + "type-fest": "^0.20.2" }, "engines": { - "node": ">=12" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "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/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", "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" + "define-properties": "^1.1.3" }, "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/default-browser/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/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, "engines": { "node": ">=10" }, @@ -6087,6397 +5181,3280 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "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/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "dev": true, - "engines": { - "node": ">=14.18.0" + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/default-browser/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==", + "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==" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, - "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, + "node_modules/gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", "dependencies": { - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=6.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==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/gray-matter/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" } }, - "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, + "node_modules/gray-matter/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/defu": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", - "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==", - "dev": true - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", "dev": true, - "engines": { - "node": ">=0.4.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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/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": ">=0.10" + "node": ">=8" } }, - "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/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, - "engines": { - "node": ">= 0.8" + "dependencies": { + "get-intrinsic": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "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/destr": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.3.tgz", - "integrity": "sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==", - "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/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.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "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, + "node": ">= 0.4" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/ljharb" } }, - "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/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, - "bin": { - "detect-libc": "bin/detect-libc.js" + "dependencies": { + "has-symbols": "^1.0.2" }, "engines": { - "node": ">=0.10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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, + "node_modules/hash-obj": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/hash-obj/-/hash-obj-4.0.0.tgz", + "integrity": "sha512-FwO1BUVWkyHasWDW4S8o0ssQXjvyghLV2rfVhnN36b2bbcj45eGiuzdn9XOvOpjV3TKQD7Gm2BWNXdE9V4KKYg==", "dependencies": { - "dequal": "^2.0.0" + "is-obj": "^3.0.0", + "sort-keys": "^5.0.0", + "type-fest": "^1.0.2" + }, + "engines": { + "node": ">=12" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/sindresorhus" } }, - "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, + "node_modules/hash-obj/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", "engines": { - "node": ">=0.3.1" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/diff-sequences": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", - "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "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": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" } }, - "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, + "node_modules/hast-util-from-dom": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/hast-util-from-dom/-/hast-util-from-dom-5.0.0.tgz", + "integrity": "sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg==", "dependencies": { - "path-type": "^4.0.0" + "@types/hast": "^3.0.0", + "hastscript": "^8.0.0", + "web-namespaces": "^2.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/dir-glob/node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/hast-util-from-dom/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "dependencies": { + "@types/unist": "*" } }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, + "node_modules/hast-util-from-html": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-from-html/-/hast-util-from-html-2.0.1.tgz", + "integrity": "sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==", "dependencies": { - "esutils": "^2.0.2" + "@types/hast": "^3.0.0", + "devlop": "^1.1.0", + "hast-util-from-parse5": "^8.0.0", + "parse5": "^7.0.0", + "vfile": "^6.0.0", + "vfile-message": "^4.0.0" }, - "engines": { - "node": ">=6.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/dom-serializer": { + "node_modules/hast-util-from-html-isomorphic": { "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, + "resolved": "https://registry.npmjs.org/hast-util-from-html-isomorphic/-/hast-util-from-html-isomorphic-2.0.0.tgz", + "integrity": "sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==", "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" + "@types/hast": "^3.0.0", + "hast-util-from-dom": "^5.0.0", + "hast-util-from-html": "^2.0.0", + "unist-util-remove-position": "^5.0.0" }, "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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/hast-util-from-html-isomorphic/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "dependencies": { + "@types/unist": "*" + } }, - "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, + "node_modules/hast-util-from-html/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", "dependencies": { - "domelementtype": "^2.3.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" + "@types/unist": "*" } }, - "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, + "node_modules/hast-util-from-html/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/hast-util-from-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==", "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" + "@types/unist": "^3.0.0" }, "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/hast-util-from-html/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", "dependencies": { - "type-fest": "^3.8.0" - }, - "engines": { - "node": ">=16" + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, - "engines": { - "node": ">=14.16" + "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==", + "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": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/dotenv": { - "version": "16.4.5", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", - "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" + "node_modules/hast-util-from-parse5/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "dependencies": { + "@types/unist": "*" } }, - "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/hast-util-from-parse5/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" }, - "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/editorconfig": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-1.0.4.tgz", - "integrity": "sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==", - "dev": true, + "node_modules/hast-util-from-parse5/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==", "dependencies": { - "@one-ini/wasm": "0.1.1", - "commander": "^10.0.0", - "minimatch": "9.0.1", - "semver": "^7.5.3" - }, - "bin": { - "editorconfig": "bin/editorconfig" + "@types/unist": "^3.0.0" }, - "engines": { - "node": ">=14" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/editorconfig/node_modules/minimatch": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz", - "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==", - "dev": true, + "node_modules/hast-util-from-parse5/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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/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==", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/electron-to-chromium": { - "version": "1.4.726", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.726.tgz", - "integrity": "sha512-xtjfBXn53RORwkbyKvDfTajtnTp0OJoPOIBzXvkNbb7+YYvCHJflba3L7Txyx/6Fov3ov2bGPr/n5MTixmPhdQ==", - "dev": true + "node_modules/hast-util-is-element/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "dependencies": { + "@types/unist": "*" + } }, - "node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true + "node_modules/hast-util-parse-selector": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", + "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "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/hast-util-parse-selector/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "dependencies": { + "@types/unist": "*" + } }, - "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, + "node_modules/hast-util-raw": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.2.tgz", + "integrity": "sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA==", + "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": "github", - "url": "https://github.com/sponsors/wooorm" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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": ">= 0.8" + "node_modules/hast-util-raw/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "dependencies": { + "@types/unist": "*" } }, - "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, + "node_modules/hast-util-raw/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/hast-util-raw/node_modules/unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", "dependencies": { - "iconv-lite": "^0.6.2" + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/engine.io-client": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.4.tgz", - "integrity": "sha512-GeZeeRjpD2qf49cZQ0Wvh/8NJNfeXkXXcoGh+F77oEAgo9gUHwT1fCRxSNU+YEEaysOJTnsFHmM5oAcPy4ntvQ==", - "dev": true, + "node_modules/hast-util-raw/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==", "dependencies": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1", - "engine.io-parser": "~5.2.1", - "ws": "~8.17.1", - "xmlhttprequest-ssl": "~2.0.0" + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, - "engines": { - "node": ">=10.0.0" + "node_modules/hast-util-raw/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "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/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, + "node_modules/hast-util-to-estree": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-2.3.3.tgz", + "integrity": "sha512-ihhPIUPxN0v0w6M5+IiAZZrn0LH2uZomeWwhn7uP7avZC6TE7lIiEh2yBMPr5+zi1aUCXq6VoYRgs2Bw9xmycQ==", "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" + "@types/estree": "^1.0.0", + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^2.0.0", + "@types/unist": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "estree-util-attach-comments": "^2.0.0", + "estree-util-is-identifier-name": "^2.0.0", + "hast-util-whitespace": "^2.0.0", + "mdast-util-mdx-expression": "^1.0.0", + "mdast-util-mdxjs-esm": "^1.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-object": "^0.4.1", + "unist-util-position": "^4.0.0", + "zwitch": "^2.0.0" }, - "engines": { - "node": ">=10.13.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true, - "engines": { - "node": ">=0.12" + "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==", + "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/fb55/entities?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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/hast-util-to-parse5/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "dependencies": { + "@types/unist": "*" } }, - "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/errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "dev": true, - "optional": true, + "node_modules/hast-util-to-text": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.0.tgz", + "integrity": "sha512-EWiE1FSArNBPUo1cKWtzqgnuRQwEeQbQtnFJRYV1hb1BWDgrAlBU0ExptvZMM/KSA82cDpm2sFGf3Dmc5Mza3w==", "dependencies": { - "prr": "~1.0.1" + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "hast-util-is-element": "^3.0.0", + "unist-util-find-after": "^5.0.0" }, - "bin": { - "errno": "cli.js" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, + "node_modules/hast-util-to-text/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", "dependencies": { - "is-arrayish": "^0.2.1" + "@types/unist": "*" } }, - "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, + "node_modules/hast-util-to-text/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/hast-util-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", + "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==", "funding": { - "url": "https://github.com/sponsors/antfu" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/es-abstract": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", - "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", + "node_modules/hastscript": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-8.0.0.tgz", + "integrity": "sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==", + "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" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hastscript/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/heap": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz", + "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==" + }, + "node_modules/html-encoding-sniffer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", + "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", "dev": true, "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.2", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.5", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.2", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.12", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "safe-array-concat": "^1.0.1", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.8", - "string.prototype.trimend": "^1.0.7", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.13" + "whatwg-encoding": "^3.1.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=18" } }, - "node_modules/es-set-tostringtag": { + "node_modules/html-escaper": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", - "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "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==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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": { - "get-intrinsic": "^1.2.2", - "has-tostringtag": "^1.0.0", - "hasown": "^2.0.0" + "agent-base": "^7.1.0", + "debug": "^4.3.4" }, "engines": { - "node": ">= 0.4" + "node": ">= 14" } }, - "node_modules/es-shim-unscopables": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", - "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "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": { - "hasown": "^2.0.0" + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" } }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", "dev": true, - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=16.17.0" } }, - "node_modules/esbuild": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", - "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" + "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==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" }, "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.20.2", - "@esbuild/android-arm": "0.20.2", - "@esbuild/android-arm64": "0.20.2", - "@esbuild/android-x64": "0.20.2", - "@esbuild/darwin-arm64": "0.20.2", - "@esbuild/darwin-x64": "0.20.2", - "@esbuild/freebsd-arm64": "0.20.2", - "@esbuild/freebsd-x64": "0.20.2", - "@esbuild/linux-arm": "0.20.2", - "@esbuild/linux-arm64": "0.20.2", - "@esbuild/linux-ia32": "0.20.2", - "@esbuild/linux-loong64": "0.20.2", - "@esbuild/linux-mips64el": "0.20.2", - "@esbuild/linux-ppc64": "0.20.2", - "@esbuild/linux-riscv64": "0.20.2", - "@esbuild/linux-s390x": "0.20.2", - "@esbuild/linux-x64": "0.20.2", - "@esbuild/netbsd-x64": "0.20.2", - "@esbuild/openbsd-x64": "0.20.2", - "@esbuild/sunos-x64": "0.20.2", - "@esbuild/win32-arm64": "0.20.2", - "@esbuild/win32-ia32": "0.20.2", - "@esbuild/win32-x64": "0.20.2" + "node": ">=0.10.0" } }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "node_modules/ignore": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", + "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 4" } }, - "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/immutable": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==" }, - "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/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, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", - "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.0", - "@humanwhocodes/config-array": "^0.11.14", - "@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": { - "eslint": "bin/eslint.js" - }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=0.8.19" } }, - "node_modules/eslint-config-prettier": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", - "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", + "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, - "bin": { - "eslint-config-prettier": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=7.0.0" + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/eslint-config-standard": { - "version": "17.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.1.0.tgz", - "integrity": "sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q==", + "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/inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, + "node_modules/internal-slot": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", + "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", "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": ">=12.0.0" + "dependencies": { + "get-intrinsic": "^1.2.2", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" }, - "peerDependencies": { - "eslint": "^8.0.1", - "eslint-plugin-import": "^2.25.2", - "eslint-plugin-n": "^15.0.0 || ^16.0.0 ", - "eslint-plugin-promise": "^6.0.0" + "engines": { + "node": ">= 0.4" } }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" + "node_modules/internmap": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", + "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", + "engines": { + "node": ">=12" } }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" + "node_modules/intersection-observer": { + "version": "0.12.2", + "resolved": "https://registry.npmjs.org/intersection-observer/-/intersection-observer-0.12.2.tgz", + "integrity": "sha512-7m1vEcPCxXYI8HqnL8CKI6siDyD+eIWSwgB3DZA+ZTogxk9I4CDnj4wilt9x/+/QbHI4YG5YZNmC6458/e9Ktg==" + }, + "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==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/eslint-import-resolver-typescript": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz", - "integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==", - "dev": true, + "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==", "dependencies": { - "debug": "^4.3.4", - "enhanced-resolve": "^5.12.0", - "eslint-module-utils": "^2.7.4", - "fast-glob": "^3.3.1", - "get-tsconfig": "^4.5.0", - "is-core-module": "^2.11.0", - "is-glob": "^4.0.3" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" + "is-alphabetical": "^2.0.0", + "is-decimal": "^2.0.0" }, "funding": { - "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" - }, - "peerDependencies": { - "eslint": "*", - "eslint-plugin-import": "*" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "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": { - "debug": "^3.2.7" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=4" + "node": ">= 0.4" }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", "dev": true, "dependencies": { - "ms": "^2.1.1" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-es": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz", - "integrity": "sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==", + "node_modules/is-async-function": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", + "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", "dev": true, "dependencies": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=8.10.0" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" }, - "peerDependencies": { - "eslint": ">=4.19.1" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-es/node_modules/eslint-utils": { + "node_modules/is-binary-path": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=6" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-es/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, + "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==", + "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/eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "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": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", - "semver": "^6.3.1", - "tsconfig-paths": "^3.15.0" - }, "engines": { - "node": ">=4" + "node": ">= 0.4" }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-import/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/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": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, "dependencies": { - "ms": "^2.1.1" + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, + "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==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", "engines": { "node": ">=0.10.0" } }, - "node_modules/eslint-plugin-import/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/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", + "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "call-bind": "^1.0.2" }, - "engines": { - "node": "*" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-import/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "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==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "engines": { + "node": ">=8" } }, - "node_modules/eslint-plugin-n": { - "version": "15.7.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.7.0.tgz", - "integrity": "sha512-jDex9s7D/Qial8AGVIHq4W7NswpUD5DPDL2RH8Lzd9EloWUuvUkHfv4FRLMipH5q2UtyurorBkPeNi1wVWNh3Q==", + "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": { - "builtins": "^5.0.1", - "eslint-plugin-es": "^4.1.0", - "eslint-utils": "^3.0.0", - "ignore": "^5.1.1", - "is-core-module": "^2.11.0", - "minimatch": "^3.1.2", - "resolve": "^1.22.1", - "semver": "^7.3.8" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=12.22.0" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=7.0.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-n/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, + "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==", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/eslint-plugin-n/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/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==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", "dev": true, - "dependencies": { - "eslint-plugin-es": "^3.0.0", - "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" - }, "engines": { - "node": ">=8.10.0" + "node": ">= 0.4" }, - "peerDependencies": { - "eslint": ">=5.16.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-node/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/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "license": "MIT", + "engines": { + "node": ">=0.12.0" } }, - "node_modules/eslint-plugin-node/node_modules/eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, "dependencies": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=8.10.0" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=4.19.1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-node/node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, + "node_modules/is-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-3.0.0.tgz", + "integrity": "sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ==", "engines": { - "node": ">=6" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-plugin-node/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "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, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/eslint-plugin-node/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" - }, + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", "engines": { - "node": "*" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-plugin-node/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, - "bin": { - "semver": "bin/semver.js" + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true + }, + "node_modules/is-reference": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz", + "integrity": "sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==", + "dependencies": { + "@types/estree": "*" } }, - "node_modules/eslint-plugin-prettier": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.3.tgz", - "integrity": "sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==", + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, "dependencies": { - "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.8.6" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^14.18.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://opencollective.com/eslint-plugin-prettier" - }, - "peerDependencies": { - "@types/eslint": ">=8.0.0", - "eslint": ">=8.0.0", - "eslint-config-prettier": "*", - "prettier": ">=3.0.0" - }, - "peerDependenciesMeta": { - "@types/eslint": { - "optional": true - }, - "eslint-config-prettier": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-promise": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.1.1.tgz", - "integrity": "sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==", + "node_modules/is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-unicorn": { - "version": "44.0.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-44.0.2.tgz", - "integrity": "sha512-GLIDX1wmeEqpGaKcnMcqRvMVsoabeF0Ton0EX4Th5u6Kmf7RM9WBl705AXFEsns56ESkEs0uyelLuUTvz9Tr0w==", + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.19.1", - "ci-info": "^3.4.0", - "clean-regexp": "^1.0.0", - "eslint-utils": "^3.0.0", - "esquery": "^1.4.0", - "indent-string": "^4.0.0", - "is-builtin-module": "^3.2.0", - "lodash": "^4.17.21", - "pluralize": "^8.0.0", - "read-pkg-up": "^7.0.1", - "regexp-tree": "^0.1.24", - "safe-regex": "^2.1.1", - "semver": "^7.3.7", - "strip-indent": "^3.0.0" - }, - "engines": { - "node": ">=14.18" + "call-bind": "^1.0.2" }, "funding": { - "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" - }, - "peerDependencies": { - "eslint": ">=8.23.1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-vitest": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-vitest/-/eslint-plugin-vitest-0.5.4.tgz", - "integrity": "sha512-um+odCkccAHU53WdKAw39MY61+1x990uXjSPguUCq3VcEHdqJrOb8OTMrbYlY6f9jAKx7x98kLVlIe3RJeJqoQ==", - "dev": true, + "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==", "dependencies": { - "@typescript-eslint/utils": "^7.7.1" - }, + "protocols": "^2.0.1" + } + }, + "node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", "engines": { - "node": "^18.0.0 || >= 20.0.0" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "vitest": "*" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "vitest": { - "optional": true - } + "node": ">=0.10.0" } }, - "node_modules/eslint-plugin-vitest/node_modules/@typescript-eslint/scope-manager": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.8.0.tgz", - "integrity": "sha512-viEmZ1LmwsGcnr85gIq+FCYI7nO90DVbE37/ll51hjv9aG+YZMb4WDE2fyWpUR4O/UrhGRpYXK/XajcGTk2B8g==", + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.8.0", - "@typescript-eslint/visitor-keys": "7.8.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^18.18.0 || >=20.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-vitest/node_modules/@typescript-eslint/types": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.8.0.tgz", - "integrity": "sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw==", + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, "engines": { - "node": "^18.18.0 || >=20.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-vitest/node_modules/@typescript-eslint/typescript-estree": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.8.0.tgz", - "integrity": "sha512-5pfUCOwK5yjPaJQNy44prjCwtr981dO8Qo9J9PwYXZ0MosgAbfEMB008dJ5sNo3+/BN6ytBPuSvXUg9SAqB0dg==", + "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": { - "@typescript-eslint/types": "7.8.0", - "@typescript-eslint/visitor-keys": "7.8.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" + "which-typed-array": "^1.1.11" }, "engines": { - "node": "^18.18.0 || >=20.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-vitest/node_modules/@typescript-eslint/utils": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.8.0.tgz", - "integrity": "sha512-L0yFqOCflVqXxiZyXrDr80lnahQfSOfc9ELAAZ75sqicqp2i36kEZZGuUymHNFoYOqxRT05up760b4iGsl02nQ==", + "node_modules/is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.15", - "@types/semver": "^7.5.8", - "@typescript-eslint/scope-manager": "7.8.0", - "@typescript-eslint/types": "7.8.0", - "@typescript-eslint/typescript-estree": "7.8.0", - "semver": "^7.6.0" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-vitest/node_modules/@typescript-eslint/visitor-keys": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.8.0.tgz", - "integrity": "sha512-q4/gibTNBQNA0lGyYQCmWRS5D15n8rXh4QjK3KV+MBPlTYHpfBUT3D3PaPR/HeNiI9W6R7FvlkcGhNyAoP+caA==", + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.8.0", - "eslint-visitor-keys": "^3.4.3" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" + "call-bind": "^1.0.2" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-vitest/node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "node_modules/is-weakset": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", "dev": true, "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-vitest/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true }, - "node_modules/eslint-plugin-vitest/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/eslint-plugin-vue": { - "version": "9.20.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.20.1.tgz", - "integrity": "sha512-GyCs8K3lkEvoyC1VV97GJhP1SvqsKCiWGHnbn0gVUYiUhaH2+nB+Dv1uekv1THFMPbBfYxukrzQdltw950k+LQ==", + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "natural-compare": "^1.4.0", - "nth-check": "^2.1.1", - "postcss-selector-parser": "^6.0.13", - "semver": "^7.5.4", - "vue-eslint-parser": "^9.4.0", - "xml-name-validator": "^4.0.0" + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" }, "engines": { - "node": "^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0" + "node": ">=10" } }, - "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==", + "node_modules/istanbul-lib-source-maps": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.4.tgz", + "integrity": "sha512-wHOoEsNJTVltaJp8eVkm8w+GVkVNHT2YDYo53YdzQEL2gWm1hBX5cGFR9hQJtuGLebidVX7et3+dmDZrmclduw==", "dev": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" + "@jridgewell/trace-mapping": "^0.3.23", + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=10" } }, - "node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "node_modules/istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", "dev": true, "dependencies": { - "eslint-visitor-keys": "^2.0.0" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" }, "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" + "node": ">=8" } }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "node_modules/iterator.prototype": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", + "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "define-properties": "^1.2.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "reflect.getprototypeof": "^1.0.4", + "set-function-name": "^2.0.1" } }, - "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==", + "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": { + "@isaacs/cliui": "^8.0.2" + }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=14" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, - "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==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } + "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==" }, - "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, + "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==", "dependencies": { - "is-glob": "^4.0.3" + "argparse": "^2.0.1" }, - "engines": { - "node": ">=10.13.0" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "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==", + "node_modules/jsdom": { + "version": "24.0.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.0.0.tgz", + "integrity": "sha512-UDS2NayCvmXSXVP6mpTj+73JnNQadZlr9N68189xib2tx5Mls7swlTNao26IoHv46BZJFvXygyRtyXd1feAk1A==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "cssstyle": "^4.0.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.2", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.7", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.6.0", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.3", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.16.0", + "xml-name-validator": "^5.0.0" }, "engines": { - "node": "*" + "node": ">=18" + }, + "peerDependencies": { + "canvas": "^2.11.2" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } } }, - "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==", + "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": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" + "bin": { + "jsesc": "bin/jsesc" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=4" } }, - "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/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 + }, + "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 + }, + "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 + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", "dev": true, "dependencies": { - "estraverse": "^5.1.0" + "minimist": "^1.2.0" }, - "engines": { - "node": ">=0.10" + "bin": { + "json5": "lib/cli.js" } }, - "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/jsonc-parser": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz", + "integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==" + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", "dev": true, "dependencies": { - "estraverse": "^5.2.0" + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" }, "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, - "engines": { - "node": ">=4.0" + "node_modules/katex": { + "version": "0.16.10", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.10.tgz", + "integrity": "sha512-ZiqaC04tp2O5utMsl2TEZTXxa6WSC4yo0fv5ML++D3QZv/vx2Mct0mTlRx3O+uUkjfuAgOkzsCmq5MiUEsDDdA==", + "funding": [ + "https://opencollective.com/katex", + "https://github.com/sponsors/katex" + ], + "dependencies": { + "commander": "^8.3.0" + }, + "bin": { + "katex": "cli.js" } }, - "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/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, "dependencies": { - "@types/estree": "^1.0.0" + "json-buffer": "3.0.1" } }, - "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, + "node_modules/khroma": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/khroma/-/khroma-2.1.0.tgz", + "integrity": "sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==" + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "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" - } - }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "dev": true, + "node_modules/kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", "engines": { "node": ">=6" } }, - "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, - "engines": { - "node": ">=0.8.x" - } + "node_modules/language-subtag-registry": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", + "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", + "dev": true }, - "node_modules/execa": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", - "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "node_modules/language-tags": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", + "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^8.0.1", - "human-signals": "^5.0.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^4.1.0", - "strip-final-newline": "^3.0.0" + "language-subtag-registry": "^0.3.20" }, "engines": { - "node": ">=16.17" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "node": ">=0.10" } }, - "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": { + "node_modules/layout-base": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/externality/-/externality-1.0.2.tgz", - "integrity": "sha512-LyExtJWKxtgVzmgtEHyQtLFpw1KFhQphF9nTG8TpAIVkiI/xQ3FJh75tRFLYl4hkn7BNIIdLJInuDAavX35pMw==", + "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-1.0.2.tgz", + "integrity": "sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==" + }, + "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, "dependencies": { - "enhanced-resolve": "^5.14.1", - "mlly": "^1.3.0", - "pathe": "^1.1.1", - "ufo": "^1.1.2" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/fake-indexeddb": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/fake-indexeddb/-/fake-indexeddb-5.0.2.tgz", - "integrity": "sha512-cB507r5T3D55DfclY01GLkninZLfU7HXV/mhVRTnTRm5k2u+fY7Fof2dBkr80p5t7G7dlA/G5dI87QiMdPpMCQ==", + "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": { + "mlly": "^1.4.2", + "pkg-types": "^1.0.3" + }, "engines": { - "node": ">=18" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "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-diff": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", - "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", - "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==", + "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, "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" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=8.6.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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 + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "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/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + }, + "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 }, - "node_modules/fastq": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", - "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" + "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==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "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, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dependencies": { - "flat-cache": "^3.0.4" + "js-tokens": "^3.0.0 || ^4.0.0" }, - "engines": { - "node": "^10.12.0 || >=12.0.0" + "bin": { + "loose-envify": "cli.js" } }, - "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.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "node_modules/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", "dev": true, - "license": "MIT", "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" + "get-func-name": "^2.0.1" } }, - "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/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "14 || >=16.14" } }, - "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/lz-string": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz", + "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==", "dev": true, "bin": { - "flat": "cli.js" + "lz-string": "bin/bin.js" } }, - "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "node_modules/magic-string": { + "version": "0.30.10", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", + "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", "dev": true, "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" + "@jridgewell/sourcemap-codec": "^1.4.15" } }, - "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/for-each": { + "node_modules/magicast": { "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.3.tgz", + "integrity": "sha512-ZbrP1Qxnpoes8sz47AM0z08U+jW6TyRgZzcWy3Ma3vDhJttwMwAFDMMQFobwdBxByBD46JYmxRzeF7w2+wJEuw==", "dev": true, "dependencies": { - "is-callable": "^1.1.3" + "@babel/parser": "^7.23.6", + "@babel/types": "^7.23.6", + "source-map-js": "^1.0.2" } }, - "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/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" + "semver": "^7.5.3" }, "engines": { - "node": ">=14" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, + "node_modules/markdown-extensions": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-1.1.1.tgz", + "integrity": "sha512-WWC0ZuMzCyDHYCasEGs4IPvLyTGftYwh6wIEOULOF0HXcqZlhwRzrK0w2VUlxWA98xnvb/jszw4ZSkJ6ADpM6Q==", "engines": { - "node": ">= 6" + "node": ">=0.10.0" } }, - "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": "*" - }, + "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==", "funding": { - "type": "patreon", - "url": "https://github.com/sponsors/rawify" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "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": ">= 0.6" + "node_modules/match-sorter": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.3.tgz", + "integrity": "sha512-sgiXxrRijEe0SzHKGX4HouCpfHRPnqteH42UdMEW7BlWy990ZkzcvonJGv4Uu9WE7Y1f8Yocm91+4qFPCbmNww==", + "dependencies": { + "@babel/runtime": "^7.23.8", + "remove-accents": "0.5.0" } }, - "node_modules/fs-extra": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", - "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", - "dev": true, + "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==", "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "unist-util-visit": "^4.0.0" }, - "engines": { - "node": ">=14.14" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, + "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==", "dependencies": { - "minipass": "^7.0.3" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "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, + "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==", + "dependencies": { + "@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/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", - "dev": true, + "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==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" + "@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/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==", "engines": { - "node": ">= 0.4" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, + "node_modules/mdast-util-find-and-replace/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==", + "dependencies": { + "@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/gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "dev": true, + "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==", "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" + "@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" }, - "engines": { - "node": ">=10" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/gauge/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/gauge/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/gauge/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, + "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==", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "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/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, - "engines": { - "node": ">=6.9.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==", + "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" } }, - "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/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==", + "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" } }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, - "engines": { - "node": "*" + "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==", + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-to-markdown": "^1.3.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, + "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==", "dependencies": { - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "@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": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/get-port-please": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-3.1.2.tgz", - "integrity": "sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==", - "dev": true - }, - "node_modules/get-stream": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", - "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", - "dev": true, - "engines": { - "node": ">=16" + "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==", + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-to-markdown": "^1.3.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, + "node_modules/mdast-util-math": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-2.0.2.tgz", + "integrity": "sha512-8gmkKVp9v6+Tgjtq6SYx9kGPpTf6FVYRa53/DLh479aldR9AyP48qeVOgNZ5X7QUK7nOy4yw7vg6mbiGcs9jWQ==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "@types/mdast": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-to-markdown": "^1.3.0" }, - "engines": { - "node": ">= 0.4" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdx": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-2.0.1.tgz", + "integrity": "sha512-38w5y+r8nyKlGvNjSEqWrhG0w5PmnRA+wnBvm+ulYCct7nsGYhFVb0lljS9bQav4psDAS1eGkP2LMVcZBi/aqw==", + "dependencies": { + "mdast-util-from-markdown": "^1.0.0", + "mdast-util-mdx-expression": "^1.0.0", + "mdast-util-mdx-jsx": "^2.0.0", + "mdast-util-mdxjs-esm": "^1.0.0", + "mdast-util-to-markdown": "^1.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/get-tsconfig": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", - "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", - "dev": true, + "node_modules/mdast-util-mdx-expression": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-1.3.2.tgz", + "integrity": "sha512-xIPmR5ReJDu/DHH1OoIT1HkuybIfRGYRywC+gJtI7qHjCJp/M9jrmBEJW22O8lskDWm562BX2W8TiAwRTb0rKA==", "dependencies": { - "resolve-pkg-maps": "^1.0.0" + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "mdast-util-from-markdown": "^1.0.0", + "mdast-util-to-markdown": "^1.0.0" }, "funding": { - "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/giget": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/giget/-/giget-1.2.1.tgz", - "integrity": "sha512-4VG22mopWtIeHwogGSy1FViXVo0YT+m6BrqZfz0JJFwbSsePsCdOzdLIIli5BtMp7Xe8f/o2OmBpQX2NBOC24g==", - "dev": true, + "node_modules/mdast-util-mdx-jsx": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-2.1.4.tgz", + "integrity": "sha512-DtMn9CmVhVzZx3f+optVDF8yFgQVt7FghCRNdlIaS3X5Bnym3hZwPbg/XW86vdpKjlc1PVj26SpnLGeJBXD3JA==", "dependencies": { - "citty": "^0.1.5", - "consola": "^3.2.3", - "defu": "^6.1.3", - "node-fetch-native": "^1.6.1", - "nypm": "^0.3.3", - "ohash": "^1.1.3", - "pathe": "^1.1.1", - "tar": "^6.2.0" + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "ccount": "^2.0.0", + "mdast-util-from-markdown": "^1.1.0", + "mdast-util-to-markdown": "^1.3.0", + "parse-entities": "^4.0.0", + "stringify-entities": "^4.0.0", + "unist-util-remove-position": "^4.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" }, - "bin": { - "giget": "dist/cli.mjs" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, - "engines": { - "node": ">=4" + "node_modules/mdast-util-mdx-jsx/node_modules/unist-util-remove-position": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-4.0.2.tgz", + "integrity": "sha512-TkBb0HABNmxzAcfLf4qsIbFbaPDvMO6wa3b3j4VcEzFVaw1LBKwnW4/sRJ/atSLSzoIg41JWEdnE7N6DIhGDGQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-visit": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/mdast-util-mdx-jsx/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==", "dependencies": { - "is-ssh": "^1.4.0", - "parse-url": "^8.1.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/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, + "node_modules/mdast-util-mdx-jsx/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==", "dependencies": { - "git-up": "^7.0.0" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, + "node_modules/mdast-util-mdx-jsx/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", "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" + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/mdast-util-mdxjs-esm": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-1.3.1.tgz", + "integrity": "sha512-SXqglS0HrEvSdUEfoXFtcg7DRl7S2cwOXc7jkuusG472Mmjag34DUDeOJUZtl+BVnyeO1frIgVpHlNRWc2gk/w==", "dependencies": { - "is-glob": "^4.0.1" + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "mdast-util-from-markdown": "^1.0.0", + "mdast-util-to-markdown": "^1.0.0" }, - "engines": { - "node": ">= 6" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/global-directory": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/global-directory/-/global-directory-4.0.1.tgz", - "integrity": "sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==", - "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==", "dependencies": { - "ini": "4.1.1" + "@types/mdast": "^3.0.0", + "unist-util-is": "^5.0.0" }, - "engines": { - "node": ">=18" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.1.0.tgz", + "integrity": "sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==", + "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", + "vfile": "^6.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/global-directory/node_modules/ini": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", - "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node_modules/mdast-util-to-hast/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", + "dependencies": { + "@types/unist": "*" } }, - "node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, + "node_modules/mdast-util-to-hast/node_modules/@types/mdast": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.3.tgz", + "integrity": "sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==", "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" + "@types/unist": "*" + } + }, + "node_modules/mdast-util-to-hast/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "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==", + "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/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==", + "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-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==", + "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/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==", + "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-types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", + "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", + "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/unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "dependencies": { + "@types/unist": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, + "node_modules/mdast-util-to-hast/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==", "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" + "@types/unist": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/globby": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.1.tgz", - "integrity": "sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==", - "dev": true, + "node_modules/mdast-util-to-hast/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", "dependencies": { - "@sindresorhus/merge-streams": "^2.1.0", - "fast-glob": "^3.3.2", - "ignore": "^5.2.4", - "path-type": "^5.0.0", - "slash": "^5.1.0", - "unicorn-magic": "^0.1.0" - }, - "engines": { - "node": ">=18" + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, + "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==", "dependencies": { - "get-intrinsic": "^1.1.3" + "@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": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": 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, + "node_modules/mdast-util-to-markdown/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==", "dependencies": { - "duplexer": "^0.1.2" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/h3": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/h3/-/h3-1.11.1.tgz", - "integrity": "sha512-AbaH6IDnZN6nmbnJOH72y3c5Wwh9P97soSVdGSBbcDACRdkC0FEWf25pzx4f/NuOCK6quHmW18yF2Wx+G4Zi1A==", - "dev": true, + "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==", "dependencies": { - "cookie-es": "^1.0.0", - "crossws": "^0.2.2", - "defu": "^6.1.4", - "destr": "^2.0.3", - "iron-webcrypto": "^1.0.0", - "ohash": "^1.1.3", - "radix3": "^1.1.0", - "ufo": "^1.4.0", - "uncrypto": "^0.1.3", - "unenv": "^1.9.0" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/happy-dom": { - "version": "12.10.3", - "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-12.10.3.tgz", - "integrity": "sha512-JzUXOh0wdNGY54oKng5hliuBkq/+aT1V3YpTM+lrN/GoLQTANZsMaIvmHiHe612rauHvPJnDZkZ+5GZR++1Abg==", - "dev": true, + "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==", "dependencies": { - "css.escape": "^1.5.1", - "entities": "^4.5.0", - "iconv-lite": "^0.6.3", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^2.0.0", - "whatwg-mimetype": "^3.0.0" + "@types/mdast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "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/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/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": ">= 8" } }, - "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, + "node_modules/mermaid": { + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.7.0.tgz", + "integrity": "sha512-PsvGupPCkN1vemAAjScyw4pw34p4/0dZkSrqvAB26hUvJulOWGIwt35FZWmT9wPIi4r0QLa5X0PB4YLIGn0/YQ==", + "dependencies": { + "@braintree/sanitize-url": "^6.0.1", + "@types/d3-scale": "^4.0.3", + "@types/d3-scale-chromatic": "^3.0.0", + "cytoscape": "^3.23.0", + "cytoscape-cose-bilkent": "^4.1.0", + "cytoscape-fcose": "^2.1.0", + "d3": "^7.4.0", + "d3-sankey": "^0.12.3", + "dagre-d3-es": "7.0.10", + "dayjs": "^1.11.7", + "dompurify": "^3.0.5", + "elkjs": "^0.9.0", + "khroma": "^2.0.0", + "lodash-es": "^4.17.21", + "mdast-util-from-markdown": "^1.3.0", + "non-layered-tidy-tree-layout": "^2.0.2", + "stylis": "^4.1.3", + "ts-dedent": "^2.2.0", + "uuid": "^9.0.0", + "web-worker": "^1.2.0" + } + }, + "node_modules/micromark": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.2.0.tgz", + "integrity": "sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "get-intrinsic": "^1.2.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@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/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": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "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==", + "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/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" + "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==", + "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": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, + "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==", "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" + "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" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, + "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==", "dependencies": { - "function-bind": "^1.1.2" + "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": ">= 0.4" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.7.tgz", + "integrity": "sha512-sX0FawVE1o3abGk3vRjOH50L5TTLr3b5XMqnP9YDRb34M0v5OoZhG+OHFz1OffZ9dlwgpTBKaT4XW/AsUVnSDw==", "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" + "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/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, + "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==", "dependencies": { - "@types/hast": "^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/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, + "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==", "dependencies": { - "@types/hast": "^3.0.0" + "micromark-util-types": "^1.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-parse-selector": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", - "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", - "dev": true, + "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==", "dependencies": { - "@types/hast": "^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/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, + "node_modules/micromark-extension-math": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-2.1.2.tgz", + "integrity": "sha512-es0CcOV89VNS9wFmyn+wyFTKweXGW4CEvdaAca6SWRWPyYCbBisnjaHLjWO4Nszuiud84jCpkHsqAJoa768Pvg==", "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" + "@types/katex": "^0.16.0", + "katex": "^0.16.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/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, + "node_modules/micromark-extension-mdx-expression": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-1.0.8.tgz", + "integrity": "sha512-zZpeQtc5wfWKdzDsHRBY003H2Smg+PUi2REhqgIhdzAa5xonhP03FcXxqFSerFiNUr5AWmHpaNPQTBVOS4lrXw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "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" + "@types/estree": "^1.0.0", + "micromark-factory-mdx-expression": "^1.0.0", + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-events-to-acorn": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" + } + }, + "node_modules/micromark-extension-mdx-jsx": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-1.0.5.tgz", + "integrity": "sha512-gPH+9ZdmDflbu19Xkb8+gheqEDqkSpdCEubQyxuz/Hn8DOXiXvrXeikOoBA71+e8Pfi0/UYmU3wW3H58kr7akA==", + "dependencies": { + "@types/acorn": "^4.0.0", + "@types/estree": "^1.0.0", + "estree-util-is-identifier-name": "^2.0.0", + "micromark-factory-mdx-expression": "^1.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", + "vfile-message": "^3.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/micromark-extension-mdx-jsx/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", "dependencies": { - "@types/hast": "^3.0.0" + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/micromark-extension-mdx-md": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-1.0.1.tgz", + "integrity": "sha512-7MSuj2S7xjOQXAjjkbjBsHkMtb+mDGVW6uI2dBL9snOBCbZmoNgDAeZ0nSn9j3T42UE/g2xVNMn18PJxZvkBEA==", "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" + "micromark-util-types": "^1.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "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==", - "dev": true, + "node_modules/micromark-extension-mdxjs": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-1.0.1.tgz", + "integrity": "sha512-7YA7hF6i5eKOfFUzZ+0z6avRG52GpWR8DL+kN47y3f2KhxbBZMhmxe7auOeaTBrW2DenbbZTf1ea9tA2hDpC2Q==", "dependencies": { - "lru-cache": "^10.0.1" + "acorn": "^8.0.0", + "acorn-jsx": "^5.0.0", + "micromark-extension-mdx-expression": "^1.0.0", + "micromark-extension-mdx-jsx": "^1.0.0", + "micromark-extension-mdx-md": "^1.0.0", + "micromark-extension-mdxjs-esm": "^1.0.0", + "micromark-util-combine-extensions": "^1.0.0", + "micromark-util-types": "^1.0.0" }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", - "dev": true, - "engines": { - "node": "14 || >=16.14" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/html-encoding-sniffer": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", - "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", - "dev": true, + "node_modules/micromark-extension-mdxjs-esm": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-1.0.5.tgz", + "integrity": "sha512-xNRBw4aoURcyz/S69B19WnZAkWJMxHMT5hE36GtDAyhoyn/8TuAeqjFJQlwk+MKQsUD7b3l7kFX+vlfVWgcX1w==", "dependencies": { - "whatwg-encoding": "^3.1.1" + "@types/estree": "^1.0.0", + "micromark-core-commonmark": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-events-to-acorn": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "unist-util-position-from-estree": "^1.1.0", + "uvu": "^0.5.0", + "vfile-message": "^3.0.0" }, - "engines": { - "node": ">=18" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/html-encoding-sniffer/node_modules/whatwg-encoding": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", - "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", - "dev": true, + "node_modules/micromark-extension-mdxjs-esm/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", "dependencies": { - "iconv-lite": "0.6.3" + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" }, - "engines": { - "node": ">=18" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "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/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==", + "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/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, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "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==", + "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/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, + "node_modules/micromark-factory-mdx-expression": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-1.0.9.tgz", + "integrity": "sha512-jGIWzSmNfdnkJq05c7b0+Wv0Kfz3NJ3N4cBjnbO4zjXIlxJr+f8lk+5ZmwFvqdAbUy2q6B5rCY//g0QAAaXDWA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" + "@types/estree": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-events-to-acorn": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "unist-util-position-from-estree": "^1.0.0", + "uvu": "^0.5.0", + "vfile-message": "^3.0.0" } }, - "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, + "node_modules/micromark-factory-mdx-expression/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", "dependencies": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" }, - "engines": { - "node": ">= 14" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" + "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==", + "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/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, + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" + "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/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/human-signals": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", - "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", - "dev": true, - "engines": { - "node": ">=16.17.0" + "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==", + "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/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, + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, + "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==", "funding": [ { - "type": "github", - "url": "https://github.com/sponsors/feross" + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" }, { - "type": "patreon", - "url": "https://www.patreon.com/feross" + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" + } + }, + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" }, { - "type": "consulting", - "url": "https://feross.org/support" + "type": "OpenCollective", + "url": "https://opencollective.com/unified" } - ] - }, - "node_modules/ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", - "dev": true, - "engines": { - "node": ">= 4" + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/ignore-walk": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.4.tgz", - "integrity": "sha512-t7sv42WkwFkyKbivUCglsQW5YWMskWtbEf4MNKX5u/CCWHKSPzN4FtBQGsQZgCLbxOzpVlcbWVK5KB3auIOjSw==", - "dev": true, + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "minimatch": "^9.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "micromark-util-chunked": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/image-meta": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/image-meta/-/image-meta-0.2.0.tgz", - "integrity": "sha512-ZBGjl0ZMEMeOC3Ns0wUF/5UdUmr3qQhBSCniT0LxOgGGIRHiNFOkMtIHB7EOznRU47V2AxPgiVP+s+0/UCU0Hg==", - "dev": true - }, - "node_modules/image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", - "dev": true, - "optional": true, - "bin": { - "image-size": "bin/image-size.js" - }, - "engines": { - "node": ">=0.10.0" + "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==", + "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/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, + "node_modules/micromark-util-decode-string": { + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-symbol": "^1.0.0" } }, - "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": ">=0.8.19" - } - }, - "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": ">=8" - } - }, - "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": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "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/internal-slot": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", - "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.2", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "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": { - "@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" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ioredis" - } - }, - "node_modules/ip-address": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", - "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", - "dev": true, - "license": "MIT", - "dependencies": { - "jsbn": "1.1.0", - "sprintf-js": "^1.1.3" - }, - "engines": { - "node": ">= 12" - } - }, - "node_modules/iron-webcrypto": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/iron-webcrypto/-/iron-webcrypto-1.0.0.tgz", - "integrity": "sha512-anOK1Mktt8U1Xi7fCM3RELTuYbnFikQY5VtrDj7kPgpejV7d43tWKhzgioO0zpkazLEL/j/iayRqnJhrGfqUsg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/brc-dd" - } - }, - "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/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, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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-alphabetical": "^2.0.0", - "is-decimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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": { - "builtin-modules": "^3.3.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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, - "engines": { - "node": ">=0.10.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==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "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": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.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==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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": { - "is-docker": "^3.0.0" - }, - "bin": { - "is-inside-container": "cli.js" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-installed-globally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-1.0.0.tgz", - "integrity": "sha512-K55T22lfpQ63N4KEN57jZUAaAYqYHEe8veb/TycJRk9DdSCLLcovXz/mL6mOnhQaZsQGwPhuFopdQIlqGSEjiQ==", - "dev": true, - "dependencies": { - "global-directory": "^4.0.1", - "is-path-inside": "^4.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-installed-globally/node_modules/is-path-inside": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", - "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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, - "engines": { - "node": ">=8" - } - }, - "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, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, - "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, - "engines": { - "node": ">=0.10.0" - } - }, - "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/estree": "*" - } - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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": { - "protocols": "^2.0.1" - } - }, - "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/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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": { - "which-typed-array": "^1.1.11" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-what": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", - "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", - "dev": true - }, - "node_modules/is-wsl": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz", - "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==", - "dev": true, - "dependencies": { - "is-inside-container": "^1.0.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is64bit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is64bit/-/is64bit-2.0.0.tgz", - "integrity": "sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==", - "dev": true, - "dependencies": { - "system-architecture": "^0.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "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/istanbul-lib-coverage": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", - "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.4.tgz", - "integrity": "sha512-wHOoEsNJTVltaJp8eVkm8w+GVkVNHT2YDYo53YdzQEL2gWm1hBX5cGFR9hQJtuGLebidVX7et3+dmDZrmclduw==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.23", - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", - "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "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": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "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, - "bin": { - "jiti": "bin/jiti.js" - } - }, - "node_modules/js-beautify": { - "version": "1.14.11", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.11.tgz", - "integrity": "sha512-rPogWqAfoYh1Ryqqh2agUpVfbxAhbjuN1SmU86dskQUKouRiggUTCO4+2ym9UPXllc2WAp0J+T5qxn7Um3lCdw==", - "dev": true, - "dependencies": { - "config-chain": "^1.1.13", - "editorconfig": "^1.0.3", - "glob": "^10.3.3", - "nopt": "^7.2.0" - }, - "bin": { - "css-beautify": "js/bin/css-beautify.js", - "html-beautify": "js/bin/html-beautify.js", - "js-beautify": "js/bin/js-beautify.js" - }, - "engines": { - "node": ">=14" - } - }, - "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": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsbn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", - "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", - "dev": true, - "license": "MIT" - }, - "node_modules/jsdom": { - "version": "23.2.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-23.2.0.tgz", - "integrity": "sha512-L88oL7D/8ufIES+Zjz7v0aes+oBMh2Xnh3ygWvL0OaICOomKEPKuPnIfBJekiXr+BHbbMjrWn/xqrDQuxFTeyA==", - "dev": true, - "dependencies": { - "@asamuzakjp/dom-selector": "^2.0.1", - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.2", - "is-potential-custom-element-name": "^1.0.1", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.6.0", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.3", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.16.0", - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "canvas": "^2.11.2" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsdom/node_modules/whatwg-encoding": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", - "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", - "dev": true, - "dependencies": { - "iconv-lite": "0.6.3" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/jsdom/node_modules/whatwg-mimetype": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", - "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", - "dev": true, - "engines": { - "node": ">=18" - } - }, - "node_modules/jsdom/node_modules/xml-name-validator": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", - "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", - "dev": true, - "engines": { - "node": ">=18" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "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 - }, - "node_modules/json-parse-even-better-errors": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", - "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", - "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 - }, - "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 - }, - "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" - }, - "engines": { - "node": ">=6" - } - }, - "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": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "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, - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "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, - "engines": { - "node": ">=6" - } - }, - "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, - "engines": { - "node": ">= 8" - } - }, - "node_modules/knitwork": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/knitwork/-/knitwork-1.1.0.tgz", - "integrity": "sha512-oHnmiBUVHz1V+URE77PNot2lv3QiYU2zQf1JjOVkMt3YDKGbu8NAFr+c4mcNOhdsGrB/VpVbRwPwhiXrPhxQbw==", - "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/lazystream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", - "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", - "dev": true, - "dependencies": { - "readable-stream": "^2.0.5" - }, - "engines": { - "node": ">= 0.6.3" - } - }, - "node_modules/lazystream/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/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": { - "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/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==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/less": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/less/-/less-4.2.0.tgz", - "integrity": "sha512-P3b3HJDBtSzsXUl0im2L7gTO5Ubg8mEN6G8qoTS77iXxXX4Hvu4Qj540PZDvQ8V6DmX6iXo98k7Md0Cm1PrLaA==", - "dev": true, - "dependencies": { - "copy-anything": "^2.0.1", - "parse-node-version": "^1.0.1", - "tslib": "^2.3.0" - }, - "bin": { - "lessc": "bin/lessc" - }, - "engines": { - "node": ">=6" - }, - "optionalDependencies": { - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "make-dir": "^2.1.0", - "mime": "^1.4.1", - "needle": "^3.1.0", - "source-map": "~0.6.0" - } - }, - "node_modules/less/node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "optional": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/less/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "optional": true, - "bin": { - "semver": "bin/semver" - } - }, - "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, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/lilconfig": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", - "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antonk52" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/listhen": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/listhen/-/listhen-1.7.2.tgz", - "integrity": "sha512-7/HamOm5YD9Wb7CFgAZkKgVPA96WwhcTQoqtm2VTZGVbVVn3IWKRBTgrU7cchA3Q8k9iCsG8Osoi9GX4JsGM9g==", - "dev": true, - "dependencies": { - "@parcel/watcher": "^2.4.1", - "@parcel/watcher-wasm": "^2.4.1", - "citty": "^0.1.6", - "clipboardy": "^4.0.0", - "consola": "^3.2.3", - "crossws": "^0.2.0", - "defu": "^6.1.4", - "get-port-please": "^3.1.2", - "h3": "^1.10.2", - "http-shutdown": "^1.2.2", - "jiti": "^1.21.0", - "mlly": "^1.6.1", - "node-forge": "^1.3.1", - "pathe": "^1.1.2", - "std-env": "^3.7.0", - "ufo": "^1.4.0", - "untun": "^0.1.3", - "uqr": "^0.1.2" - }, - "bin": { - "listen": "bin/listhen.mjs", - "listhen": "bin/listhen.mjs" - } - }, - "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": { - "mlly": "^1.4.2", - "pkg-types": "^1.0.3" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "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, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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.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 - }, - "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/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, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/loupe": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", - "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", - "dev": true, - "dependencies": { - "get-func-name": "^2.0.1" - } - }, - "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, - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/magic-string": { - "version": "0.30.9", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.9.tgz", - "integrity": "sha512-S1+hd+dIrC8EZqKyT9DstTH/0Z+f76kmmvZnkfQVmOpDEF9iVgdYif3Q/pIWHmCoo59bQVGW0kVL3e2nl+9+Sw==", - "dev": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15" - }, - "engines": { - "node": ">=12" - } - }, - "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": { - "magic-string": "^0.30.2" - }, - "engines": { - "node": ">=16.14.0" - } - }, - "node_modules/magicast": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.3.tgz", - "integrity": "sha512-ZbrP1Qxnpoes8sz47AM0z08U+jW6TyRgZzcWy3Ma3vDhJttwMwAFDMMQFobwdBxByBD46JYmxRzeF7w2+wJEuw==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.23.6", - "@babel/types": "^7.23.6", - "source-map-js": "^1.0.2" - } - }, - "node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "dev": true, - "dependencies": { - "semver": "^7.5.3" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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": "^16.14.0 || >=18.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==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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": { - "@types/mdast": "^4.0.0", - "escape-string-regexp": "^5.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-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, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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", - "integrity": "sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "mdast-util-to-string": "^4.0.0", - "micromark": "^4.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-decode-string": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "unist-util-stringify-position": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.0.0.tgz", - "integrity": "sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==", - "dev": true, - "dependencies": { - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-gfm-autolink-literal": "^2.0.0", - "mdast-util-gfm-footnote": "^2.0.0", - "mdast-util-gfm-strikethrough": "^2.0.0", - "mdast-util-gfm-table": "^2.0.0", - "mdast-util-gfm-task-list-item": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-autolink-literal": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.0.tgz", - "integrity": "sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "ccount": "^2.0.0", - "devlop": "^1.0.0", - "mdast-util-find-and-replace": "^3.0.0", - "micromark-util-character": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-footnote": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.0.0.tgz", - "integrity": "sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.1.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-strikethrough": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", - "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", - "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "markdown-table": "^3.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-gfm-task-list-item": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", - "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-phrasing": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.0.0.tgz", - "integrity": "sha512-xadSsJayQIucJ9n053dfQwVu1kuXg7jCTdYsMK8rqzKZh52nLfSH/k0sAxE0u+pj/zKZX+o5wB+ML5mRayOxFA==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.1.0.tgz", - "integrity": "sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==", - "dev": true, - "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", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-markdown": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz", - "integrity": "sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==", - "dev": true, - "dependencies": { - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "longest-streak": "^3.0.0", - "mdast-util-phrasing": "^4.0.0", - "mdast-util-to-string": "^4.0.0", - "micromark-util-decode-string": "^2.0.0", - "unist-util-visit": "^5.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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": { - "@types/mdast": "^4.0.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": "2.0.0", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", - "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", - "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, - "engines": { - "node": ">= 8" - } - }, - "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": { - "@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/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/micromark-extension-gfm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", - "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", - "dev": true, - "dependencies": { - "micromark-extension-gfm-autolink-literal": "^2.0.0", - "micromark-extension-gfm-footnote": "^2.0.0", - "micromark-extension-gfm-strikethrough": "^2.0.0", - "micromark-extension-gfm-table": "^2.0.0", - "micromark-extension-gfm-tagfilter": "^2.0.0", - "micromark-extension-gfm-task-list-item": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-autolink-literal": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.0.0.tgz", - "integrity": "sha512-rTHfnpt/Q7dEAK1Y5ii0W8bhfJlVJFnJMHIPisfPK3gpVNuOP0VnRl96+YJ3RYWV/P4gFeQoGKNlT3RhuvpqAg==", - "dev": true, - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-footnote": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.0.0.tgz", - "integrity": "sha512-6Rzu0CYRKDv3BfLAUnZsSlzx3ak6HAoI85KTiijuKIz5UxZxbUI+pD6oHgw+6UtQuiRwnGRhzMmPRv4smcz0fg==", - "dev": true, - "dependencies": { - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-strikethrough": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.0.0.tgz", - "integrity": "sha512-c3BR1ClMp5fxxmwP6AoOY2fXO9U8uFMKs4ADD66ahLTNcwzSCyRVU4k7LPV5Nxo/VJiR4TdzxRQY2v3qIUceCw==", - "dev": true, - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.0.0.tgz", - "integrity": "sha512-PoHlhypg1ItIucOaHmKE8fbin3vTLpDOUg8KAr8gRCF1MOZI9Nquq2i/44wFvviM4WuxJzc3demT8Y3dkfvYrw==", - "dev": true, - "dependencies": { - "devlop": "^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" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-tagfilter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", - "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", - "dev": true, - "dependencies": { - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-gfm-task-list-item": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.0.1.tgz", - "integrity": "sha512-cY5PzGcnULaN5O7T+cOzfMoHjBW7j+T9D2sucA5d/KbsBTPcYdebm9zUd9zzdgJGCwahV+/W78Z3nbulBYVbTw==", - "dev": true, - "dependencies": { - "devlop": "^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" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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/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/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/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/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/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/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/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/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/micromark-util-decode-numeric-character-reference": { - "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": [ - { - "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/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": { - "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/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/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/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/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/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/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/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/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/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "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" - }, - "engines": { - "node": ">=4" - } - }, - "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, - "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, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "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/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "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": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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": "2.0.1", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", - "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "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" - }, - "engines": { - "node": ">=8" - } - }, - "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, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "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.3.0", - "resolved": "https://registry.npmjs.org/minisearch/-/minisearch-6.3.0.tgz", - "integrity": "sha512-ihFnidEeU8iXzcVHy74dhkxh/dn8Dc08ERl0xwoMMGqp4+LvRSCgicb+zGqWthVokQKvCSxITlh3P08OzdTYCQ==", - "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, - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "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, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "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, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/mlly": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.6.1.tgz", - "integrity": "sha512-vLgaHvaeunuOXHSmEbZ9izxPx3USsk8KCQ8iC+aTlp5sKRSoZvwhHh5L9VbKSaVC6sJDqbyohIS76E2VmHIPAA==", - "dev": true, - "dependencies": { - "acorn": "^8.11.3", - "pathe": "^1.1.2", - "pkg-types": "^1.0.3", - "ufo": "^1.3.2" - } - }, - "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_modules/mrmime": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.0.tgz", - "integrity": "sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "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/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": "^14 || ^16 || >=18" - } - }, - "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 - }, - "node_modules/needle": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz", - "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", - "dev": true, - "optional": true, - "dependencies": { - "iconv-lite": "^0.6.3", - "sax": "^1.2.4" - }, - "bin": { - "needle": "bin/needle" - }, - "engines": { - "node": ">= 4.4.x" - } - }, - "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.6" - } - }, - "node_modules/nitropack": { - "version": "2.9.6", - "resolved": "https://registry.npmjs.org/nitropack/-/nitropack-2.9.6.tgz", - "integrity": "sha512-HP2PE0dREcDIBVkL8Zm6eVyrDd10/GI9hTL00PHvjUM8I9Y/2cv73wRDmxNyInfrx/CJKHATb2U/pQrqpzJyXA==", - "dev": true, - "dependencies": { - "@cloudflare/kv-asset-handler": "^0.3.1", - "@netlify/functions": "^2.6.0", - "@rollup/plugin-alias": "^5.1.0", - "@rollup/plugin-commonjs": "^25.0.7", - "@rollup/plugin-inject": "^5.0.5", - "@rollup/plugin-json": "^6.1.0", - "@rollup/plugin-node-resolve": "^15.2.3", - "@rollup/plugin-replace": "^5.0.5", - "@rollup/plugin-terser": "^0.4.4", - "@rollup/pluginutils": "^5.1.0", - "@types/http-proxy": "^1.17.14", - "@vercel/nft": "^0.26.4", - "archiver": "^7.0.1", - "c12": "^1.10.0", - "chalk": "^5.3.0", - "chokidar": "^3.6.0", - "citty": "^0.1.6", - "consola": "^3.2.3", - "cookie-es": "^1.1.0", - "croner": "^8.0.1", - "crossws": "^0.2.4", - "db0": "^0.1.4", - "defu": "^6.1.4", - "destr": "^2.0.3", - "dot-prop": "^8.0.2", - "esbuild": "^0.20.2", - "escape-string-regexp": "^5.0.0", - "etag": "^1.8.1", - "fs-extra": "^11.2.0", - "globby": "^14.0.1", - "gzip-size": "^7.0.0", - "h3": "^1.11.1", - "hookable": "^5.5.3", - "httpxy": "^0.1.5", - "ioredis": "^5.3.2", - "is-primitive": "^3.0.1", - "jiti": "^1.21.0", - "klona": "^2.0.6", - "knitwork": "^1.1.0", - "listhen": "^1.7.2", - "magic-string": "^0.30.8", - "mime": "^4.0.1", - "mlly": "^1.6.1", - "mri": "^1.2.0", - "node-fetch-native": "^1.6.4", - "ofetch": "^1.3.4", - "ohash": "^1.1.3", - "openapi-typescript": "^6.7.5", - "pathe": "^1.1.2", - "perfect-debounce": "^1.0.0", - "pkg-types": "^1.0.3", - "pretty-bytes": "^6.1.1", - "radix3": "^1.1.2", - "rollup": "^4.13.2", - "rollup-plugin-visualizer": "^5.12.0", - "scule": "^1.3.0", - "semver": "^7.6.0", - "serve-placeholder": "^2.0.1", - "serve-static": "^1.15.0", - "std-env": "^3.7.0", - "ufo": "^1.5.3", - "uncrypto": "^0.1.3", - "unctx": "^2.3.1", - "unenv": "^1.9.0", - "unimport": "^3.7.1", - "unstorage": "^1.10.2", - "unwasm": "^0.3.9" - }, - "bin": { - "nitro": "dist/cli/index.mjs", - "nitropack": "dist/cli/index.mjs" - }, - "engines": { - "node": "^16.11.0 || >=17.0.0" - }, - "peerDependencies": { - "xml2js": "^0.6.2" - }, - "peerDependenciesMeta": { - "xml2js": { - "optional": true - } - } - }, - "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": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "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, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nitropack/node_modules/mime": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-4.0.1.tgz", - "integrity": "sha512-5lZ5tyrIfliMXzFtkYyekWbtRXObT9OWa8IwQ5uxTBDHucNNwniRqo0yInflj+iYi5CBa6qxadGzGarDfuEOxA==", - "dev": true, - "funding": [ - "https://github.com/sponsors/broofa" - ], - "bin": { - "mime": "bin/cli.js" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/node-addon-api": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.0.tgz", - "integrity": "sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==", - "dev": true, - "engines": { - "node": "^16 || ^18 || >= 20" - } - }, - "node_modules/node-emoji": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-2.1.3.tgz", - "integrity": "sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==", - "dev": true, - "dependencies": { - "@sindresorhus/is": "^4.6.0", - "char-regex": "^1.0.2", - "emojilib": "^2.4.0", - "skin-tone": "^2.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "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": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/node-fetch-native": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.6.4.tgz", - "integrity": "sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==", - "dev": true - }, - "node_modules/node-fetch/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/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dev": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "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, - "engines": { - "node": ">= 6.13.0" - } - }, - "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": { - "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": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/node-gyp-build": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", - "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", - "dev": true, - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } - }, - "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, - "engines": { - "node": ">=16" - } - }, - "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, - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^16.13.0 || >=18.0.0" - } - }, - "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "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": { - "abbrev": "^2.0.0" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "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" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "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, - "engines": { - "node": ">=0.10.0" - } - }, - "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, - "engines": { - "node": ">=0.10.0" - } - }, - "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, - "dependencies": { - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "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, - "dependencies": { - "semver": "^7.1.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "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, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "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, - "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_modules/npm-packlist": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", - "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==", - "dev": true, - "dependencies": { - "ignore-walk": "^6.0.4" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "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, - "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" - } - }, - "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, - "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": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/npm-run-path": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.2.0.tgz", - "integrity": "sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==", - "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/npm-run-path/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/npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", - "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" - } - }, - "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/nuxi": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/nuxi/-/nuxi-3.11.1.tgz", - "integrity": "sha512-AW71TpxRHNg8MplQVju9tEFvXPvX42e0wPYknutSStDuAjV99vWTWYed4jxr/grk2FtKAuv2KvdJxcn2W59qyg==", - "dev": true, - "bin": { - "nuxi": "bin/nuxi.mjs", - "nuxi-ng": "bin/nuxi.mjs", - "nuxt": "bin/nuxi.mjs", - "nuxt-cli": "bin/nuxi.mjs" - }, - "engines": { - "node": "^16.10.0 || >=18.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - } - }, - "node_modules/nuxt": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/nuxt/-/nuxt-3.11.1.tgz", - "integrity": "sha512-CsncE1dxP0cmOYT+PBdjMD0bOK8eZizG5tgNWUOJAAAtU45sO38maoBumYYL2kUpT/SC/dMP+831DAcVPvi9pQ==", - "dev": true, - "dependencies": { - "@nuxt/devalue": "^2.0.2", - "@nuxt/devtools": "^1.0.8", - "@nuxt/kit": "3.11.1", - "@nuxt/schema": "3.11.1", - "@nuxt/telemetry": "^2.5.3", - "@nuxt/ui-templates": "^1.3.1", - "@nuxt/vite-builder": "3.11.1", - "@unhead/dom": "^1.8.20", - "@unhead/ssr": "^1.8.20", - "@unhead/vue": "^1.8.20", - "@vue/shared": "^3.4.21", - "acorn": "8.11.3", - "c12": "^1.10.0", - "chokidar": "^3.6.0", - "cookie-es": "^1.0.0", - "defu": "^6.1.4", - "destr": "^2.0.3", - "devalue": "^4.3.2", - "esbuild": "^0.20.2", - "escape-string-regexp": "^5.0.0", - "estree-walker": "^3.0.3", - "fs-extra": "^11.2.0", - "globby": "^14.0.1", - "h3": "^1.11.1", - "hookable": "^5.5.3", - "jiti": "^1.21.0", - "klona": "^2.0.6", - "knitwork": "^1.0.0", - "magic-string": "^0.30.8", - "mlly": "^1.6.1", - "nitropack": "^2.9.4", - "nuxi": "^3.11.0", - "nypm": "^0.3.8", - "ofetch": "^1.3.3", - "ohash": "^1.1.3", - "pathe": "^1.1.2", - "perfect-debounce": "^1.0.0", - "pkg-types": "^1.0.3", - "radix3": "^1.1.1", - "scule": "^1.3.0", - "std-env": "^3.7.0", - "strip-literal": "^2.0.0", - "ufo": "^1.5.2", - "ultrahtml": "^1.5.3", - "uncrypto": "^0.1.3", - "unctx": "^2.3.1", - "unenv": "^1.9.0", - "unimport": "^3.7.1", - "unplugin": "^1.10.0", - "unplugin-vue-router": "^0.7.0", - "unstorage": "^1.10.2", - "untyped": "^1.4.2", - "vue": "^3.4.21", - "vue-bundle-renderer": "^2.0.0", - "vue-devtools-stub": "^0.1.0", - "vue-router": "^4.3.0" - }, - "bin": { - "nuxi": "bin/nuxt.mjs", - "nuxt": "bin/nuxt.mjs" - }, - "engines": { - "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/@vue/compiler-core": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.21.tgz", - "integrity": "sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.23.9", - "@vue/shared": "3.4.21", - "entities": "^4.5.0", - "estree-walker": "^2.0.2", - "source-map-js": "^1.0.2" - } - }, - "node_modules/nuxt/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/nuxt/node_modules/@vue/compiler-dom": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.21.tgz", - "integrity": "sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==", - "dev": true, - "dependencies": { - "@vue/compiler-core": "3.4.21", - "@vue/shared": "3.4.21" - } - }, - "node_modules/nuxt/node_modules/@vue/compiler-sfc": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.21.tgz", - "integrity": "sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.23.9", - "@vue/compiler-core": "3.4.21", - "@vue/compiler-dom": "3.4.21", - "@vue/compiler-ssr": "3.4.21", - "@vue/shared": "3.4.21", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.7", - "postcss": "^8.4.35", - "source-map-js": "^1.0.2" - } - }, - "node_modules/nuxt/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/nuxt/node_modules/@vue/compiler-ssr": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.21.tgz", - "integrity": "sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==", - "dev": true, - "dependencies": { - "@vue/compiler-dom": "3.4.21", - "@vue/shared": "3.4.21" - } - }, - "node_modules/nuxt/node_modules/@vue/reactivity": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.21.tgz", - "integrity": "sha512-UhenImdc0L0/4ahGCyEzc/pZNwVgcglGy9HVzJ1Bq2Mm9qXOpP8RyNTjookw/gOCUlXSEtuZ2fUg5nrHcoqJcw==", - "dev": true, - "dependencies": { - "@vue/shared": "3.4.21" - } - }, - "node_modules/nuxt/node_modules/@vue/runtime-core": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.21.tgz", - "integrity": "sha512-pQthsuYzE1XcGZznTKn73G0s14eCJcjaLvp3/DKeYWoFacD9glJoqlNBxt3W2c5S40t6CCcpPf+jG01N3ULyrA==", - "dev": true, - "dependencies": { - "@vue/reactivity": "3.4.21", - "@vue/shared": "3.4.21" - } - }, - "node_modules/nuxt/node_modules/@vue/runtime-dom": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.21.tgz", - "integrity": "sha512-gvf+C9cFpevsQxbkRBS1NpU8CqxKw0ebqMvLwcGQrNpx6gqRDodqKqA+A2VZZpQ9RpK2f9yfg8VbW/EpdFUOJw==", - "dev": true, - "dependencies": { - "@vue/runtime-core": "3.4.21", - "@vue/shared": "3.4.21", - "csstype": "^3.1.3" - } - }, - "node_modules/nuxt/node_modules/@vue/server-renderer": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.21.tgz", - "integrity": "sha512-aV1gXyKSN6Rz+6kZ6kr5+Ll14YzmIbeuWe7ryJl5muJ4uwSwY/aStXTixx76TwkZFJLm1aAlA/HSWEJ4EyiMkg==", - "dev": true, - "dependencies": { - "@vue/compiler-ssr": "3.4.21", - "@vue/shared": "3.4.21" - }, - "peerDependencies": { - "vue": "3.4.21" - } - }, - "node_modules/nuxt/node_modules/@vue/shared": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.21.tgz", - "integrity": "sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==", - "dev": true - }, - "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, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nuxt/node_modules/vue": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.21.tgz", - "integrity": "sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==", - "dev": true, - "dependencies": { - "@vue/compiler-dom": "3.4.21", - "@vue/compiler-sfc": "3.4.21", - "@vue/runtime-dom": "3.4.21", - "@vue/server-renderer": "3.4.21", - "@vue/shared": "3.4.21" - }, - "peerDependencies": { - "typescript": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" } - } - }, - "node_modules/nypm": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/nypm/-/nypm-0.3.8.tgz", - "integrity": "sha512-IGWlC6So2xv6V4cIDmoV0SwwWx7zLG086gyqkyumteH2fIgCAM4nDVFB2iDRszDvmdSVW9xb1N+2KjQ6C7d4og==", - "dev": true, - "dependencies": { - "citty": "^0.1.6", - "consola": "^3.2.3", - "execa": "^8.0.1", - "pathe": "^1.1.2", - "ufo": "^1.4.0" - }, - "bin": { - "nypm": "dist/cli.mjs" - }, - "engines": { - "node": "^14.16.0 || >=16.10.0" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", - "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", - "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + ] }, - "node_modules/object.groupby": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", - "dev": true, + "node_modules/micromark-util-events-to-acorn": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-1.2.3.tgz", + "integrity": "sha512-ij4X7Wuc4fED6UoLWkmo0xJQhsktfNh1J0m8g4PbIMPlx+ek/4YdW5mvbye8z/aZvAPUoxgXHrwVlXAPKMRp1w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" + "@types/acorn": "^4.0.0", + "@types/estree": "^1.0.0", + "@types/unist": "^2.0.0", + "estree-util-visit": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0", + "vfile-message": "^3.0.0" } }, - "node_modules/object.values": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", - "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", - "dev": true, + "node_modules/micromark-util-events-to-acorn/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - }, - "engines": { - "node": ">= 0.4" + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/ofetch": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.3.4.tgz", - "integrity": "sha512-KLIET85ik3vhEfS+3fDlc/BAZiAp+43QEC/yCo5zkNoY2YaKvNkOaFr/6wCFgFH1kuYQM5pMNi0Tg8koiIemtw==", - "dev": true, - "dependencies": { - "destr": "^2.0.3", - "node-fetch-native": "^1.6.3", - "ufo": "^1.5.3" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/ohash": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/ohash/-/ohash-1.1.3.tgz", - "integrity": "sha512-zuHHiGTYTA1sYJ/wZN+t5HKZaH23i4yI1HMwbuXm24Nid7Dv0KcuRlKoNKS9UNfAVSBlnGLcuQrnOKWOZoEGaw==", - "dev": true + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "wrappy": "1" + "micromark-util-types": "^1.0.0" } }, - "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, + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "micromark-util-character": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "dev": true, + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "micromark-util-chunked": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" } }, - "node_modules/open/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, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/open/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, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/openapi-typescript": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/openapi-typescript/-/openapi-typescript-6.7.5.tgz", - "integrity": "sha512-ZD6dgSZi0u1QCP55g8/2yS5hNJfIpgqsSGHLxxdOjvY7eIrXzj271FJEQw33VwsZ6RCtO/NOuhxa7GBWmEudyA==", + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dev": true, "dependencies": { - "ansi-colors": "^4.1.3", - "fast-glob": "^3.3.2", - "js-yaml": "^4.1.0", - "supports-color": "^9.4.0", - "undici": "^5.28.2", - "yargs-parser": "^21.1.1" + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, - "bin": { - "openapi-typescript": "bin/cli.js" + "engines": { + "node": ">=8.6" } }, - "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==", + "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, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "node": ">= 0.6" } }, - "node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "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, "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" + "mime-db": "1.52.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 0.6" } }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "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, - "dependencies": { - "yocto-queue": "^0.1.0" - }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "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": { - "p-limit": "^3.0.2" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "*" } }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "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": ">=6" - } - }, - "node_modules/pacote": { - "version": "17.0.6", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.6.tgz", - "integrity": "sha512-cJKrW21VRE8vVTRskJo78c/RCvwJCn1f4qgfxL4w77SOWrTCRcmfkYHlHtS0gqpgjv3zhXflRtgsrUCX5xwNnQ==", - "dev": true, - "dependencies": { - "@npmcli/git": "^5.0.0", - "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/promise-spawn": "^7.0.0", - "@npmcli/run-script": "^7.0.0", - "cacache": "^18.0.0", - "fs-minipass": "^3.0.0", - "minipass": "^7.0.2", - "npm-package-arg": "^11.0.0", - "npm-packlist": "^8.0.0", - "npm-pick-manifest": "^9.0.0", - "npm-registry-fetch": "^16.0.0", - "proc-log": "^3.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^7.0.0", - "read-package-json-fast": "^3.0.0", - "sigstore": "^2.2.0", - "ssri": "^10.0.0", - "tar": "^6.1.11" - }, - "bin": { - "pacote": "lib/bin.js" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "node_modules/mlly": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.0.tgz", + "integrity": "sha512-U9SDaXGEREBYQgfejV97coK0UL1r+qnF2SyO9A3qcI8MzKnsIFKHNVEkrDyNncQTKQQumsasmeq84eNMdBfsNQ==", "dev": true, "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" + "acorn": "^8.11.3", + "pathe": "^1.1.2", + "pkg-types": "^1.1.0", + "ufo": "^1.5.3" } }, - "node_modules/parse-entities": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz", - "integrity": "sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==", - "dev": true, - "dependencies": { - "@types/unist": "^2.0.0", - "character-entities": "^2.0.0", - "character-entities-legacy": "^3.0.0", - "character-reference-invalid": "^2.0.0", - "decode-named-character-reference": "^1.0.0", - "is-alphanumerical": "^2.0.0", - "is-decimal": "^2.0.0", - "is-hexadecimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "node_modules/mri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", + "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", + "engines": { + "node": ">=4" } }, - "node_modules/parse-entities/node_modules/@types/unist": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", - "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==", - "dev": true + "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==" }, - "node_modules/parse-git-config": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/parse-git-config/-/parse-git-config-3.0.0.tgz", - "integrity": "sha512-wXoQGL1D+2COYWCD35/xbiKma1Z15xvZL8cI25wvxzled58V51SJM04Urt/uznS900iQor7QO04SgdfT/XlbuA==", - "dev": true, - "dependencies": { - "git-config-path": "^2.0.0", - "ini": "^1.3.5" + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" }, "engines": { - "node": ">=8" + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, + "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 + }, + "node_modules/next": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/next/-/next-14.1.1.tgz", + "integrity": "sha512-McrGJqlGSHeaz2yTRPkEucxQKe5Zq7uPwyeHNmJaZNY4wx9E9QdxmTp310agFRoMuIYgQrCrT3petg13fSVOww==", "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" + "@next/env": "14.1.1", + "@swc/helpers": "0.5.2", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001579", + "graceful-fs": "^4.2.11", + "postcss": "8.4.31", + "styled-jsx": "5.1.1" }, - "engines": { - "node": ">=8" + "bin": { + "next": "dist/bin/next" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse-json/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 - }, - "node_modules/parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true, "engines": { - "node": ">= 0.10" - } - }, - "node_modules/parse-path": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz", - "integrity": "sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==", - "dev": true, - "dependencies": { - "protocols": "^2.0.0" - } - }, - "node_modules/parse-url": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz", - "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==", - "dev": true, - "dependencies": { - "parse-path": "^7.0.0" + "node": ">=18.17.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "14.1.1", + "@next/swc-darwin-x64": "14.1.1", + "@next/swc-linux-arm64-gnu": "14.1.1", + "@next/swc-linux-arm64-musl": "14.1.1", + "@next/swc-linux-x64-gnu": "14.1.1", + "@next/swc-linux-x64-musl": "14.1.1", + "@next/swc-win32-arm64-msvc": "14.1.1", + "@next/swc-win32-ia32-msvc": "14.1.1", + "@next/swc-win32-x64-msvc": "14.1.1" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "sass": { + "optional": true + } } }, - "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", - "dev": true, + "node_modules/next-mdx-remote": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/next-mdx-remote/-/next-mdx-remote-4.4.1.tgz", + "integrity": "sha512-1BvyXaIou6xy3XoNF4yaMZUCb6vD2GTAa5ciOa6WoO+gAUTYsb1K4rI/HSC2ogAWLrb/7VSV52skz07vOzmqIQ==", "dependencies": { - "entities": "^4.4.0" + "@mdx-js/mdx": "^2.2.1", + "@mdx-js/react": "^2.2.1", + "vfile": "^5.3.0", + "vfile-matter": "^3.0.1" }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=14", + "npm": ">=7" + }, + "peerDependencies": { + "react": ">=16.x <=18.x", + "react-dom": ">=16.x <=18.x" } }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/next-seo": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/next-seo/-/next-seo-6.4.0.tgz", + "integrity": "sha512-XQFxkOL2hw0YE+P100HbI3EAvcludlHPxuzMgaIjKb7kPK0CvjGvLFjd9hszZFEDc5oiQkGFA8+cuWcnip7eYA==", + "peerDependencies": { + "next": "^8.1.1-canary.54 || >=9.0.0", + "react": ">=16.0.0", + "react-dom": ">=16.0.0" } }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", - "dev": true, - "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + "node_modules/next-themes": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz", + "integrity": "sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==", + "peerDependencies": { + "next": "*", + "react": "*", + "react-dom": "*" + } + }, + "node_modules/nextra": { + "version": "2.13.2", + "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.2.tgz", + "integrity": "sha512-pIgOSXNUqTz1laxV4ChFZOU7lzJAoDHHaBPj8L09PuxrLKqU1BU/iZtXAG6bQeKCx8EPdBsoXxEuENnL9QGnGA==", + "dependencies": { + "@headlessui/react": "^1.7.10", + "@mdx-js/mdx": "^2.3.0", + "@mdx-js/react": "^2.3.0", + "@napi-rs/simple-git": "^0.1.9", + "@theguild/remark-mermaid": "^0.0.5", + "@theguild/remark-npm2yarn": "^0.2.0", + "clsx": "^2.0.0", + "github-slugger": "^2.0.0", + "graceful-fs": "^4.2.11", + "gray-matter": "^4.0.3", + "katex": "^0.16.9", + "lodash.get": "^4.4.2", + "next-mdx-remote": "^4.2.1", + "p-limit": "^3.1.0", + "rehype-katex": "^7.0.0", + "rehype-pretty-code": "0.9.11", + "rehype-raw": "^7.0.0", + "remark-gfm": "^3.0.1", + "remark-math": "^5.1.1", + "remark-reading-time": "^2.0.1", + "shiki": "^0.14.3", + "slash": "^3.0.0", + "title": "^3.5.3", + "unist-util-remove": "^4.0.0", + "unist-util-visit": "^5.0.0", + "zod": "^3.22.3" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "peerDependencies": { + "next": ">=9.5.3", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" } }, - "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", - "dev": true, - "engines": { - "node": "14 || >=16.14" + "node_modules/nextra-theme-docs": { + "version": "2.13.2", + "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.2.tgz", + "integrity": "sha512-yE4umXaImp1/kf/sFciPj2+EFrNSwd9Db26hi98sIIiujzGf3+9eUgAz45vF9CwBw50FSXxm1QGRcY+slQ4xQQ==", + "dependencies": { + "@headlessui/react": "^1.7.10", + "@popperjs/core": "^2.11.6", + "clsx": "^2.0.0", + "escape-string-regexp": "^5.0.0", + "flexsearch": "^0.7.31", + "focus-visible": "^5.2.0", + "git-url-parse": "^13.1.0", + "intersection-observer": "^0.12.2", + "match-sorter": "^6.3.1", + "next-seo": "^6.0.0", + "next-themes": "^0.2.1", + "scroll-into-view-if-needed": "^3.0.0", + "zod": "^3.22.3" + }, + "peerDependencies": { + "next": ">=9.5.3", + "nextra": "2.13.2", + "react": ">=16.13.1", + "react-dom": ">=16.13.1" } }, - "node_modules/path-type": { + "node_modules/nextra-theme-docs/node_modules/escape-string-regexp": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz", - "integrity": "sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==", - "dev": true, + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "engines": { "node": ">=12" }, @@ -12485,589 +8462,515 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pathe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, + "node_modules/non-layered-tidy-tree-layout": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/non-layered-tidy-tree-layout/-/non-layered-tidy-tree-layout-2.0.2.tgz", + "integrity": "sha512-gkXMxRzUH+PB0ax9dUN0yYF0S25BqeAYqhgMaLUFmpXLEk7Fcu8f4emJuOAY0V8kjDICxROIKsTAKsV/v355xw==" + }, + "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==", "engines": { - "node": "*" + "node": ">=0.10.0" } }, - "node_modules/perfect-debounce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", - "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==", - "dev": true + "node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true + "node_modules/npm-run-path/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "engines": { + "node": ">=4" + } }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, + "node_modules/npm-to-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/npm-to-yarn/-/npm-to-yarn-2.1.0.tgz", + "integrity": "sha512-2C1IgJLdJngq1bSER7K7CGFszRr9s2rijEwvENPEgI0eK9xlD3tNwDc0UJnRj7FIT2aydWm72jB88uVswAhXHA==", "engines": { - "node": ">=8.6" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "url": "https://github.com/nebrelbug/npm-to-yarn?sponsor=1" } }, - "node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "node_modules/nwsapi": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", + "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", + "dev": true + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true, - "optional": true, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/pkg-types": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.0.3.tgz", - "integrity": "sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==", + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", "dev": true, - "dependencies": { - "jsonc-parser": "^3.2.0", - "mlly": "^1.2.0", - "pathe": "^1.1.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/playwright": { - "version": "1.41.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.1.tgz", - "integrity": "sha512-gdZAWG97oUnbBdRL3GuBvX3nDDmUOuqzV/D24dytqlKt+eI5KbwusluZRGljx1YoJKZ2NRPaeWiFTeGZO7SosQ==", + "node_modules/object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", "dev": true, "dependencies": { - "playwright-core": "1.41.1" - }, - "bin": { - "playwright": "cli.js" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" }, "engines": { - "node": ">=16" - }, - "optionalDependencies": { - "fsevents": "2.3.2" - } - }, - "node_modules/playwright-core": { - "version": "1.41.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.1.tgz", - "integrity": "sha512-/KPO5DzXSMlxSX77wy+HihKGOunh3hqndhqeo/nMxfigiKzogn8kfL0ZBDu0L1RKgan5XHCPmn6zXd2NUJgjhg==", - "dev": true, - "bin": { - "playwright-core": "cli.js" + "node": ">= 0.4" }, - "engines": { - "node": ">=16" - } - }, - "node_modules/playwright/node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "node_modules/postcss": { - "version": "8.4.38", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", - "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "dependencies": { - "nanoid": "^3.3.7", - "picocolors": "^1.0.0", - "source-map-js": "^1.2.0" + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" }, "engines": { - "node": "^10 || ^12 || >=14" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/postcss-calc": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-9.0.1.tgz", - "integrity": "sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==", + "node_modules/object.entries": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", + "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", "dev": true, "dependencies": { - "postcss-selector-parser": "^6.0.11", - "postcss-value-parser": "^4.2.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.2.2" + "node": ">= 0.4" } }, - "node_modules/postcss-colormin": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz", - "integrity": "sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==", + "node_modules/object.fromentries": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", + "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", "dev": true, "dependencies": { - "browserslist": "^4.23.0", - "caniuse-api": "^3.0.0", - "colord": "^2.9.3", - "postcss-value-parser": "^4.2.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { - "node": "^14 || ^16 || >=18.0" + "node": ">= 0.4" }, - "peerDependencies": { - "postcss": "^8.4.31" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/postcss-convert-values": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz", - "integrity": "sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==", + "node_modules/object.groupby": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", + "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", "dev": true, "dependencies": { - "browserslist": "^4.23.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1" } }, - "node_modules/postcss-discard-comments": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz", - "integrity": "sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==", + "node_modules/object.hasown": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.3.tgz", + "integrity": "sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==", "dev": true, - "engines": { - "node": "^14 || ^16 || >=18.0" + "dependencies": { + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, - "peerDependencies": { - "postcss": "^8.4.31" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/postcss-discard-duplicates": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz", - "integrity": "sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==", + "node_modules/object.values": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", + "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", "dev": true, - "engines": { - "node": "^14 || ^16 || >=18.0" + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, - "peerDependencies": { - "postcss": "^8.4.31" - } - }, - "node_modules/postcss-discard-empty": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz", - "integrity": "sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==", - "dev": true, "engines": { - "node": "^14 || ^16 || >=18.0" + "node": ">= 0.4" }, - "peerDependencies": { - "postcss": "^8.4.31" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/postcss-discard-overridden": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz", - "integrity": "sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==", + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "dependencies": { + "wrappy": "1" } }, - "node_modules/postcss-merge-longhand": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz", - "integrity": "sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==", + "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": { - "postcss-value-parser": "^4.2.0", - "stylehacks": "^6.1.1" + "mimic-fn": "^4.0.0" }, "engines": { - "node": "^14 || ^16 || >=18.0" + "node": ">=12" }, - "peerDependencies": { - "postcss": "^8.4.31" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-merge-rules": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz", - "integrity": "sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==", + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "dependencies": { - "browserslist": "^4.23.0", - "caniuse-api": "^3.0.0", - "cssnano-utils": "^4.0.2", - "postcss-selector-parser": "^6.0.16" + "@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" }, "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "node": ">= 0.8.0" } }, - "node_modules/postcss-minify-font-values": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz", - "integrity": "sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "node": ">=4" } }, - "node_modules/postcss-minify-gradients": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz", - "integrity": "sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==", - "dev": true, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dependencies": { - "colord": "^2.9.3", - "cssnano-utils": "^4.0.2", - "postcss-value-parser": "^4.2.0" + "yocto-queue": "^0.1.0" }, "engines": { - "node": "^14 || ^16 || >=18.0" + "node": ">=10" }, - "peerDependencies": { - "postcss": "^8.4.31" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-minify-params": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz", - "integrity": "sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==", + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "dependencies": { - "browserslist": "^4.23.0", - "cssnano-utils": "^4.0.2", - "postcss-value-parser": "^4.2.0" + "p-limit": "^3.0.2" }, "engines": { - "node": "^14 || ^16 || >=18.0" + "node": ">=10" }, - "peerDependencies": { - "postcss": "^8.4.31" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-minify-selectors": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz", - "integrity": "sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==", + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "dependencies": { - "postcss-selector-parser": "^6.0.16" + "callsites": "^3.0.0" }, "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "node": ">=6" } }, - "node_modules/postcss-normalize-charset": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz", - "integrity": "sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==", - "dev": true, - "engines": { - "node": "^14 || ^16 || >=18.0" + "node_modules/parse-entities": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz", + "integrity": "sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==", + "dependencies": { + "@types/unist": "^2.0.0", + "character-entities": "^2.0.0", + "character-entities-legacy": "^3.0.0", + "character-reference-invalid": "^2.0.0", + "decode-named-character-reference": "^1.0.0", + "is-alphanumerical": "^2.0.0", + "is-decimal": "^2.0.0", + "is-hexadecimal": "^2.0.0" }, - "peerDependencies": { - "postcss": "^8.4.31" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/postcss-normalize-display-values": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz", - "integrity": "sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==", - "dev": true, + "node_modules/parse-numeric-range": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", + "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" + }, + "node_modules/parse-path": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz", + "integrity": "sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==", "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "protocols": "^2.0.0" } }, - "node_modules/postcss-normalize-positions": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz", - "integrity": "sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==", - "dev": true, + "node_modules/parse-url": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz", + "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==", "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "parse-path": "^7.0.0" } }, - "node_modules/postcss-normalize-repeat-style": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz", - "integrity": "sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==", - "dev": true, + "node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" + "entities": "^4.4.0" }, - "peerDependencies": { - "postcss": "^8.4.31" + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" } }, - "node_modules/postcss-normalize-string": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz", - "integrity": "sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==", + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "node": ">=8" } }, - "node_modules/postcss-normalize-timing-functions": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz", - "integrity": "sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==", + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "node": ">=0.10.0" } }, - "node_modules/postcss-normalize-unicode": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz", - "integrity": "sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==", + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, - "dependencies": { - "browserslist": "^4.23.0", - "postcss-value-parser": "^4.2.0" - }, "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "node": ">=8" } }, - "node_modules/postcss-normalize-url": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz", - "integrity": "sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==", + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", "dev": true, "dependencies": { - "postcss-value-parser": "^4.2.0" + "lru-cache": "^9.1.1 || ^10.0.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": "^14 || ^16 || >=18.0" + "node": ">=16 || 14 >=14.17" }, - "peerDependencies": { - "postcss": "^8.4.31" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/postcss-normalize-whitespace": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz", - "integrity": "sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==", + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "node": ">=8" } }, - "node_modules/postcss-ordered-values": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz", - "integrity": "sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==", + "node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "dev": true + }, + "node_modules/pathval": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", "dev": true, - "dependencies": { - "cssnano-utils": "^4.0.2", - "postcss-value-parser": "^4.2.0" - }, "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "node": "*" } }, - "node_modules/postcss-reduce-initial": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz", - "integrity": "sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==", - "dev": true, + "node_modules/periscopic": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz", + "integrity": "sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==", "dependencies": { - "browserslist": "^4.23.0", - "caniuse-api": "^3.0.0" - }, - "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "@types/estree": "^1.0.0", + "estree-walker": "^3.0.0", + "is-reference": "^3.0.0" } }, - "node_modules/postcss-reduce-transforms": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz", - "integrity": "sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "engines": { - "node": "^14 || ^16 || >=18.0" + "node": ">=8.6" }, - "peerDependencies": { - "postcss": "^8.4.31" + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/postcss-selector-parser": { - "version": "6.0.16", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", - "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "node_modules/pkg-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.0.tgz", + "integrity": "sha512-/RpmvKdxKf8uILTtoOhAgf30wYbP2Qw+L9p3Rvshx1JZVX+XQNZQFjlbmGHEGIm4CkVPlSn+NXmIM8+9oWQaSA==", "dev": true, "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" + "confbox": "^0.1.7", + "mlly": "^1.6.1", + "pathe": "^1.1.2" } }, - "node_modules/postcss-svgo": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz", - "integrity": "sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==", + "node_modules/playwright": { + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.1.tgz", + "integrity": "sha512-gdZAWG97oUnbBdRL3GuBvX3nDDmUOuqzV/D24dytqlKt+eI5KbwusluZRGljx1YoJKZ2NRPaeWiFTeGZO7SosQ==", "dev": true, "dependencies": { - "postcss-value-parser": "^4.2.0", - "svgo": "^3.2.0" + "playwright-core": "1.41.1" + }, + "bin": { + "playwright": "cli.js" }, "engines": { - "node": "^14 || ^16 || >= 18" + "node": ">=16" }, - "peerDependencies": { - "postcss": "^8.4.31" + "optionalDependencies": { + "fsevents": "2.3.2" } }, - "node_modules/postcss-unique-selectors": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz", - "integrity": "sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==", + "node_modules/playwright-core": { + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.1.tgz", + "integrity": "sha512-/KPO5DzXSMlxSX77wy+HihKGOunh3hqndhqeo/nMxfigiKzogn8kfL0ZBDu0L1RKgan5XHCPmn6zXd2NUJgjhg==", "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.16" + "bin": { + "playwright-core": "cli.js" }, "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.4.31" + "node": ">=16" } }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "node_modules/postcss/node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "node_modules/playwright/node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, { "type": "github", "url": "https://github.com/sponsors/ai" } ], - "bin": { - "nanoid": "bin/nanoid.cjs" + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" }, "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + "node": "^10 || ^12 || >=14" } }, "node_modules/prelude-ls": { @@ -13080,9 +8983,9 @@ } }, "node_modules/prettier": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.1.tgz", - "integrity": "sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.4.tgz", + "integrity": "sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -13094,42 +8997,18 @@ "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "node_modules/prettier-linter-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", - "dev": true, - "dependencies": { - "fast-diff": "^1.1.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/pretty-bytes": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-6.1.1.tgz", - "integrity": "sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ==", - "dev": true, - "engines": { - "node": "^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/pretty-format": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", - "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", "dev": true, "dependencies": { - "@jest/schemas": "^29.6.3", + "ansi-regex": "^5.0.1", "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" + "react-is": "^17.0.1" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, "node_modules/pretty-format/node_modules/ansi-styles": { @@ -13144,90 +9023,41 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/proc-log": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", - "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "node_modules/pretty-format/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", "dev": true }, - "node_modules/promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, - "dependencies": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", "dev": true, "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" } }, "node_modules/property-information": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.4.0.tgz", - "integrity": "sha512-9t5qARVofg2xQqKtytzt+lZ4d1Qvj8t5B8fEwXK6qOfgRLgH/b13QlgEyDh033NOS31nXeFbYv7CLUDG1CeifQ==", - "dev": true, + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.4.1.tgz", + "integrity": "sha512-OHYtXfu5aI2sS2LWFSN5rgJjrQ4pCy8i1jubJLe2QvMF8JJ++HXTUIVWFLfXJoaOfvYYjk2SN8J2wFUWIGXT4w==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/proto-list": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", - "dev": true - }, "node_modules/protocols": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz", - "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==", - "dev": true + "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==" }, - "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, - "optional": true + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" }, "node_modules/psl": { "version": "1.9.0", @@ -13270,252 +9100,48 @@ } ] }, - "node_modules/queue-tick": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", - "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", - "dev": true - }, - "node_modules/radix3": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/radix3/-/radix3-1.1.2.tgz", - "integrity": "sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==", - "dev": true - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/rc9": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/rc9/-/rc9-2.1.1.tgz", - "integrity": "sha512-lNeOl38Ws0eNxpO3+wD1I9rkHGQyj1NU1jlzv4go2CtEnEQEUfqnIvZG7W+bC/aXdJ27n5x/yUjb6RoT9tko+Q==", - "dev": true, - "dependencies": { - "defu": "^6.1.2", - "destr": "^2.0.0", - "flat": "^5.0.2" - } - }, - "node_modules/react-is": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", - "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", - "dev": true - }, - "node_modules/read-package-json": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.0.tgz", - "integrity": "sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==", - "dev": true, - "dependencies": { - "glob": "^10.2.2", - "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/read-package-json-fast": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", - "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", - "dev": true, - "dependencies": { - "json-parse-even-better-errors": "^3.0.0", - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, - "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", "dependencies": { - "p-try": "^2.0.0" + "loose-envify": "^1.1.0" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, + "node_modules/react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", "dependencies": { - "p-limit": "^2.2.0" + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true, - "engines": { - "node": ">=8" + "peerDependencies": { + "react": "^18.2.0" } }, - "node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, - "node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/read-pkg/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/readable-stream": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", - "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", - "dev": true, - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/readdir-glob": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", - "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", - "dev": true, - "dependencies": { - "minimatch": "^5.1.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==", + "node_modules/react-refresh": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", + "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, "node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -13523,35 +9149,35 @@ "node": ">=8.10.0" } }, - "node_modules/redis-errors": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/redis-errors/-/redis-errors-1.2.0.tgz", - "integrity": "sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==", - "dev": true, - "engines": { - "node": ">=4" - } + "node_modules/reading-time": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", + "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" }, - "node_modules/redis-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-3.0.0.tgz", - "integrity": "sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A==", + "node_modules/reflect.getprototypeof": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz", + "integrity": "sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==", "dev": true, "dependencies": { - "redis-errors": "^1.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "globalthis": "^1.0.3", + "which-builtin-type": "^1.1.3" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regexp-tree": { - "version": "0.1.27", - "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz", - "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==", - "dev": true, - "bin": { - "regexp-tree": "bin/regexp-tree" - } + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" }, "node_modules/regexp.prototype.flags": { "version": "1.5.1", @@ -13570,41 +9196,83 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/rehype-katex": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-7.0.0.tgz", + "integrity": "sha512-h8FPkGE00r2XKU+/acgqwWUlyzve1IiOKwsEkg4pDL3k48PiE0Pt+/uLtVHDVkN1yA4iurZN6UES8ivHVEQV6Q==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/katex": "^0.16.0", + "hast-util-from-html-isomorphic": "^2.0.0", + "hast-util-to-text": "^4.0.0", + "katex": "^0.16.0", + "unist-util-visit-parents": "^6.0.0", + "vfile": "^6.0.0" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-external-links": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/rehype-external-links/-/rehype-external-links-3.0.0.tgz", - "integrity": "sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==", - "dev": true, + "node_modules/rehype-katex/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", "dependencies": { - "@types/hast": "^3.0.0", - "@ungap/structured-clone": "^1.0.0", - "hast-util-is-element": "^3.0.0", - "is-absolute-url": "^4.0.0", - "space-separated-tokens": "^2.0.0", - "unist-util-visit": "^5.0.0" + "@types/unist": "*" + } + }, + "node_modules/rehype-katex/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/rehype-katex/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==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-katex/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "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/rehype-pretty-code": { + "version": "0.9.11", + "resolved": "https://registry.npmjs.org/rehype-pretty-code/-/rehype-pretty-code-0.9.11.tgz", + "integrity": "sha512-Eq90eCYXQJISktfRZ8PPtwc5SUyH6fJcxS8XOMnHPUQZBtC6RYo67gGlley9X2nR8vlniPj0/7oCDEYHKQa/oA==", + "dependencies": { + "@types/hast": "^2.0.0", + "hash-obj": "^4.0.0", + "parse-numeric-range": "^1.3.0" + }, + "engines": { + "node": ">=16" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "peerDependencies": { + "shiki": "*" } }, "node_modules/rehype-raw": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/rehype-raw/-/rehype-raw-7.0.0.tgz", "integrity": "sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==", - "dev": true, "dependencies": { "@types/hast": "^3.0.0", "hast-util-raw": "^9.0.0", @@ -13615,134 +9283,134 @@ "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/rehype-raw/node_modules/@types/hast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", + "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", "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" + "@types/unist": "*" + } + }, + "node_modules/rehype-raw/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/rehype-raw/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==", + "dependencies": { + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-sort-attribute-values": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/rehype-sort-attribute-values/-/rehype-sort-attribute-values-5.0.0.tgz", - "integrity": "sha512-dQdHdCIRnpiU+BkrLSqH+aM4lWJyLqGzv49KvH4gHj+JxYwNqvGhoTXckS3AJu4V9ZutwsTcawP0pC7PhwX0tQ==", - "dev": true, + "node_modules/rehype-raw/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", "dependencies": { - "@types/hast": "^3.0.0", - "hast-util-is-element": "^3.0.0", - "unist-util-visit": "^5.0.0" + "@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/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, + "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==", "dependencies": { - "@types/hast": "^3.0.0", - "unist-util-visit": "^5.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/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, + "node_modules/remark-math": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-5.1.1.tgz", + "integrity": "sha512-cE5T2R/xLVtfFI4cCePtiRn+e6jKMtFDR3P8V3qpv8wpKjwvHoBA4eJzvX+nVrnlNy0911bdGmuspCSwetfYHw==", "dependencies": { - "@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" + "@types/mdast": "^3.0.0", + "mdast-util-math": "^2.0.0", + "micromark-extension-math": "^2.0.0", + "unified": "^10.0.0" }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/remark-gfm": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-4.0.0.tgz", - "integrity": "sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==", - "dev": true, + "node_modules/remark-mdx": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-2.3.0.tgz", + "integrity": "sha512-g53hMkpM0I98MU266IzDFMrTD980gNF3BJnkyFcmN+dD873mQeD5rdMO3Y2X+x8umQfbSE0PcoEDl7ledSA+2g==", "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-gfm": "^3.0.0", - "micromark-extension-gfm": "^3.0.0", - "remark-parse": "^11.0.0", - "remark-stringify": "^11.0.0", - "unified": "^11.0.0" + "mdast-util-mdx": "^2.0.0", + "micromark-extension-mdxjs": "^1.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remark-mdc": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-mdc/-/remark-mdc-3.0.1.tgz", - "integrity": "sha512-JW+4HMuXbF+mXHcBIWu1af6QdB2ge6nRO4tk66mF+RvQ2h/QucDKTZ2xKbCrLLOGrEyeYPhLEpIIKg7w2/xXdQ==", - "dev": true, + "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==", "dependencies": { - "@types/mdast": "^4.0.3", - "@types/unist": "^3.0.2", - "flat": "^6.0.1", - "js-yaml": "^4.1.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.1.0", - "micromark": "^4.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-factory-whitespace": "^2.0.0", - "micromark-util-character": "^2.0.1", - "micromark-util-types": "^2.0.0", - "parse-entities": "^4.0.1", - "scule": "^1.2.0", - "stringify-entities": "^4.0.3", - "unified": "^11.0.4", - "unist-util-visit": "^5.0.0", - "unist-util-visit-parents": "^6.0.1" + "@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-mdc/node_modules/flat": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/flat/-/flat-6.0.1.tgz", - "integrity": "sha512-/3FfIa8mbrg3xE7+wAhWeV+bd7L2Mof+xtZb5dRDKZ+wDvYJK4WDYeIOuOhre5Yv5aQObZrlbRmk3RTSiuQBtw==", - "dev": true, - "bin": { - "flat": "cli.js" + "node_modules/remark-reading-time": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/remark-reading-time/-/remark-reading-time-2.0.1.tgz", + "integrity": "sha512-fy4BKy9SRhtYbEHvp6AItbRTnrhiDGbqLQTSYVbQPGuRCncU1ubSsh9p/W5QZSxtYcUXv8KGL0xBgPLyNJA1xw==", + "dependencies": { + "estree-util-is-identifier-name": "^2.0.0", + "estree-util-value-to-estree": "^1.3.0", + "reading-time": "^1.3.0", + "unist-util-visit": "^3.1.0" + } + }, + "node_modules/remark-reading-time/node_modules/unist-util-visit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", + "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^4.0.0" }, - "engines": { - "node": ">=18" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/remark-parse": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", - "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", - "dev": true, + "node_modules/remark-reading-time/node_modules/unist-util-visit-parents": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", + "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-from-markdown": "^2.0.0", - "micromark-util-types": "^2.0.0", - "unified": "^11.0.0" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" }, "funding": { "type": "opencollective", @@ -13750,55 +9418,71 @@ } }, "node_modules/remark-rehype": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.0.tgz", - "integrity": "sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==", - "dev": true, + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz", + "integrity": "sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==", "dependencies": { - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "mdast-util-to-hast": "^13.0.0", - "unified": "^11.0.0", - "vfile": "^6.0.0" + "@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-stringify": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-11.0.0.tgz", - "integrity": "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==", - "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==", "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-to-markdown": "^2.0.0", - "unified": "^11.0.0" + "@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/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/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==", + "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/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/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==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, + "node_modules/remove-accents": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.5.0.tgz", + "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==" + }, "node_modules/requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", @@ -13840,15 +9524,6 @@ "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" } }, - "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", @@ -13874,16 +9549,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "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==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, "node_modules/rimraf/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -13904,17 +9569,10 @@ "url": "https://github.com/sponsors/isaacs" } }, - "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==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } + "node_modules/robust-predicates": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", + "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" }, "node_modules/rollup": { "version": "4.14.0", @@ -13947,172 +9605,15 @@ "@rollup/rollup-win32-arm64-msvc": "4.14.0", "@rollup/rollup-win32-ia32-msvc": "4.14.0", "@rollup/rollup-win32-x64-msvc": "4.14.0", - "fsevents": "~2.3.2" - } - }, - "node_modules/rollup-plugin-visualizer": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.12.0.tgz", - "integrity": "sha512-8/NU9jXcHRs7Nnj07PF2o4gjxmm9lXIrZ8r175bT9dK8qoLlvKTwRMArRCMgpMGlq8CTLugRvEmyMeMXIU2pNQ==", - "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" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "rollup": "2.x || 3.x || 4.x" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } - } - }, - "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, - "engines": { - "node": ">= 8" - } - }, - "node_modules/rrweb-cssom": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.6.0.tgz", - "integrity": "sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==", - "dev": true - }, - "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, - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/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.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" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/run-applescript/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, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/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": ">=10.17.0" - } - }, - "node_modules/run-applescript/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, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/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/run-applescript/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, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/run-applescript/node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/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/run-applescript/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" + "fsevents": "~2.3.2" } }, + "node_modules/rrweb-cssom": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.6.0.tgz", + "integrity": "sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==", + "dev": true + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -14136,6 +9637,22 @@ "queue-microtask": "^1.2.2" } }, + "node_modules/rw": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" + }, + "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==", + "dependencies": { + "mri": "^1.1.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/safe-array-concat": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.0.tgz", @@ -14154,35 +9671,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "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", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/safe-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", - "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==", - "dev": true, - "dependencies": { - "regexp-tree": "~0.1.1" - } - }, "node_modules/safe-regex-test": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.2.tgz", @@ -14203,15 +9691,23 @@ "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 + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, - "node_modules/sax": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", - "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==", - "dev": true, - "optional": true + "node_modules/sass": { + "version": "1.77.8", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.8.tgz", + "integrity": "sha512-4UHg6prsrycW20fqLGPShtEvo/WyHRVRHwOP4DzkUrObWoWI05QBSfzU71TVB7PFaL104TwNaHpjlWXAZbQiNQ==", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } }, "node_modules/saxes": { "version": "6.0.0", @@ -14225,16 +9721,38 @@ "node": ">=v12.22.7" } }, - "node_modules/scule": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/scule/-/scule-1.3.0.tgz", - "integrity": "sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==", - "dev": true + "node_modules/scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/scroll-into-view-if-needed": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-3.1.0.tgz", + "integrity": "sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==", + "dependencies": { + "compute-scroll-into-view": "^3.0.2" + } + }, + "node_modules/section-matter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", + "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", + "dependencies": { + "extend-shallow": "^2.0.1", + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=4" + } }, "node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "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": { "lru-cache": "^6.0.0" @@ -14258,96 +9776,6 @@ "node": ">=10" } }, - "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": { - "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" - }, - "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_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/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/serialize-javascript": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", - "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.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==", - "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": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "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.2.0", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.0.tgz", @@ -14378,12 +9806,6 @@ "node": ">= 0.4" } }, - "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", @@ -14405,44 +9827,15 @@ "node": ">=8" } }, - "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, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "deprecated": "Please migrate to https://github.com/antfu/shikiji", - "dev": true - }, - "node_modules/shikiji": { - "version": "0.9.19", - "resolved": "https://registry.npmjs.org/shikiji/-/shikiji-0.9.19.tgz", - "integrity": "sha512-Kw2NHWktdcdypCj1GkKpXH4o6Vxz8B8TykPlPuLHOGSV8VkhoCLcFOH4k19K4LXAQYRQmxg+0X/eM+m2sLhAkg==", - "dev": true, - "dependencies": { - "shikiji-core": "0.9.19" - } - }, - "node_modules/shikiji-core": { - "version": "0.9.19", - "resolved": "https://registry.npmjs.org/shikiji-core/-/shikiji-core-0.9.19.tgz", - "integrity": "sha512-AFJu/vcNT21t0e6YrfadZ+9q86gvPum6iywRyt1OtIPjPFe25RQnYJyxHQPMLKCCWA992TPxmEmbNcOZCAJclw==", - "dev": true - }, - "node_modules/shikiji-transformers": { - "version": "0.9.19", - "resolved": "https://registry.npmjs.org/shikiji-transformers/-/shikiji-transformers-0.9.19.tgz", - "integrity": "sha512-lGLI7Z8frQrIBbhZ74/eiJtxMoCQRbpaHEB+gcfvdIy+ZFaAtXncJGnc52932/UET+Y4GyKtwwC/vjWUCp+c/Q==", - "dev": true, + "node_modules/shiki": { + "version": "0.14.7", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.7.tgz", + "integrity": "sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==", "dependencies": { - "shikiji": "0.9.19" + "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": { @@ -14477,252 +9870,68 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/sigstore": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.2.0.tgz", - "integrity": "sha512-fcU9clHwEss2/M/11FFM8Jwc4PjBgbhXoNskoK5guoK0qGQBSeUbQZRJ+B2fDFIvhyf0gqCaPrel9mszbhAxug==", - "dev": true, - "dependencies": { - "@sigstore/bundle": "^2.1.1", - "@sigstore/core": "^0.2.0", - "@sigstore/protobuf-specs": "^0.2.1", - "@sigstore/sign": "^2.2.1", - "@sigstore/tuf": "^2.3.0", - "@sigstore/verify": "^0.1.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/simple-git": { - "version": "3.22.0", - "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.22.0.tgz", - "integrity": "sha512-6JujwSs0ac82jkGjMHiCnTifvf1crOiY/+tfs/Pqih6iow7VrpNKRRNdWm6RtaXpvvv/JGNYhlUtLhGFqHF+Yw==", - "dev": true, - "dependencies": { - "@kwsites/file-exists": "^1.1.1", - "@kwsites/promise-deferred": "^1.1.1", - "debug": "^4.3.4" - }, - "funding": { - "type": "github", - "url": "https://github.com/steveukx/git-js?sponsor=1" - } - }, - "node_modules/sirv": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz", - "integrity": "sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==", - "dev": true, - "dependencies": { - "@polka/url": "^1.0.0-next.24", - "mrmime": "^2.0.0", - "totalist": "^3.0.0" - }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "engines": { - "node": ">= 10" + "node": ">=8" } }, - "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, + "node_modules/sort-keys": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-5.0.0.tgz", + "integrity": "sha512-Pdz01AvCAottHTPQGzndktFNdbRA75BgOfeT1hH+AMnJFv8lynkPi42rfeEhpx1saTEI3YNMWxfqu0sFD1G8pw==", "dependencies": { - "unicode-emoji-modifier-base": "^1.0.0" + "is-plain-obj": "^4.0.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/slash": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", - "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", - "dev": true, - "engines": { - "node": ">=14.16" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "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, - "engines": { - "node": ">=8.0.0" - } - }, - "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, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/smob": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/smob/-/smob-1.5.0.tgz", - "integrity": "sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==", - "dev": true - }, - "node_modules/socket.io-client": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.4.tgz", - "integrity": "sha512-wh+OkeF0rAVCrABWQBaEjLfb7DVPotMbu0cgWgyR0v6eA4EoVnAwcIeIbcdTE3GT/H3kbdLl7OoH2+asoDRIIg==", - "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_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": ">=10.0.0" - } - }, - "node_modules/socks": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", - "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", - "dev": true, - "license": "MIT", - "dependencies": { - "ip-address": "^9.0.5", - "smart-buffer": "^4.2.0" - }, + "node_modules/sort-keys/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==", "engines": { - "node": ">= 10.0.0", - "npm": ">= 3.0.0" - } - }, - "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" + "node": ">=12" }, - "engines": { - "node": ">= 14" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "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, + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, "node_modules/source-map-js": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", - "dev": true, "engines": { "node": ">=0.10.0" } }, - "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, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, "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, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, - "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": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.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==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "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/sprintf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", - "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", - "dev": true, - "license": "BSD-3-Clause" - }, - "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": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" }, "node_modules/stackback": { "version": "0.0.2", @@ -14730,47 +9939,30 @@ "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", "dev": true }, - "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/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": ">= 0.8" - } - }, "node_modules/std-env": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==", "dev": true }, - "node_modules/streamx": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.16.1.tgz", - "integrity": "sha512-m9QYj6WygWyWa3H1YY69amr4nVgy61xfjys7xO7kviL5rfIEc2naf+ewFiOA+aEJD7y0JO3h2GoiUv4TDwEGzQ==", + "node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", "dev": true, "dependencies": { - "fast-fifo": "^1.1.0", - "queue-tick": "^1.0.1" + "internal-slot": "^1.0.4" }, - "optionalDependencies": { - "bare-events": "^2.2.0" + "engines": { + "node": ">= 0.4" } }, - "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/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "engines": { + "node": ">=10.0.0" } }, "node_modules/string-width": { @@ -14838,6 +10030,26 @@ "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, + "node_modules/string.prototype.matchall": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz", + "integrity": "sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "regexp.prototype.flags": "^1.5.0", + "set-function-name": "^2.0.0", + "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/string.prototype.trim": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz", @@ -14887,7 +10099,6 @@ "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" @@ -14931,6 +10142,22 @@ "node": ">=4" } }, + "node_modules/strip-bom-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/strip-final-newline": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", @@ -14943,18 +10170,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -14985,22 +10200,41 @@ "integrity": "sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==", "dev": true }, - "node_modules/stylehacks": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.1.1.tgz", - "integrity": "sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==", - "dev": true, + "node_modules/style-to-object": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.4.tgz", + "integrity": "sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==", + "dependencies": { + "inline-style-parser": "0.1.1" + } + }, + "node_modules/styled-jsx": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", + "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", "dependencies": { - "browserslist": "^4.23.0", - "postcss-selector-parser": "^6.0.16" + "client-only": "0.0.1" }, "engines": { - "node": "^14 || ^16 || >=18.0" + "node": ">= 12.0.0" }, "peerDependencies": { - "postcss": "^8.4.31" + "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "babel-plugin-macros": { + "optional": true + } } }, + "node_modules/stylis": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz", + "integrity": "sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==" + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -15025,80 +10259,12 @@ "url": "https://github.com/sponsors/ljharb" } }, - "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.2.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz", - "integrity": "sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==", - "dev": true, - "dependencies": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^5.1.0", - "css-tree": "^2.3.1", - "css-what": "^6.1.0", - "csso": "^5.0.5", - "picocolors": "^1.0.0" - }, - "bin": { - "svgo": "bin/svgo" - }, - "engines": { - "node": ">=14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/svgo" - } - }, - "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": ">= 10" - } - }, "node_modules/symbol-tree": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", "dev": true }, - "node_modules/synckit": { - "version": "0.8.8", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz", - "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==", - "dev": true, - "dependencies": { - "@pkgr/core": "^0.1.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts" - } - }, - "node_modules/system-architecture": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/system-architecture/-/system-architecture-0.1.0.tgz", - "integrity": "sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==", - "dev": true, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/tapable": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", @@ -15108,98 +10274,6 @@ "node": ">=6" } }, - "node_modules/tar": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", - "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", - "dev": true, - "license": "ISC", - "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" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/tar-stream": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", - "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", - "dev": true, - "dependencies": { - "b4a": "^1.6.4", - "fast-fifo": "^1.2.0", - "streamx": "^2.15.0" - } - }, - "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": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "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": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "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": ">=8" - } - }, - "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.27.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.27.0.tgz", - "integrity": "sha512-bi1HRwVRskAjheeYl291n3JC4GgO/Ty4z1nVs5AAsmonJulGxpSektecnNedrwK9C7vpvVtcX3cw00VSLt7U2A==", - "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" - }, - "engines": { - "node": ">=10" - } - }, - "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/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", @@ -15214,16 +10288,6 @@ "node": ">=8" } }, - "node_modules/test-exclude/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/test-exclude/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -15244,34 +10308,16 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/test-exclude/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/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 }, - "node_modules/tiny-invariant": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", - "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==", - "dev": true - }, "node_modules/tinybench": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.6.0.tgz", - "integrity": "sha512-N8hW3PG/3aOoZAN5V/NSAEDz0ZixDSSt5b/a05iqtpgfLWMSVuCo7w0k2vVvEjdrIoeGqZzweX2WlyioNIHchA==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz", + "integrity": "sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==", "dev": true }, "node_modules/tinypool": { @@ -15292,16 +10338,90 @@ "node": ">=14.0.0" } }, - "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, + "node_modules/title": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/title/-/title-3.5.3.tgz", + "integrity": "sha512-20JyowYglSEeCvZv3EZ0nZ046vLarO37prvV0mbtQV7C8DJPGgN967r8SJkqd3XK3K3lD3/Iyfp3avjfil8Q2Q==", + "dependencies": { + "arg": "1.0.0", + "chalk": "2.3.0", + "clipboardy": "1.2.2", + "titleize": "1.0.0" + }, + "bin": { + "title": "bin/title.js" + } + }, + "node_modules/title/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, "engines": { - "node": ">=12" + "node": ">=4" + } + }, + "node_modules/title/node_modules/chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", + "dependencies": { + "ansi-styles": "^3.1.0", + "escape-string-regexp": "^1.0.5", + "supports-color": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=4" + } + }, + "node_modules/title/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==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/title/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/title/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/title/node_modules/has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha512-P+1n3MnwjR/Epg9BBo1KT8qbye2g2Ou4sFumihwt6I4tsUX7jnLcX4BTOSKg/B1ZrIYMN9FcEnG4x5a7NB8Eng==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/title/node_modules/supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha512-ycQR/UbvI9xIlEdQT1TQqwoXtEldExbCEAJgRo5YXlmSKjv6ThHnP9/vwGa1gr19Gfw+LkFd7KqYMhzrRC5JYw==", + "dependencies": { + "has-flag": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/titleize": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/titleize/-/titleize-1.0.0.tgz", + "integrity": "sha512-TARUb7z1pGvlLxgPk++7wJ6aycXF3GJ0sNSBTAsTuJrQG5QuZlkUQP+zl+nbjAh4gMX9yDw9ZYklMd7vAfJKEw==", + "engines": { + "node": ">=0.10.0" } }, "node_modules/to-fast-properties": { @@ -15317,7 +10437,6 @@ "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, "license": "MIT", "dependencies": { "is-number": "^7.0.0" @@ -15326,24 +10445,6 @@ "node": ">=8.0" } }, - "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, - "engines": { - "node": ">=0.6" - } - }, - "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/tough-cookie": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", @@ -15352,20 +10453,11 @@ "dependencies": { "psl": "^1.1.33", "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tough-cookie/node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true, + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, "engines": { - "node": ">= 4.0.0" + "node": ">=6" } }, "node_modules/tr46": { @@ -15384,7 +10476,6 @@ "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, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -15394,24 +10485,31 @@ "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/ts-api-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", - "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", + "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", "dev": true, "engines": { - "node": ">=16" + "node": ">=16.13.0" }, "peerDependencies": { "typescript": ">=4.2.0" } }, + "node_modules/ts-dedent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz", + "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==", + "engines": { + "node": ">=6.10" + } + }, "node_modules/tsconfig-paths": { "version": "3.15.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", @@ -15424,37 +10522,10 @@ "strip-bom": "^3.0.0" } }, - "node_modules/tsconfig-paths/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, "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.2.0", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.0.tgz", - "integrity": "sha512-ZSDngmP1z6zw+FIkIBjvOp/II/mIub/O7Pp12j1WNsiCpg5R5wAc//i555bBQsE44O94btLt0xM/Zr2LQjwdCg==", - "dev": true, - "dependencies": { - "@tufjs/models": "2.0.0", - "debug": "^4.3.4", - "make-fetch-happen": "^13.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/type-check": { "version": "0.4.0", @@ -15573,12 +10644,6 @@ "integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==", "dev": true }, - "node_modules/ultrahtml": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/ultrahtml/-/ultrahtml-1.5.3.tgz", - "integrity": "sha512-GykOvZwgDWZlTQMtp5jrD4BVL+gNn2NVlVafjcFUJ7taY20tqYdwdoWBFy6GBJsNTZe1GkGPkSl5knQAjtgceg==", - "dev": true - }, "node_modules/unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", @@ -15594,148 +10659,34 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/uncrypto": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/uncrypto/-/uncrypto-0.1.3.tgz", - "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==", - "dev": true - }, - "node_modules/unctx": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/unctx/-/unctx-2.3.1.tgz", - "integrity": "sha512-PhKke8ZYauiqh3FEMVNm7ljvzQiph0Mt3GBRve03IJm7ukfaON2OBK795tLwhbyfzknuRRkW0+Ze+CQUmzOZ+A==", - "dev": true, - "dependencies": { - "acorn": "^8.8.2", - "estree-walker": "^3.0.3", - "magic-string": "^0.30.0", - "unplugin": "^1.3.1" - } - }, - "node_modules/undici": { - "version": "5.28.4", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", - "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", - "dev": true, - "dependencies": { - "@fastify/busboy": "^2.0.0" - }, - "engines": { - "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.9.0", - "resolved": "https://registry.npmjs.org/unenv/-/unenv-1.9.0.tgz", - "integrity": "sha512-QKnFNznRxmbOF1hDgzpqrlIf6NC5sbZ2OJ+5Wl3OX8uM+LUJXbj4TXvLJCtwbPTmbMHCLIz6JLKNinNsMShK9g==", - "dev": true, - "dependencies": { - "consola": "^3.2.3", - "defu": "^6.1.3", - "mime": "^3.0.0", - "node-fetch-native": "^1.6.1", - "pathe": "^1.1.1" - } - }, - "node_modules/unenv/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/unhead": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/unhead/-/unhead-1.9.4.tgz", - "integrity": "sha512-QVU0y3KowRu2cLjXxfemTKNohK4vdEwyahoszlEnRz0E5BTNRZQSs8AnommorGmVM7DvB2t4dwWadB51wDlPzw==", - "dev": true, - "dependencies": { - "@unhead/dom": "1.9.4", - "@unhead/schema": "1.9.4", - "@unhead/shared": "1.9.4", - "hookable": "^5.5.3" - }, - "funding": { - "url": "https://github.com/sponsors/harlan-zw" - } - }, - "node_modules/unicode-emoji-modifier-base": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unicode-emoji-modifier-base/-/unicode-emoji-modifier-base-1.0.0.tgz", - "integrity": "sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicorn-magic": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz", - "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", - "dev": true, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/unified": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", - "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", - "dev": true, + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", "dependencies": { - "@types/unist": "^3.0.0", + "@types/unist": "^2.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": "^6.0.0" + "vfile": "^5.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/unimport": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/unimport/-/unimport-3.7.1.tgz", - "integrity": "sha512-V9HpXYfsZye5bPPYUgs0Otn3ODS1mDUciaBlXljI4C2fTwfFpvFZRywmlOu943puN9sncxROMZhsZCjNXEpzEQ==", - "dev": true, - "dependencies": { - "@rollup/pluginutils": "^5.1.0", - "acorn": "^8.11.2", - "escape-string-regexp": "^5.0.0", - "estree-walker": "^3.0.3", - "fast-glob": "^3.3.2", - "local-pkg": "^0.5.0", - "magic-string": "^0.30.5", - "mlly": "^1.4.2", - "pathe": "^1.1.1", - "pkg-types": "^1.0.3", - "scule": "^1.1.1", - "strip-literal": "^1.3.0", - "unplugin": "^1.5.1" - } - }, - "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, + "node_modules/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==", "engines": { "node": ">=12" }, @@ -15743,62 +10694,51 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/unimport/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, + "node_modules/unist-util-find-after": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", + "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", "dependencies": { - "acorn": "^8.10.0" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" }, "funding": { - "url": "https://github.com/sponsors/antfu" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/unique-filename": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", - "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", - "dev": true, - "dependencies": { - "unique-slug": "^4.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } + "node_modules/unist-util-find-after/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" }, - "node_modules/unique-slug": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", - "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", - "dev": true, + "node_modules/unist-util-find-after/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==", "dependencies": { - "imurmurhash": "^0.1.4" + "@types/unist": "^3.0.0" }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/unist-builder": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-4.0.0.tgz", - "integrity": "sha512-wmRFnH+BLpZnTKpc5L7O67Kac89s9HMrtELpnNaE6TAobq5DTZZs5YaTQfAZBA9bFPECx2uVAPO31c+GVug8mg==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0" - }, + "node_modules/unist-util-generated": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", + "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==", "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, "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, + "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==", "dependencies": { - "@types/unist": "^3.0.0" + "@types/unist": "^2.0.0" }, "funding": { "type": "opencollective", @@ -15806,36 +10746,33 @@ } }, "node_modules/unist-util-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", - "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", - "dev": true, + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", + "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", "dependencies": { - "@types/unist": "^3.0.0" + "@types/unist": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/unist-util-position-from-estree": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-1.1.2.tgz", + "integrity": "sha512-poZa0eXpS+/XpoQwGwl79UUdea4ol2ZuCYguVaJS4qzIOMDzbqz8a3erUCOmubSZkaOuGamb3tX790iwOIROww==", "dependencies": { - "@types/unist": "^3.0.0" + "@types/unist": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/unist-util-remove": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-4.0.0.tgz", + "integrity": "sha512-b4gokeGId57UVRX/eVKej5gXqGlc9+trkORhFJpu9raqZkZhU0zm8Doi05+HaiBsMEIJowL+2WtQ5ItjsngPXg==", "dependencies": { "@types/unist": "^3.0.0", "unist-util-is": "^6.0.0", @@ -15846,221 +10783,121 @@ "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/unist-util-remove-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz", + "integrity": "sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==", "dependencies": { "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" + "unist-util-visit": "^5.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/universalify": { - "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" - } + "node_modules/unist-util-remove-position/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" }, - "node_modules/unplugin": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.10.1.tgz", - "integrity": "sha512-d6Mhq8RJeGA8UfKCu54Um4lFA0eSaRa3XxdAJg8tIdxbu1ubW0hBCZUL7yI2uGyYCRndvbK8FLHzqy2XKfeMsg==", - "dev": true, - "dependencies": { - "acorn": "^8.11.3", - "chokidar": "^3.6.0", - "webpack-sources": "^3.2.3", - "webpack-virtual-modules": "^0.6.1" - }, - "engines": { - "node": ">=14.0.0" - } + "node_modules/unist-util-remove/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" }, - "node_modules/unplugin-vue-router": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/unplugin-vue-router/-/unplugin-vue-router-0.7.0.tgz", - "integrity": "sha512-ddRreGq0t5vlSB7OMy4e4cfU1w2AwBQCwmvW3oP/0IHQiokzbx4hd3TpwBu3eIAFVuhX2cwNQwp1U32UybTVCw==", - "dev": true, + "node_modules/unist-util-remove/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==", "dependencies": { - "@babel/types": "^7.22.19", - "@rollup/pluginutils": "^5.0.4", - "@vue-macros/common": "^1.8.0", - "ast-walker-scope": "^0.5.0", - "chokidar": "^3.5.3", - "fast-glob": "^3.3.1", - "json5": "^2.2.3", - "local-pkg": "^0.4.3", - "mlly": "^1.4.2", - "pathe": "^1.1.1", - "scule": "^1.0.0", - "unplugin": "^1.5.0", - "yaml": "^2.3.2" - }, - "peerDependencies": { - "vue-router": "^4.1.0" + "@types/unist": "^3.0.0" }, - "peerDependenciesMeta": { - "vue-router": { - "optional": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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" + "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==", + "dependencies": { + "@types/unist": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/antfu" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/unstorage": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/unstorage/-/unstorage-1.10.2.tgz", - "integrity": "sha512-cULBcwDqrS8UhlIysUJs2Dk0Mmt8h7B0E6mtR+relW9nZvsf/u4SkAYyNliPiPW7XtFNb5u3IUMkxGxFTTRTgQ==", - "dev": true, + "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==", "dependencies": { - "anymatch": "^3.1.3", - "chokidar": "^3.6.0", - "destr": "^2.0.3", - "h3": "^1.11.1", - "listhen": "^1.7.2", - "lru-cache": "^10.2.0", - "mri": "^1.2.0", - "node-fetch-native": "^1.6.2", - "ofetch": "^1.3.3", - "ufo": "^1.4.0" - }, - "peerDependencies": { - "@azure/app-configuration": "^1.5.0", - "@azure/cosmos": "^4.0.0", - "@azure/data-tables": "^13.2.2", - "@azure/identity": "^4.0.1", - "@azure/keyvault-secrets": "^4.8.0", - "@azure/storage-blob": "^12.17.0", - "@capacitor/preferences": "^5.0.7", - "@netlify/blobs": "^6.5.0 || ^7.0.0", - "@planetscale/database": "^1.16.0", - "@upstash/redis": "^1.28.4", - "@vercel/kv": "^1.0.1", - "idb-keyval": "^6.2.1", - "ioredis": "^5.3.2" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" }, - "peerDependenciesMeta": { - "@azure/app-configuration": { - "optional": true - }, - "@azure/cosmos": { - "optional": true - }, - "@azure/data-tables": { - "optional": true - }, - "@azure/identity": { - "optional": true - }, - "@azure/keyvault-secrets": { - "optional": true - }, - "@azure/storage-blob": { - "optional": true - }, - "@capacitor/preferences": { - "optional": true - }, - "@netlify/blobs": { - "optional": true - }, - "@planetscale/database": { - "optional": true - }, - "@upstash/redis": { - "optional": true - }, - "@vercel/kv": { - "optional": true - }, - "idb-keyval": { - "optional": true - }, - "ioredis": { - "optional": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/unstorage/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "dev": true, - "engines": { - "node": "14 || >=16.14" + "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==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "dev": true, - "engines": { - "node": ">=8" - } + "node_modules/unist-util-visit-parents/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" }, - "node_modules/untun": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/untun/-/untun-0.1.3.tgz", - "integrity": "sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ==", - "dev": true, + "node_modules/unist-util-visit-parents/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==", "dependencies": { - "citty": "^0.1.5", - "consola": "^3.2.3", - "pathe": "^1.1.1" + "@types/unist": "^3.0.0" }, - "bin": { - "untun": "bin/untun.mjs" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/untyped": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/untyped/-/untyped-1.4.2.tgz", - "integrity": "sha512-nC5q0DnPEPVURPhfPQLahhSTnemVtPzdx7ofiRxXpOB2SYnb3MfdU3DVGyJdS8Lx+tBWeAePO8BfU/3EgksM7Q==", - "dev": true, + "node_modules/unist-util-visit/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/unist-util-visit/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==", "dependencies": { - "@babel/core": "^7.23.7", - "@babel/standalone": "^7.23.8", - "@babel/types": "^7.23.6", - "defu": "^6.1.4", - "jiti": "^1.21.0", - "mri": "^1.2.0", - "scule": "^1.2.0" + "@types/unist": "^3.0.0" }, - "bin": { - "untyped": "dist/cli.mjs" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/unwasm": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/unwasm/-/unwasm-0.3.9.tgz", - "integrity": "sha512-LDxTx/2DkFURUd+BU1vUsF/moj0JsoTvl+2tcg2AUOiEzVturhGGx17/IMgGvKUYdZwr33EJHtChCJuhu9Ouvg==", + "node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", "dev": true, - "dependencies": { - "knitwork": "^1.0.0", - "magic-string": "^0.30.8", - "mlly": "^1.6.1", - "pathe": "^1.1.2", - "pkg-types": "^1.0.3", - "unplugin": "^1.10.0" + "engines": { + "node": ">= 4.0.0" } }, "node_modules/update-browserslist-db": { @@ -16093,12 +10930,6 @@ "browserslist": ">= 4.21.0" } }, - "node_modules/uqr": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/uqr/-/uqr-0.1.2.tgz", - "integrity": "sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==", - "dev": true - }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -16118,45 +10949,84 @@ "requires-port": "^1.0.0" } }, - "node_modules/urlpattern-polyfill": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-8.0.2.tgz", - "integrity": "sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ==", - "dev": true + "node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" + } }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true + "node_modules/uvu": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz", + "integrity": "sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==", + "dependencies": { + "dequal": "^2.0.0", + "diff": "^5.0.0", + "kleur": "^4.0.3", + "sade": "^1.7.3" + }, + "bin": { + "uvu": "bin.js" + }, + "engines": { + "node": ">=8" + } }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, + "node_modules/vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/validate-npm-package-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", - "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", - "dev": true, + "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==", "dependencies": { - "builtins": "^5.0.0" + "@types/unist": "^3.0.0", + "vfile": "^6.0.0" }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/vfile": { + "node_modules/vfile-location/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/vfile-location/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==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-location/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", @@ -16167,14 +11037,14 @@ "url": "https://opencollective.com/unified" } }, - "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, + "node_modules/vfile-matter": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/vfile-matter/-/vfile-matter-3.0.1.tgz", + "integrity": "sha512-CAAIDwnh6ZdtrqAuxdElUqQRQDQgbbIrYtDYI8gCjXS1qQ+1XdLoK8FIZWxJwn0/I+BkSSZpar3SOgjemQz4fg==", "dependencies": { - "@types/unist": "^3.0.0", - "vfile": "^6.0.0" + "@types/js-yaml": "^4.0.0", + "is-buffer": "^2.0.0", + "js-yaml": "^4.0.0" }, "funding": { "type": "opencollective", @@ -16185,7 +11055,6 @@ "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" @@ -16195,6 +11064,36 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/vfile-message/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/vfile-message/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==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/vite": { "version": "5.2.8", "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.8.tgz", @@ -16272,195 +11171,32 @@ "url": "https://opencollective.com/vitest" } }, - "node_modules/vite-plugin-checker": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/vite-plugin-checker/-/vite-plugin-checker-0.6.4.tgz", - "integrity": "sha512-2zKHH5oxr+ye43nReRbC2fny1nyARwhxdm0uNYp/ERy4YvU9iZpNOsueoi/luXw5gnpqRSvjcEPxXbS153O2wA==", + "node_modules/vite/node_modules/postcss": { + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "ansi-escapes": "^4.3.0", - "chalk": "^4.1.1", - "chokidar": "^3.5.1", - "commander": "^8.0.0", - "fast-glob": "^3.2.7", - "fs-extra": "^11.1.0", - "npm-run-path": "^4.0.1", - "semver": "^7.5.0", - "strip-ansi": "^6.0.0", - "tiny-invariant": "^1.1.0", - "vscode-languageclient": "^7.0.0", - "vscode-languageserver": "^7.0.0", - "vscode-languageserver-textdocument": "^1.0.1", - "vscode-uri": "^3.0.2" - }, - "engines": { - "node": ">=14.16" - }, - "peerDependencies": { - "eslint": ">=7", - "meow": "^9.0.0", - "optionator": "^0.9.1", - "stylelint": ">=13", - "typescript": "*", - "vite": ">=2.0.0", - "vls": "*", - "vti": "*", - "vue-tsc": ">=1.3.9" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - }, - "meow": { - "optional": true - }, - "optionator": { - "optional": true - }, - "stylelint": { - "optional": true - }, - "typescript": { - "optional": true - }, - "vls": { - "optional": true + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" }, - "vti": { - "optional": true + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" }, - "vue-tsc": { - "optional": true + { + "type": "github", + "url": "https://github.com/sponsors/ai" } - } - }, - "node_modules/vite-plugin-checker/node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "dev": true, - "engines": { - "node": ">= 12" - } - }, - "node_modules/vite-plugin-checker/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, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vite-plugin-inspect": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/vite-plugin-inspect/-/vite-plugin-inspect-0.8.1.tgz", - "integrity": "sha512-oPBPVGp6tBd5KdY/qY6lrbLXqrbHRG0hZLvEaJfiZ/GQfDB+szRuLHblQh1oi1Hhh8GeLit/50l4xfs2SA+TCA==", - "dev": true, + ], "dependencies": { - "@antfu/utils": "^0.7.6", - "@rollup/pluginutils": "^5.0.5", - "debug": "^4.3.4", - "error-stack-parser-es": "^0.1.1", - "fs-extra": "^11.1.1", - "open": "^9.1.0", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", - "sirv": "^2.0.3" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "vite": "^3.1.0 || ^4.0.0 || ^5.0.0-0" - }, - "peerDependenciesMeta": { - "@nuxt/kit": { - "optional": true - } - } - }, - "node_modules/vite-plugin-inspect/node_modules/define-lazy-prop": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", - "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/vite-plugin-inspect/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, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/vite-plugin-inspect/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, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vite-plugin-inspect/node_modules/open": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz", - "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==", - "dev": true, - "dependencies": { - "default-browser": "^4.0.0", - "define-lazy-prop": "^3.0.0", - "is-inside-container": "^1.0.0", - "is-wsl": "^2.2.0" + "source-map-js": "^1.2.0" }, "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/vite-plugin-vue-inspector": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/vite-plugin-vue-inspector/-/vite-plugin-vue-inspector-4.0.2.tgz", - "integrity": "sha512-KPvLEuafPG13T7JJuQbSm5PwSxKFnVS965+MP1we2xGw9BPkkc/+LPix5MMWenpKWqtjr0ws8THrR+KuoDC8hg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.23.0", - "@babel/plugin-proposal-decorators": "^7.23.0", - "@babel/plugin-syntax-import-attributes": "^7.22.5", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-transform-typescript": "^7.22.15", - "@vue/babel-plugin-jsx": "^1.1.5", - "@vue/compiler-dom": "^3.3.4", - "kolorist": "^1.8.0", - "magic-string": "^0.30.4" - }, - "peerDependencies": { - "vite": "^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0" + "node": "^10 || ^12 || >=14" } }, "node_modules/vitest": { @@ -16528,182 +11264,90 @@ } } }, - "node_modules/vitest-environment-nuxt": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/vitest-environment-nuxt/-/vitest-environment-nuxt-1.0.0.tgz", - "integrity": "sha512-AWMO9h4HdbaFdPWZw34gALFI8gbBiOpvfbyeZwHIPfh4kWg/TwElYHvYMQ61WPUlCGaS5LebfHkaI0WPyb//Iw==", - "dev": true, - "dependencies": { - "@nuxt/test-utils": ">=3.9.0" - } - }, - "node_modules/vscode-jsonrpc": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-6.0.0.tgz", - "integrity": "sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg==", - "dev": true, - "engines": { - "node": ">=8.0.0 || >=10.0.0" - } - }, - "node_modules/vscode-languageclient": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-7.0.0.tgz", - "integrity": "sha512-P9AXdAPlsCgslpP9pRxYPqkNYV7Xq8300/aZDpO35j1fJm/ncize8iGswzYlcvFw5DQUx4eVk+KvfXdL0rehNg==", + "node_modules/vitest/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", "dev": true, "dependencies": { - "minimatch": "^3.0.4", - "semver": "^7.3.4", - "vscode-languageserver-protocol": "3.16.0" + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" }, "engines": { - "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" + "node": ">=16.17" }, - "engines": { - "node": "*" + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/vscode-languageserver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-7.0.0.tgz", - "integrity": "sha512-60HTx5ID+fLRcgdHfmz0LDZAXYEV68fzwG0JWwEPBode9NuMYTIxuYXPg4ngO8i8+Ou0lM7y6GzaYWbiDL0drw==", + "node_modules/vitest/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", "dev": true, - "dependencies": { - "vscode-languageserver-protocol": "3.16.0" + "engines": { + "node": ">=16" }, - "bin": { - "installServerIntoExtension": "bin/installServerIntoExtension" - } - }, - "node_modules/vscode-languageserver-protocol": { - "version": "3.16.0", - "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.16.0.tgz", - "integrity": "sha512-sdeUoAawceQdgIfTI+sdcwkiK2KU+2cbEYA0agzM2uqaUy2UpnnGHtWTHVEtS0ES4zHU0eMFRGN+oQgDxlD66A==", - "dev": true, - "dependencies": { - "vscode-jsonrpc": "6.0.0", - "vscode-languageserver-types": "3.16.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/vscode-languageserver-textdocument": { - "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": { - "version": "3.16.0", - "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz", - "integrity": "sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==", - "dev": true - }, - "node_modules/vscode-uri": { - "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.4.15", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.15.tgz", - "integrity": "sha512-jC0GH4KkWLWJOEQjOpkqU1bQsBwf4R1rsFtw5GQJbjHVKWDzO6P0nWWBTmjp1xSemAioDFj1jdaK1qa3DnMQoQ==", + "node_modules/vitest/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, - "peer": true, - "dependencies": { - "@vue/compiler-dom": "3.4.15", - "@vue/compiler-sfc": "3.4.15", - "@vue/runtime-dom": "3.4.15", - "@vue/server-renderer": "3.4.15", - "@vue/shared": "3.4.15" - }, - "peerDependencies": { - "typescript": "*" + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/vue-bundle-renderer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/vue-bundle-renderer/-/vue-bundle-renderer-2.0.0.tgz", - "integrity": "sha512-oYATTQyh8XVkUWe2kaKxhxKVuuzK2Qcehe+yr3bGiaQAhK3ry2kYE4FWOfL+KO3hVFwCdLmzDQTzYhTi9C+R2A==", - "dev": true, - "dependencies": { - "ufo": "^1.2.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/vue-component-type-helpers": { - "version": "1.8.27", - "resolved": "https://registry.npmjs.org/vue-component-type-helpers/-/vue-component-type-helpers-1.8.27.tgz", - "integrity": "sha512-0vOfAtI67UjeO1G6UiX5Kd76CqaQ67wrRZiOe7UAb9Jm6GzlUr/fC7CV90XfwapJRjpCMaZFhv1V0ajWRmE9Dg==", - "dev": 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", - "integrity": "sha512-RutnB7X8c5hjq39NceArgXg28WZtZpGc3+J16ljMiYnFhKvd8hITxSWQSQ5bvldxMDU6gG5mkxl1MTQLXckVSQ==", - "dev": true - }, - "node_modules/vue-eslint-parser": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.4.0.tgz", - "integrity": "sha512-7KsNBb6gHFA75BtneJsoK/dbZ281whUIwFYdQxA68QrCrGMXYzUMbPDHGcOQ0OocIVKrWSKWXZ4mL7tonCXoUw==", + "node_modules/vitest/node_modules/npm-run-path": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", + "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", "dev": true, "dependencies": { - "debug": "^4.3.4", - "eslint-scope": "^7.1.1", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.3.1", - "esquery": "^1.4.0", - "lodash": "^4.17.21", - "semver": "^7.3.6" + "path-key": "^4.0.0" }, "engines": { - "node": "^14.17.0 || >=16.0.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=6.0.0" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/vue-router": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.3.0.tgz", - "integrity": "sha512-dqUcs8tUeG+ssgWhcPbjHvazML16Oga5w34uCUmsk7i0BcnskoLGwjpa15fqMr2Fa5JgVBrdL2MEgqz6XZ/6IQ==", + "node_modules/vitest/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, - "dependencies": { - "@vue/devtools-api": "^6.5.1" + "engines": { + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/posva" - }, - "peerDependencies": { - "vue": "^3.2.0" + "url": "https://github.com/sponsors/sindresorhus" } }, + "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==" + }, + "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==" + }, "node_modules/w3c-xmlserializer": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", @@ -16716,25 +11360,20 @@ "node": ">=18" } }, - "node_modules/w3c-xmlserializer/node_modules/xml-name-validator": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", - "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", - "dev": true, - "engines": { - "node": ">=18" - } - }, "node_modules/web-namespaces": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", - "dev": true, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/web-worker": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/web-worker/-/web-worker-1.3.0.tgz", + "integrity": "sha512-BSR9wyRsy/KOValMgd5kMyr3JzpdeoR9KVId8u5GVlTTAtNChlsE4yTxeY7zMdNSyOmoKBv8NH2qeRY9Tg+IaA==" + }, "node_modules/webidl-conversions": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", @@ -16744,40 +11383,25 @@ "node": ">=12" } }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack-virtual-modules": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.1.tgz", - "integrity": "sha512-poXpCylU7ExuvZK8z+On3kX+S8o/2dQ/SVYueKA0D4WEMXROXgY8Ez50/bQEUmvoSMMrWcrJqCHuhAbsiwg7Dg==", - "dev": true - }, "node_modules/whatwg-encoding": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", - "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", + "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", "dev": true, "dependencies": { "iconv-lite": "0.6.3" }, "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/whatwg-mimetype": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", - "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", + "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", "dev": true, "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/whatwg-url": { @@ -16824,6 +11448,47 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/which-builtin-type": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", + "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", + "dev": true, + "dependencies": { + "function.prototype.name": "^1.1.5", + "has-tostringtag": "^1.0.0", + "is-async-function": "^2.0.0", + "is-date-object": "^1.0.5", + "is-finalizationregistry": "^1.0.2", + "is-generator-function": "^1.0.10", + "is-regex": "^1.1.4", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "dev": true, + "dependencies": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/which-typed-array": { "version": "1.1.13", "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", @@ -16859,35 +11524,6 @@ "node": ">=8" } }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/wide-align/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/wide-align/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": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/wrap-ansi": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", @@ -16993,6 +11629,7 @@ "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=10.0.0" }, @@ -17010,12 +11647,12 @@ } }, "node_modules/xml-name-validator": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", - "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", + "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", "dev": true, "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/xmlchars": { @@ -17024,91 +11661,16 @@ "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", "dev": true }, - "node_modules/xmlhttprequest-ssl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz", - "integrity": "sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "node_modules/yaml": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", - "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==", - "dev": true, - "engines": { - "node": ">= 14" - } - }, - "node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - "dev": true, - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs/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==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, - "node_modules/yargs/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": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, "engines": { "node": ">=10" }, @@ -17116,34 +11678,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/zhead": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/zhead/-/zhead-2.2.4.tgz", - "integrity": "sha512-8F0OI5dpWIA5IGG5NHUg9staDwz/ZPxZtvGVf01j7vHqSyZ0raHY+78atOVxRqb73AotX22uV1pXt3gYSstGag==", - "dev": true, + "node_modules/zod": { + "version": "3.22.4", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz", + "integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==", "funding": { - "url": "https://github.com/sponsors/harlan-zw" - } - }, - "node_modules/zip-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-6.0.1.tgz", - "integrity": "sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA==", - "dev": true, - "dependencies": { - "archiver-utils": "^5.0.0", - "compress-commons": "^6.0.2", - "readable-stream": "^4.0.0" - }, - "engines": { - "node": ">= 14" + "url": "https://github.com/sponsors/colinhacks" } }, "node_modules/zwitch": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", - "dev": true, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" diff --git a/agdb_web/package.json b/agdb_web/package.json index 7d9949755..6cdd7e0c4 100644 --- a/agdb_web/package.json +++ b/agdb_web/package.json @@ -1,41 +1,40 @@ { + "name": "agdb_web_next", + "version": "0.1.0", "private": true, - "type": "module", "scripts": { - "build": "nuxt build", - "dev": "nuxt dev", - "generate": "nuxt generate", - "preview": "nuxt preview", + "dev": "next dev -p 5001", + "build": "next build", + "start": "next start", + "lint": "next lint", "format": "prettier . --write", "format:check": "prettier . --check", - "lint": "eslint --max-warnings=0 . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore", - "test:unit": "vitest run --coverage", + "test": "vitest run --coverage", "test:e2e": "playwright test", - "before-commit": "npm run format && npm run lint && npm run test:unit && npm run test:e2e" + "before-commit": "npm run format && npm run lint && npm run test && npm run test:e2e" + }, + "dependencies": { + "next": "14.1.1", + "nextra": "^2.13.2", + "nextra-theme-docs": "^2.13.2", + "react": "^18", + "react-dom": "^18", + "sass": "^1.77.5" }, "devDependencies": { - "@nuxt/content": "^2.10.0", - "@nuxt/test-utils": "^3.9.0", - "@nuxtjs/eslint-config-typescript": "^12.1.0", - "@playwright/test": "^1.40.1", - "@tsconfig/node18": "^18.2.2", - "@types/jsdom": "^21.1.6", - "@types/node": "^20.10.6", - "@typescript-eslint/parser": "^6.16.0", - "@vitejs/plugin-vue": "^5.0.2", + "@playwright/test": "^1.41.1", + "@testing-library/react": "^14.1.2", + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "@vitejs/plugin-react": "^4.2.1", "@vitest/coverage-v8": "^1.5.3", - "@vue/test-utils": "^2.4.3", - "eslint": "^8.56.0", + "eslint": "^8", + "eslint-config-next": "14.1.0", "eslint-config-prettier": "^9.1.0", - "eslint-plugin-prettier": "^5.1.2", - "eslint-plugin-vitest": "^0.5.4", - "happy-dom": "^12.10.3", - "jsdom": "^23.0.1", - "less": "^4.2.0", - "nuxt": "^3.11.1", - "playwright-core": "^1.40.1", - "prettier": "3.1.1", - "typescript": "^5.3.3", + "jsdom": "^24.0.0", + "prettier": "^3.2.4", + "typescript": "^5", "vitest": "^1.5.3" } } diff --git a/agdb_web/pages/[...slug].vue b/agdb_web/pages/[...slug].vue deleted file mode 100644 index 1f4555768..000000000 --- a/agdb_web/pages/[...slug].vue +++ /dev/null @@ -1,32 +0,0 @@ - - diff --git a/agdb_web_next/pages/_app.mdx b/agdb_web/pages/_app.mdx similarity index 100% rename from agdb_web_next/pages/_app.mdx rename to agdb_web/pages/_app.mdx diff --git a/agdb_web_next/pages/_meta.cs-CZ.json b/agdb_web/pages/_meta.cs-CZ.json similarity index 88% rename from agdb_web_next/pages/_meta.cs-CZ.json rename to agdb_web/pages/_meta.cs-CZ.json index d666678dd..ede525e9c 100644 --- a/agdb_web_next/pages/_meta.cs-CZ.json +++ b/agdb_web/pages/_meta.cs-CZ.json @@ -10,7 +10,7 @@ "api-docs": { "title": "API", "type": "page", - "display": "visible", + "display": "normal", "theme": { "sidebar": true, "toc": true, @@ -20,7 +20,7 @@ "enterprise": { "title": "Enterprise", "type": "page", - "display": "visible", + "display": "normal", "theme": { "sidebar": true, "toc": true, @@ -30,7 +30,7 @@ "blog": { "title": "Blog", "type": "page", - "display": "visible", + "display": "normal", "theme": { "sidebar": true, "toc": true, @@ -40,7 +40,7 @@ "docs": { "title": "Docs", "type": "page", - "display": "visible", + "display": "normal", "theme": { "sidebar": true, "toc": true, diff --git a/agdb_web_next/pages/_meta.en-US.json b/agdb_web/pages/_meta.en-US.json similarity index 88% rename from agdb_web_next/pages/_meta.en-US.json rename to agdb_web/pages/_meta.en-US.json index d666678dd..ede525e9c 100644 --- a/agdb_web_next/pages/_meta.en-US.json +++ b/agdb_web/pages/_meta.en-US.json @@ -10,7 +10,7 @@ "api-docs": { "title": "API", "type": "page", - "display": "visible", + "display": "normal", "theme": { "sidebar": true, "toc": true, @@ -20,7 +20,7 @@ "enterprise": { "title": "Enterprise", "type": "page", - "display": "visible", + "display": "normal", "theme": { "sidebar": true, "toc": true, @@ -30,7 +30,7 @@ "blog": { "title": "Blog", "type": "page", - "display": "visible", + "display": "normal", "theme": { "sidebar": true, "toc": true, @@ -40,7 +40,7 @@ "docs": { "title": "Docs", "type": "page", - "display": "visible", + "display": "normal", "theme": { "sidebar": true, "toc": true, diff --git a/agdb_web_next/pages/about.cs-CZ.mdx b/agdb_web/pages/about.cs-CZ.mdx similarity index 100% rename from agdb_web_next/pages/about.cs-CZ.mdx rename to agdb_web/pages/about.cs-CZ.mdx diff --git a/agdb_web_next/pages/about.en-US.mdx b/agdb_web/pages/about.en-US.mdx similarity index 100% rename from agdb_web_next/pages/about.en-US.mdx rename to agdb_web/pages/about.en-US.mdx diff --git a/agdb_web_next/pages/api-docs/_meta.cs-CZ.json b/agdb_web/pages/api-docs/_meta.cs-CZ.json similarity index 77% rename from agdb_web_next/pages/api-docs/_meta.cs-CZ.json rename to agdb_web/pages/api-docs/_meta.cs-CZ.json index e5461f83e..b5be0d154 100644 --- a/agdb_web_next/pages/api-docs/_meta.cs-CZ.json +++ b/agdb_web/pages/api-docs/_meta.cs-CZ.json @@ -4,6 +4,6 @@ }, "openapi": { "title": "OpenAPI", - "display": "visible" + "display": "normal" } } diff --git a/agdb_web_next/pages/api-docs/_meta.en-US.json b/agdb_web/pages/api-docs/_meta.en-US.json similarity index 68% rename from agdb_web_next/pages/api-docs/_meta.en-US.json rename to agdb_web/pages/api-docs/_meta.en-US.json index 790a93729..bcc5e2c14 100644 --- a/agdb_web_next/pages/api-docs/_meta.en-US.json +++ b/agdb_web/pages/api-docs/_meta.en-US.json @@ -4,18 +4,18 @@ }, "openapi": { "title": "OpenAPI", - "display": "visible" + "display": "normal" }, "rust": { "title": "Rust", - "display": "visible" + "display": "normal" }, "typescript": { "title": "TypeScript", - "display": "visible" + "display": "normal" }, "python": { "title": "Python", - "display": "visible" + "display": "normal" } } diff --git a/agdb_web_next/pages/api-docs/openapi.cs-CZ.mdx b/agdb_web/pages/api-docs/openapi.cs-CZ.mdx similarity index 100% rename from agdb_web_next/pages/api-docs/openapi.cs-CZ.mdx rename to agdb_web/pages/api-docs/openapi.cs-CZ.mdx diff --git a/agdb_web_next/pages/api-docs/openapi.en-US.mdx b/agdb_web/pages/api-docs/openapi.en-US.mdx similarity index 100% rename from agdb_web_next/pages/api-docs/openapi.en-US.mdx rename to agdb_web/pages/api-docs/openapi.en-US.mdx diff --git a/agdb_web_next/pages/api-docs/python.en-US.mdx b/agdb_web/pages/api-docs/python.en-US.mdx similarity index 100% rename from agdb_web_next/pages/api-docs/python.en-US.mdx rename to agdb_web/pages/api-docs/python.en-US.mdx diff --git a/agdb_web_next/pages/api-docs/rust.en-US.mdx b/agdb_web/pages/api-docs/rust.en-US.mdx similarity index 100% rename from agdb_web_next/pages/api-docs/rust.en-US.mdx rename to agdb_web/pages/api-docs/rust.en-US.mdx diff --git a/agdb_web_next/pages/api-docs/typescript.en-US.mdx b/agdb_web/pages/api-docs/typescript.en-US.mdx similarity index 100% rename from agdb_web_next/pages/api-docs/typescript.en-US.mdx rename to agdb_web/pages/api-docs/typescript.en-US.mdx diff --git a/agdb_web_next/pages/blog/_meta.cs-CZ.json b/agdb_web/pages/blog/_meta.cs-CZ.json similarity index 75% rename from agdb_web_next/pages/blog/_meta.cs-CZ.json rename to agdb_web/pages/blog/_meta.cs-CZ.json index d4f6730da..046f00d8c 100644 --- a/agdb_web_next/pages/blog/_meta.cs-CZ.json +++ b/agdb_web/pages/blog/_meta.cs-CZ.json @@ -4,6 +4,6 @@ }, "blog": { "title": "Blog", - "display": "visible" + "display": "normal" } -} \ No newline at end of file +} diff --git a/agdb_web_next/pages/blog/_meta.en-US.json b/agdb_web/pages/blog/_meta.en-US.json similarity index 72% rename from agdb_web_next/pages/blog/_meta.en-US.json rename to agdb_web/pages/blog/_meta.en-US.json index 84083f6c2..437615977 100644 --- a/agdb_web_next/pages/blog/_meta.en-US.json +++ b/agdb_web/pages/blog/_meta.en-US.json @@ -4,10 +4,10 @@ }, "blog": { "title": "Blog", - "display": "visible" + "display": "normal" }, "why-not-sql": { "title": "Why Not SQL?", - "display": "visible" + "display": "normal" } } diff --git a/agdb_web_next/pages/blog/blog.cs-CZ.mdx b/agdb_web/pages/blog/blog.cs-CZ.mdx similarity index 100% rename from agdb_web_next/pages/blog/blog.cs-CZ.mdx rename to agdb_web/pages/blog/blog.cs-CZ.mdx diff --git a/agdb_web_next/pages/blog/blog.en-US.mdx b/agdb_web/pages/blog/blog.en-US.mdx similarity index 100% rename from agdb_web_next/pages/blog/blog.en-US.mdx rename to agdb_web/pages/blog/blog.en-US.mdx diff --git a/agdb_web_next/pages/blog/why-not-sql.en-US.mdx b/agdb_web/pages/blog/why-not-sql.en-US.mdx similarity index 100% rename from agdb_web_next/pages/blog/why-not-sql.en-US.mdx rename to agdb_web/pages/blog/why-not-sql.en-US.mdx diff --git a/agdb_web_next/pages/contact.cs-CZ.mdx b/agdb_web/pages/contact.cs-CZ.mdx similarity index 100% rename from agdb_web_next/pages/contact.cs-CZ.mdx rename to agdb_web/pages/contact.cs-CZ.mdx diff --git a/agdb_web_next/pages/contact.en-US.mdx b/agdb_web/pages/contact.en-US.mdx similarity index 100% rename from agdb_web_next/pages/contact.en-US.mdx rename to agdb_web/pages/contact.en-US.mdx diff --git a/agdb_web_next/pages/docs/_meta.cs-CZ.json b/agdb_web/pages/docs/_meta.cs-CZ.json similarity index 78% rename from agdb_web_next/pages/docs/_meta.cs-CZ.json rename to agdb_web/pages/docs/_meta.cs-CZ.json index a5c665311..7f3f086e9 100644 --- a/agdb_web_next/pages/docs/_meta.cs-CZ.json +++ b/agdb_web/pages/docs/_meta.cs-CZ.json @@ -4,6 +4,6 @@ }, "dokumentace": { "title": "Dokumentace", - "display": "visible" + "display": "normal" } } diff --git a/agdb_web_next/pages/docs/_meta.en-US.json b/agdb_web/pages/docs/_meta.en-US.json similarity index 68% rename from agdb_web_next/pages/docs/_meta.en-US.json rename to agdb_web/pages/docs/_meta.en-US.json index 87fd44dde..f1a97f2cd 100644 --- a/agdb_web_next/pages/docs/_meta.en-US.json +++ b/agdb_web/pages/docs/_meta.en-US.json @@ -4,18 +4,18 @@ }, "docs": { "title": "Docs", - "display": "visible" + "display": "normal" }, "guides": { "title": "Guides", - "display": "visible" + "display": "normal" }, "examples": { "title": "Examples", - "display": "visible" + "display": "normal" }, "references": { "title": "references", - "display": "visible" + "display": "normal" } } diff --git a/agdb_web_next/pages/docs/docs.en-US.mdx b/agdb_web/pages/docs/docs.en-US.mdx similarity index 74% rename from agdb_web_next/pages/docs/docs.en-US.mdx rename to agdb_web/pages/docs/docs.en-US.mdx index bdadb1bf8..750461225 100644 --- a/agdb_web_next/pages/docs/docs.en-US.mdx +++ b/agdb_web/pages/docs/docs.en-US.mdx @@ -9,70 +9,107 @@ Documentation for the Agnesoft Graph Database can be found here. ## guides -
+
1. [Concepts](/docs/guides/concepts) -

+ +
+
2. [Quickstart](/docs/guides/quickstart) -

+ +
+
3. [Quickstart - Client](/docs/guides/quickstart_client) -

+ +
+
4. [How to run a server?](/docs/guides/server) -

+ +
+
5. [How to use the studio?](/docs/guides/studio) -

+ +
+
6. [Troubleshooting](docs/guides/troubleshooting) -

+ +
+
7. [Migration from SQL](docs/guides/migration_from_sql) -

+
+
## examples -
+
1. [app_db](https://github.com/agnesoft/agdb/tree/main/examples/app_db) -

+ +
+
2. [indexes](https://github.com/agnesoft/agdb/tree/main/examples/indexes) -

+ +
+
3. [joins](https://github.com/agnesoft/agdb/tree/main/examples/joins) -

+ +
+
4. [schema migration](https://github.com/agnesoft/agdb/tree/main/examples/schema_migration) -

+ +
+
5. [server client - rurst](https://github.com/agnesoft/agdb/tree/main/examples/server_client_rust) -

+ +
+
6. [server client - typescript](https://github.com/agnesoft/agdb/tree/main/examples/server_client_typescript) -

+ +
+
7. [strong types](https://github.com/agnesoft/agdb/tree/main/examples/strong_types) -

+
+
## references 1. [Queries](docs/references/queries) -

+ +
+
2. [Server](docs/references/server) -

+ +
+
3. [Studio](docs/references/studio) -

+ +
+
4. [Cloud](docs/references/cloud) -

+ +
+
5. [Efficient agdb](docs/references/efficient_agdb) -

+ +
+
6. [Performance](docs/references/performance) -

+
+
diff --git a/agdb_web_next/pages/docs/dokumentace.cs-CZ.mdx b/agdb_web/pages/docs/dokumentace.cs-CZ.mdx similarity index 100% rename from agdb_web_next/pages/docs/dokumentace.cs-CZ.mdx rename to agdb_web/pages/docs/dokumentace.cs-CZ.mdx diff --git a/agdb_web_next/pages/docs/examples.en-US.mdx b/agdb_web/pages/docs/examples.en-US.mdx similarity index 100% rename from agdb_web_next/pages/docs/examples.en-US.mdx rename to agdb_web/pages/docs/examples.en-US.mdx diff --git a/agdb_web_next/pages/docs/guides.en-US.mdx b/agdb_web/pages/docs/guides.en-US.mdx similarity index 100% rename from agdb_web_next/pages/docs/guides.en-US.mdx rename to agdb_web/pages/docs/guides.en-US.mdx diff --git a/agdb_web_next/pages/docs/guides/_meta.en-US.json b/agdb_web/pages/docs/guides/_meta.en-US.json similarity index 100% rename from agdb_web_next/pages/docs/guides/_meta.en-US.json rename to agdb_web/pages/docs/guides/_meta.en-US.json diff --git a/agdb_web_next/pages/docs/guides/concepts.en-US.md b/agdb_web/pages/docs/guides/concepts.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/guides/concepts.en-US.md rename to agdb_web/pages/docs/guides/concepts.en-US.md diff --git a/agdb_web_next/pages/docs/guides/how_to_run_server.en-US.md b/agdb_web/pages/docs/guides/how_to_run_server.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/guides/how_to_run_server.en-US.md rename to agdb_web/pages/docs/guides/how_to_run_server.en-US.md diff --git a/agdb_web_next/pages/docs/guides/how_to_use_studio.en-US.md b/agdb_web/pages/docs/guides/how_to_use_studio.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/guides/how_to_use_studio.en-US.md rename to agdb_web/pages/docs/guides/how_to_use_studio.en-US.md diff --git a/agdb_web_next/pages/docs/guides/migration_from_sql.en-US.md b/agdb_web/pages/docs/guides/migration_from_sql.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/guides/migration_from_sql.en-US.md rename to agdb_web/pages/docs/guides/migration_from_sql.en-US.md diff --git a/agdb_web_next/pages/docs/guides/quickstart.en-US.md b/agdb_web/pages/docs/guides/quickstart.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/guides/quickstart.en-US.md rename to agdb_web/pages/docs/guides/quickstart.en-US.md diff --git a/agdb_web_next/pages/docs/guides/quickstart_client.en-US.md b/agdb_web/pages/docs/guides/quickstart_client.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/guides/quickstart_client.en-US.md rename to agdb_web/pages/docs/guides/quickstart_client.en-US.md diff --git a/agdb_web_next/pages/docs/guides/troubleshooting.en-US.md b/agdb_web/pages/docs/guides/troubleshooting.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/guides/troubleshooting.en-US.md rename to agdb_web/pages/docs/guides/troubleshooting.en-US.md diff --git a/agdb_web_next/pages/docs/references.en-US.mdx b/agdb_web/pages/docs/references.en-US.mdx similarity index 100% rename from agdb_web_next/pages/docs/references.en-US.mdx rename to agdb_web/pages/docs/references.en-US.mdx diff --git a/agdb_web_next/pages/docs/references/_meta.en-US.json b/agdb_web/pages/docs/references/_meta.en-US.json similarity index 100% rename from agdb_web_next/pages/docs/references/_meta.en-US.json rename to agdb_web/pages/docs/references/_meta.en-US.json diff --git a/agdb_web_next/pages/docs/references/cloud.en-US.md b/agdb_web/pages/docs/references/cloud.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/references/cloud.en-US.md rename to agdb_web/pages/docs/references/cloud.en-US.md diff --git a/agdb_web_next/pages/docs/references/efficient_agdb.en-US.md b/agdb_web/pages/docs/references/efficient_agdb.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/references/efficient_agdb.en-US.md rename to agdb_web/pages/docs/references/efficient_agdb.en-US.md diff --git a/agdb_web_next/pages/docs/references/performance.en-US.md b/agdb_web/pages/docs/references/performance.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/references/performance.en-US.md rename to agdb_web/pages/docs/references/performance.en-US.md diff --git a/agdb_web_next/pages/docs/references/queries.en-US.md b/agdb_web/pages/docs/references/queries.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/references/queries.en-US.md rename to agdb_web/pages/docs/references/queries.en-US.md diff --git a/agdb_web_next/pages/docs/references/server.en-US.md b/agdb_web/pages/docs/references/server.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/references/server.en-US.md rename to agdb_web/pages/docs/references/server.en-US.md diff --git a/agdb_web_next/pages/docs/references/studio.en-US.md b/agdb_web/pages/docs/references/studio.en-US.md similarity index 100% rename from agdb_web_next/pages/docs/references/studio.en-US.md rename to agdb_web/pages/docs/references/studio.en-US.md diff --git a/agdb_web_next/pages/enterprise/_meta.cs-CZ.json b/agdb_web/pages/enterprise/_meta.cs-CZ.json similarity index 78% rename from agdb_web_next/pages/enterprise/_meta.cs-CZ.json rename to agdb_web/pages/enterprise/_meta.cs-CZ.json index 7704fd05f..6e04cb2eb 100644 --- a/agdb_web_next/pages/enterprise/_meta.cs-CZ.json +++ b/agdb_web/pages/enterprise/_meta.cs-CZ.json @@ -4,6 +4,6 @@ }, "enterprise": { "title": "Enterprise", - "display": "visible" + "display": "normal" } } diff --git a/agdb_web_next/pages/enterprise/_meta.en-US.json b/agdb_web/pages/enterprise/_meta.en-US.json similarity index 68% rename from agdb_web_next/pages/enterprise/_meta.en-US.json rename to agdb_web/pages/enterprise/_meta.en-US.json index ea3cbaeda..d85822125 100644 --- a/agdb_web_next/pages/enterprise/_meta.en-US.json +++ b/agdb_web/pages/enterprise/_meta.en-US.json @@ -4,26 +4,26 @@ }, "enterprise": { "title": "Enterprise", - "display": "visible" + "display": "normal" }, "pricing": { "title": "Pricing", - "display": "visible" + "display": "normal" }, "cloud": { "title": "Cloud", - "display": "visible" + "display": "normal" }, "self-hosted": { "title": "Self-hosted", - "display": "visible" + "display": "normal" }, "support": { "title": "Support", - "display": "visible" + "display": "normal" }, "sponsors": { "title": "Sponsors", - "display": "visible" + "display": "normal" } } diff --git a/agdb_web_next/pages/enterprise/cloud.en-US.mdx b/agdb_web/pages/enterprise/cloud.en-US.mdx similarity index 100% rename from agdb_web_next/pages/enterprise/cloud.en-US.mdx rename to agdb_web/pages/enterprise/cloud.en-US.mdx diff --git a/agdb_web_next/pages/enterprise/enterprise-cs-CZ.mdx b/agdb_web/pages/enterprise/enterprise-cs-CZ.mdx similarity index 100% rename from agdb_web_next/pages/enterprise/enterprise-cs-CZ.mdx rename to agdb_web/pages/enterprise/enterprise-cs-CZ.mdx diff --git a/agdb_web_next/pages/enterprise/enterprise.en-US.mdx b/agdb_web/pages/enterprise/enterprise.en-US.mdx similarity index 100% rename from agdb_web_next/pages/enterprise/enterprise.en-US.mdx rename to agdb_web/pages/enterprise/enterprise.en-US.mdx diff --git a/agdb_web_next/pages/enterprise/pricing.en-US.mdx b/agdb_web/pages/enterprise/pricing.en-US.mdx similarity index 100% rename from agdb_web_next/pages/enterprise/pricing.en-US.mdx rename to agdb_web/pages/enterprise/pricing.en-US.mdx diff --git a/agdb_web_next/pages/enterprise/self-hosted.en-US.mdx b/agdb_web/pages/enterprise/self-hosted.en-US.mdx similarity index 100% rename from agdb_web_next/pages/enterprise/self-hosted.en-US.mdx rename to agdb_web/pages/enterprise/self-hosted.en-US.mdx diff --git a/agdb_web_next/pages/enterprise/sponsors.en-US.mdx b/agdb_web/pages/enterprise/sponsors.en-US.mdx similarity index 100% rename from agdb_web_next/pages/enterprise/sponsors.en-US.mdx rename to agdb_web/pages/enterprise/sponsors.en-US.mdx diff --git a/agdb_web_next/pages/enterprise/support.en-US.mdx b/agdb_web/pages/enterprise/support.en-US.mdx similarity index 100% rename from agdb_web_next/pages/enterprise/support.en-US.mdx rename to agdb_web/pages/enterprise/support.en-US.mdx diff --git a/agdb_web_next/pages/index.cs-CZ.mdx b/agdb_web/pages/index.cs-CZ.mdx similarity index 100% rename from agdb_web_next/pages/index.cs-CZ.mdx rename to agdb_web/pages/index.cs-CZ.mdx diff --git a/agdb_web_next/pages/index.en-US.mdx b/agdb_web/pages/index.en-US.mdx similarity index 100% rename from agdb_web_next/pages/index.en-US.mdx rename to agdb_web/pages/index.en-US.mdx diff --git a/agdb_web_next/pages/kontakt.cs-CZ.mdx b/agdb_web/pages/kontakt.cs-CZ.mdx similarity index 100% rename from agdb_web_next/pages/kontakt.cs-CZ.mdx rename to agdb_web/pages/kontakt.cs-CZ.mdx diff --git a/agdb_web_next/pages/license.cs-CZ.md b/agdb_web/pages/license.cs-CZ.md similarity index 100% rename from agdb_web_next/pages/license.cs-CZ.md rename to agdb_web/pages/license.cs-CZ.md diff --git a/agdb_web_next/pages/license.en-US.md b/agdb_web/pages/license.en-US.md similarity index 100% rename from agdb_web_next/pages/license.en-US.md rename to agdb_web/pages/license.en-US.md diff --git a/agdb_web_next/pages/o-agdb.cs-CZ.mdx b/agdb_web/pages/o-agdb.cs-CZ.mdx similarity index 100% rename from agdb_web_next/pages/o-agdb.cs-CZ.mdx rename to agdb_web/pages/o-agdb.cs-CZ.mdx diff --git a/agdb_web_next/pages/ochrana-osobnich-udaju.cs-CZ.mdx b/agdb_web/pages/ochrana-osobnich-udaju.cs-CZ.mdx similarity index 100% rename from agdb_web_next/pages/ochrana-osobnich-udaju.cs-CZ.mdx rename to agdb_web/pages/ochrana-osobnich-udaju.cs-CZ.mdx diff --git a/agdb_web_next/pages/podminky-uziti.cs-CZ.mdx b/agdb_web/pages/podminky-uziti.cs-CZ.mdx similarity index 100% rename from agdb_web_next/pages/podminky-uziti.cs-CZ.mdx rename to agdb_web/pages/podminky-uziti.cs-CZ.mdx diff --git a/agdb_web_next/pages/privacy-policy.en-US.mdx b/agdb_web/pages/privacy-policy.en-US.mdx similarity index 100% rename from agdb_web_next/pages/privacy-policy.en-US.mdx rename to agdb_web/pages/privacy-policy.en-US.mdx diff --git a/agdb_web_next/pages/terms-and-conditions.en-US.mdx b/agdb_web/pages/terms-and-conditions.en-US.mdx similarity index 100% rename from agdb_web_next/pages/terms-and-conditions.en-US.mdx rename to agdb_web/pages/terms-and-conditions.en-US.mdx diff --git a/agdb_web/playwright.config.ts b/agdb_web/playwright.config.ts index fa1aac24c..aa9d5972a 100644 --- a/agdb_web/playwright.config.ts +++ b/agdb_web/playwright.config.ts @@ -11,15 +11,6 @@ import { defineConfig, devices } from "@playwright/test"; */ export default defineConfig({ testDir: "./e2e", - /* Maximum time one test can run for. */ - timeout: 30 * 1000, - expect: { - /** - * Maximum time expect() should wait for the condition to be met. - * For example in `await expect(locator).toHaveText();` - */ - timeout: 5000, - }, /* Run tests in files in parallel */ fullyParallel: true, /* Fail the build on CI if you accidentally left test.only in the source code. */ @@ -32,16 +23,11 @@ export default defineConfig({ reporter: "html", /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ use: { - /* Maximum time each action such as `click()` can take. Defaults to 0 (no limit). */ - actionTimeout: 0, /* Base URL to use in actions like `await page.goto('/')`. */ - baseURL: "http://localhost:5001", + // baseURL: 'http://127.0.0.1:3000', /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */ trace: "on-first-retry", - - /* Only on CI systems run the tests headless */ - headless: !!process.env.CI, }, /* Configure projects for major browsers */ @@ -62,14 +48,14 @@ export default defineConfig({ }, /* Test against mobile viewports. */ - { - name: "Mobile Chrome", - use: { ...devices["Pixel 5"] }, - }, - { - name: "Mobile Safari", - use: { ...devices["iPhone 12"] }, - }, + // { + // name: 'Mobile Chrome', + // use: { ...devices['Pixel 5'] }, + // }, + // { + // name: 'Mobile Safari', + // use: { ...devices['iPhone 12'] }, + // }, /* Test against branded browsers. */ // { @@ -84,8 +70,8 @@ export default defineConfig({ /* Run your local dev server before starting the tests */ webServer: { - command: "npm run dev", - url: "http://localhost:5001", + command: "npm run start", + url: "http://127.0.0.1:5001", reuseExistingServer: !process.env.CI, }, }); diff --git a/agdb_web/server/tsconfig.json b/agdb_web/server/tsconfig.json deleted file mode 100644 index deaaf79bf..000000000 --- a/agdb_web/server/tsconfig.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "../.nuxt/tsconfig.server.json" -} diff --git a/agdb_web/static/logo.svg b/agdb_web/static/logo.svg deleted file mode 100644 index 52cec8453..000000000 --- a/agdb_web/static/logo.svg +++ /dev/null @@ -1,40 +0,0 @@ - - - -Created with Fabric.js 5.3.0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/agdb_web/tests/app.test.ts b/agdb_web/tests/app.test.ts deleted file mode 100644 index 9bf8e9ab5..000000000 --- a/agdb_web/tests/app.test.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { shallowMount } from "@vue/test-utils"; -import { describe, it, expect } from "vitest"; -import app from "@/app.vue"; - -describe("app", () => { - it("renders the correct message", () => { - const wrapper = shallowMount(app, { route: "/" }); - expect(wrapper.html()).toContain(""); - }); -}); diff --git a/agdb_web/tests/composables/useI18n.test.ts b/agdb_web/tests/composables/useI18n.test.ts deleted file mode 100644 index 29de5d2c1..000000000 --- a/agdb_web/tests/composables/useI18n.test.ts +++ /dev/null @@ -1,96 +0,0 @@ -import { describe, it, expect, beforeEach, beforeAll } from "vitest"; -import useI18n from "@/composables/useI18n"; - -describe("useI18n", () => { - const i18n = useI18n(); - beforeAll(() => { - i18n.initI18n(); - }); - - beforeEach(() => { - i18n.setDefaultLocaleCode(); - }); - - it("returns the correct default locale code", () => { - expect(i18n.localeCode.value).toBe("en"); - }); - - it("returns the correct locale exists", () => { - expect(i18n.localeExists("en")).toBe(true); - expect(i18n.localeExists("fr")).toBe(false); - }); - - it("returns the correct current locale", () => { - i18n.setLocaleCode("cs"); - expect(i18n.currentLocale.value?.iso).toEqual("cs-CZ"); - }); - - it("returns the correct fallback locale", () => { - expect(i18n.fallbackLocale.value?.iso).toEqual("en-US"); - }); - - it("returns the correct current page path", () => { - expect(i18n.currentPagePath.value).toBe("/"); - }); - - it("returns the correct locale path for en lang", () => { - expect(i18n.getLocalePath("/")).toBe("/"); - expect(i18n.getLocalePath("/about")).toBe("/about"); - expect(i18n.getLocalePath("/en")).toBe("/"); - expect(i18n.getLocalePath("/en/about")).toBe("/about"); - }); - - it("returns the correct locale path for cs lang", () => { - i18n.setLocaleCode("cs"); - expect(i18n.getLocalePath("/")).toBe("/cs/"); - expect(i18n.getLocalePath("/about")).toBe("/cs/about"); - expect(i18n.getLocalePath("/cs")).toBe("/cs"); - expect(i18n.getLocalePath("/cs/about")).toBe("/cs/about"); - }); - - it("does not change the locale code if it is the same", () => { - i18n.setLocaleCode("en"); - expect(i18n.localeCode.value).toBe("en"); - }); - - it("does not change the locale code if it does not exist", () => { - i18n.setLocaleCode("fr"); - expect(i18n.localeCode.value).toBe("en"); - }); - - it("loads the correct messages for en lang", () => { - expect(i18n.t("url.about")).toBe("/about"); - }); - - it("loads the correct messages for cs lang", () => { - i18n.setLocaleCode("cs"); - expect(i18n.t("url.about")).toBe("/o-agdb"); - }); - - it("does not reload the fallback messages on init", () => { - i18n.initI18n(); - expect(i18n.t("url.about")).toBe("/about"); - }); - - it("does not reload the messages for false locale", () => { - i18n.localeCode.value = "fr"; - i18n.loadMessages(); - expect(i18n.t("url.about")).toBe("/about"); - }); - - it("does not reload fallback messages for false fallback locale", () => { - i18n.fallbackLocaleCode.value = "fr"; - i18n.loadFallbackMessages(); - expect(i18n.t("url.about")).toBe("/about"); - }); - - it("sets default locale to en if fallback does not exist", () => { - i18n.fallbackLocaleCode.value = "fr"; - i18n.setDefaultLocaleCode(); - expect(i18n.localeCode.value).toBe("en"); - }); - - it("returns empty string if message does not exist", () => { - expect(i18n.t("url.false")).toBe(""); - }); -}); diff --git a/agdb_web/tests/pages/[...slug].test.ts b/agdb_web/tests/pages/[...slug].test.ts deleted file mode 100644 index ec1fcceed..000000000 --- a/agdb_web/tests/pages/[...slug].test.ts +++ /dev/null @@ -1,39 +0,0 @@ -import { shallowMount } from "@vue/test-utils"; -import { describe, it, expect, vi, beforeEach } from "vitest"; -import slug from "@/pages/[...slug].vue"; - -describe("[...slug]", () => { - beforeEach(() => { - vi.clearAllMocks(); - }); - - it("renders content", () => { - const wrapper = shallowMount(slug, { - route: "/about", - global: { - plugins: [useRouter()], - stubs: { - "nuxt-layout": { - template: "
", - }, - }, - }, - }); - expect(wrapper.getComponent("content-doc-stub")).toBeTruthy(); - }); - - it("renders content for a specific locale", () => { - const wrapper = shallowMount(slug, { - route: "/cs/o-agdb", - global: { - plugins: [useRouter()], - stubs: { - "nuxt-layout": { - template: "
", - }, - }, - }, - }); - expect(wrapper.getComponent("content-doc-stub")).toBeTruthy(); - }); -}); diff --git a/agdb_web_next/theme.config.tsx b/agdb_web/theme.config.tsx similarity index 100% rename from agdb_web_next/theme.config.tsx rename to agdb_web/theme.config.tsx diff --git a/agdb_web/tsconfig.json b/agdb_web/tsconfig.json index d1ddce884..7113a46f0 100644 --- a/agdb_web/tsconfig.json +++ b/agdb_web/tsconfig.json @@ -1,4 +1,26 @@ { - // https://v3.nuxtjs.org/concepts/typescript - "extends": "./.nuxt/tsconfig.json" + "compilerOptions": { + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + "plugins": [ + { + "name": "next", + }, + ], + "paths": { + "@/*": ["./*"], + }, + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], + "exclude": ["node_modules"], } diff --git a/agdb_web/vitest.config.ts b/agdb_web/vitest.config.ts index 71addca0d..14022cee4 100644 --- a/agdb_web/vitest.config.ts +++ b/agdb_web/vitest.config.ts @@ -1,20 +1,25 @@ -import { fileURLToPath, URL } from "node:url"; -import { configDefaults, coverageConfigDefaults } from "vitest/config"; -import { defineVitestConfig } from "@nuxt/test-utils/config"; +import { + defineConfig, + coverageConfigDefaults, + configDefaults, +} from "vitest/config"; +import react from "@vitejs/plugin-react"; +import path from "path"; -export default defineVitestConfig({ +export default defineConfig({ + plugins: [react()], test: { - environment: "nuxt", + environment: "jsdom", exclude: [...configDefaults.exclude, "e2e/*"], - root: fileURLToPath(new URL("./", import.meta.url)), + root: path.resolve(__dirname, "."), coverage: { provider: "v8", all: true, exclude: [ ...coverageConfigDefaults.exclude, "e2e/*", - "*.config.ts", - "*/**/*.vue", + "*.config.*", + "middleware.ts", ], }, }, @@ -23,7 +28,7 @@ export default defineVitestConfig({ }, resolve: { alias: { - "@": fileURLToPath(new URL(".", import.meta.url)), + "@": path.resolve(__dirname, "."), }, }, }); diff --git a/agdb_web_next/.gitignore b/agdb_web_next/.gitignore deleted file mode 100644 index 9600483f8..000000000 --- a/agdb_web_next/.gitignore +++ /dev/null @@ -1,40 +0,0 @@ -# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. - -# dependencies -node_modules -/.pnp -.pnp.js -.yarn/install-state.gz - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo -next-env.d.ts -/test-results/ -/playwright-report/ -/blob-report/ -/playwright/.cache/ diff --git a/agdb_web_next/.prettierignore b/agdb_web_next/.prettierignore deleted file mode 100644 index 6cc2cb26e..000000000 --- a/agdb_web_next/.prettierignore +++ /dev/null @@ -1,2 +0,0 @@ -.next -coverage diff --git a/agdb_web_next/.prettierrc b/agdb_web_next/.prettierrc deleted file mode 100644 index 1bc3f6e89..000000000 --- a/agdb_web_next/.prettierrc +++ /dev/null @@ -1,5 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/prettierrc", - "tabWidth": 4, - "endOfLine": "auto" -} diff --git a/agdb_web_next/README.md b/agdb_web_next/README.md deleted file mode 100644 index d9a375ca6..000000000 --- a/agdb_web_next/README.md +++ /dev/null @@ -1 +0,0 @@ -**Note: This project is still under construction.** diff --git a/agdb_web_next/package-lock.json b/agdb_web_next/package-lock.json deleted file mode 100644 index da840ce8a..000000000 --- a/agdb_web_next/package-lock.json +++ /dev/null @@ -1,11699 +0,0 @@ -{ - "name": "agdb_web_next", - "version": "0.1.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "agdb_web_next", - "version": "0.1.0", - "dependencies": { - "next": "14.1.1", - "nextra": "^2.13.2", - "nextra-theme-docs": "^2.13.2", - "react": "^18", - "react-dom": "^18", - "sass": "^1.77.5" - }, - "devDependencies": { - "@playwright/test": "^1.41.1", - "@testing-library/react": "^14.1.2", - "@types/node": "^20", - "@types/react": "^18", - "@types/react-dom": "^18", - "@vitejs/plugin-react": "^4.2.1", - "@vitest/coverage-v8": "^1.5.3", - "eslint": "^8", - "eslint-config-next": "14.1.0", - "eslint-config-prettier": "^9.1.0", - "jsdom": "^24.0.0", - "prettier": "^3.2.4", - "typescript": "^5", - "vitest": "^1.5.3" - } - }, - "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, - "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", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/code-frame/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "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", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "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", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz", - "integrity": "sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.9.tgz", - "integrity": "sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.9", - "@babel/parser": "^7.23.9", - "@babel/template": "^7.23.9", - "@babel/traverse": "^7.23.9", - "@babel/types": "^7.23.9", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/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" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@babel/core/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, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", - "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.23.6", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", - "browserslist": "^4.22.2", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets/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, - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/@babel/helper-compilation-targets/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, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", - "dev": true, - "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.15" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", - "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.9.tgz", - "integrity": "sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==", - "dev": true, - "dependencies": { - "@babel/template": "^7.23.9", - "@babel/traverse": "^7.23.9", - "@babel/types": "^7.23.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "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", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "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", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/parser": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.9.tgz", - "integrity": "sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-self": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.23.3.tgz", - "integrity": "sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-source": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.23.3.tgz", - "integrity": "sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz", - "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", - "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.9.tgz", - "integrity": "sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9", - "debug": "^4.3.1", - "globals": "^11.1.0" - }, - "engines": { - "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.9", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.9.tgz", - "integrity": "sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "node_modules/@braintree/sanitize-url": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-6.0.4.tgz", - "integrity": "sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==" - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", - "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", - "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", - "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", - "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", - "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", - "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", - "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", - "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", - "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", - "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", - "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", - "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", - "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", - "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", - "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", - "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", - "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", - "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", - "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", - "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", - "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", - "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", - "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "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, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/js": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", - "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@headlessui/react": { - "version": "1.7.18", - "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.18.tgz", - "integrity": "sha512-4i5DOrzwN4qSgNsL4Si61VMkUcWbcSKueUV7sFhpHzQcSShdlHENE5+QBntMSRvHt8NyoFO2AGG8si9lq+w4zQ==", - "dependencies": { - "@tanstack/react-virtual": "^3.0.0-beta.60", - "client-only": "^0.0.1" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": "^16 || ^17 || ^18", - "react-dom": "^16 || ^17 || ^18" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.14", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", - "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^2.0.2", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", - "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", - "dev": true - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "dev": true, - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/schemas": { - "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.27.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "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" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@mdx-js/mdx": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-2.3.0.tgz", - "integrity": "sha512-jLuwRlz8DQfQNiUCJR50Y09CGPq3fLtmtUQfVrj79E0JWu3dvsVcxVIcfhR5h0iXu+/z++zDrYeiJqifRynJkA==", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/mdx": "^2.0.0", - "estree-util-build-jsx": "^2.0.0", - "estree-util-is-identifier-name": "^2.0.0", - "estree-util-to-js": "^1.1.0", - "estree-walker": "^3.0.0", - "hast-util-to-estree": "^2.0.0", - "markdown-extensions": "^1.0.0", - "periscopic": "^3.0.0", - "remark-mdx": "^2.0.0", - "remark-parse": "^10.0.0", - "remark-rehype": "^10.0.0", - "unified": "^10.0.0", - "unist-util-position-from-estree": "^1.0.0", - "unist-util-stringify-position": "^3.0.0", - "unist-util-visit": "^4.0.0", - "vfile": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mdx-js/mdx/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==", - "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/@mdx-js/mdx/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==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mdx-js/react": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-2.3.0.tgz", - "integrity": "sha512-zQH//gdOmuu7nt2oJR29vFhDv88oGPmVw6BggmrHeMI+xgEkp1B2dX9/bMBSYtK0dyLX/aOmesKS09g222K1/g==", - "dependencies": { - "@types/mdx": "^2.0.0", - "@types/react": ">=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - }, - "peerDependencies": { - "react": ">=16" - } - }, - "node_modules/@napi-rs/simple-git": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git/-/simple-git-0.1.11.tgz", - "integrity": "sha512-z14cPCBrtDKKVJ3q4GS5gmXEithGUAt+U8sICgA9i3UFdxJKD4H5rCnO7BVC3htdE9g6OR2w2IcHAL56AjpFbg==", - "engines": { - "node": ">= 10" - }, - "optionalDependencies": { - "@napi-rs/simple-git-android-arm-eabi": "0.1.11", - "@napi-rs/simple-git-android-arm64": "0.1.11", - "@napi-rs/simple-git-darwin-arm64": "0.1.11", - "@napi-rs/simple-git-darwin-x64": "0.1.11", - "@napi-rs/simple-git-linux-arm-gnueabihf": "0.1.11", - "@napi-rs/simple-git-linux-arm64-gnu": "0.1.11", - "@napi-rs/simple-git-linux-arm64-musl": "0.1.11", - "@napi-rs/simple-git-linux-x64-gnu": "0.1.11", - "@napi-rs/simple-git-linux-x64-musl": "0.1.11", - "@napi-rs/simple-git-win32-arm64-msvc": "0.1.11", - "@napi-rs/simple-git-win32-x64-msvc": "0.1.11" - } - }, - "node_modules/@napi-rs/simple-git-android-arm-eabi": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm-eabi/-/simple-git-android-arm-eabi-0.1.11.tgz", - "integrity": "sha512-wt4Wu9MxvKzEqT4iwodFs7Nrc31K73gR5hM7VnlO6iLELmUQZ5JVJkYoFWgzLQWtzIC48W2+zFMbBgY6+F2rZg==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-android-arm64": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-android-arm64/-/simple-git-android-arm64-0.1.11.tgz", - "integrity": "sha512-5/Aj6N44CxwhV3TZWRZ4vGqFj4wb2/a2gwvUZJo9Dwik9Spls7As8LaLe7pOptiGPH0GRP3H5kTT7I6twHNgqw==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-darwin-arm64": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-arm64/-/simple-git-darwin-arm64-0.1.11.tgz", - "integrity": "sha512-vdVsJUNcRsGVu0hBmLZdxxgwIbJA/Ias8NKWze8MZkZ3VyBwhg0uAzFgESEL3/USAgeCCHjF3uwVki8E+iPq1w==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-darwin-x64": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-darwin-x64/-/simple-git-darwin-x64-0.1.11.tgz", - "integrity": "sha512-ufVuZxyJ3LpApk3V101X9qYNX91fnQ4isulz9lWjg90U7Xz0Cav4J3yyFZy6B/cJpYxuiy49R8wV1xDtTeGThA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-arm-gnueabihf": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm-gnueabihf/-/simple-git-linux-arm-gnueabihf-0.1.11.tgz", - "integrity": "sha512-rFafW0Qc/j5we2ghUecB7mFzGcNDtJ5lTiB4I7kffNeL8pEi6Yi7kST8hylswcCowia65d45xsyeNp1mFlFwcg==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-arm64-gnu": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-gnu/-/simple-git-linux-arm64-gnu-0.1.11.tgz", - "integrity": "sha512-HZ4yaqpj/FQ3V9qNQrTGhtXb7pLAARXeRJrwoaGfz3eZ069y2bHReFcNR//5bsVhZ18JaS9EV47F8WjDxtpI5g==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-arm64-musl": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-arm64-musl/-/simple-git-linux-arm64-musl-0.1.11.tgz", - "integrity": "sha512-b39lJiC3n2+Y6Exjx6qwHoBF++D3k2hN4mZZkvQCFSdLXJ2xtalCatSRWW3pt+mHOHMOgbGektL5v5BYq52hxw==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-x64-gnu": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-gnu/-/simple-git-linux-x64-gnu-0.1.11.tgz", - "integrity": "sha512-9EPFvY7PZg+oqWi6Jft5WgSsQtvy9Ey1g4NG+LG8y1RbvaNKthxKbR5zgx196pnFVdcLtsuIdOv/OaQlbcTXkw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-linux-x64-musl": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-linux-x64-musl/-/simple-git-linux-x64-musl-0.1.11.tgz", - "integrity": "sha512-doIt1lPYIGL3UthlEQjdM9s1Wv0v8bz8LVAgbzJMS+UpVZzArwLWkanAJCy1HjgMTUMiE3AVJqACKIF3EfW/TQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-win32-arm64-msvc": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-arm64-msvc/-/simple-git-win32-arm64-msvc-0.1.11.tgz", - "integrity": "sha512-TK3Uvj3Q72ebxfxDT/eLFt8sxCNHo20QMvqJ5BHt4zP1Y9Fl1DXSPRUKLBIhJd0nPcI45ZOMRiZyoT8joxAC9g==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/simple-git-win32-x64-msvc": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@napi-rs/simple-git-win32-x64-msvc/-/simple-git-win32-x64-msvc-0.1.11.tgz", - "integrity": "sha512-XOgP6kFDXGmB2KCXFQEsCq70n/Do2h7W9o7qZu8APAD+Sc8JGKz4hKG7PKY2ot924v9nIoKSYbHnupnhXSoXkg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/env": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.1.tgz", - "integrity": "sha512-7CnQyD5G8shHxQIIg3c7/pSeYFeMhsNbpU/bmvH7ZnDql7mNRgg8O2JZrhrc/soFnfBnKP4/xXNiiSIPn2w8gA==" - }, - "node_modules/@next/eslint-plugin-next": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.1.0.tgz", - "integrity": "sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==", - "dev": true, - "dependencies": { - "glob": "10.3.10" - } - }, - "node_modules/@next/swc-darwin-arm64": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.1.tgz", - "integrity": "sha512-yDjSFKQKTIjyT7cFv+DqQfW5jsD+tVxXTckSe1KIouKk75t1qZmj/mV3wzdmFb0XHVGtyRjDMulfVG8uCKemOQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-darwin-x64": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.1.tgz", - "integrity": "sha512-KCQmBL0CmFmN8D64FHIZVD9I4ugQsDBBEJKiblXGgwn7wBCSe8N4Dx47sdzl4JAg39IkSN5NNrr8AniXLMb3aw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.1.tgz", - "integrity": "sha512-YDQfbWyW0JMKhJf/T4eyFr4b3tceTorQ5w2n7I0mNVTFOvu6CGEzfwT3RSAQGTi/FFMTFcuspPec/7dFHuP7Eg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.1.tgz", - "integrity": "sha512-fiuN/OG6sNGRN/bRFxRvV5LyzLB8gaL8cbDH5o3mEiVwfcMzyE5T//ilMmaTrnA8HLMS6hoz4cHOu6Qcp9vxgQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.1.tgz", - "integrity": "sha512-rv6AAdEXoezjbdfp3ouMuVqeLjE1Bin0AuE6qxE6V9g3Giz5/R3xpocHoAi7CufRR+lnkuUjRBn05SYJ83oKNQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-musl": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.1.tgz", - "integrity": "sha512-YAZLGsaNeChSrpz/G7MxO3TIBLaMN8QWMr3X8bt6rCvKovwU7GqQlDu99WdvF33kI8ZahvcdbFsy4jAFzFX7og==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.1.tgz", - "integrity": "sha512-1L4mUYPBMvVDMZg1inUYyPvFSduot0g73hgfD9CODgbr4xiTYe0VOMTZzaRqYJYBA9mana0x4eaAaypmWo1r5A==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.1.tgz", - "integrity": "sha512-jvIE9tsuj9vpbbXlR5YxrghRfMuG0Qm/nZ/1KDHc+y6FpnZ/apsgh+G6t15vefU0zp3WSpTMIdXRUsNl/7RSuw==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.1.tgz", - "integrity": "sha512-S6K6EHDU5+1KrBDLko7/c1MNy/Ya73pIAmvKeFwsF4RmBFJSO7/7YeD4FnZ4iBdzE69PpQ4sOMU9ORKeNuxe8A==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "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, - "engines": { - "node": ">=14" - } - }, - "node_modules/@playwright/test": { - "version": "1.41.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.1.tgz", - "integrity": "sha512-9g8EWTjiQ9yFBXc6HjCWe41msLpxEX0KhmfmPl9RPLJdfzL4F0lg2BdJ91O9azFdl11y1pmpwdjBiSxvqc+btw==", - "dev": true, - "dependencies": { - "playwright": "1.41.1" - }, - "bin": { - "playwright": "cli.js" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.0.tgz", - "integrity": "sha512-jwXtxYbRt1V+CdQSy6Z+uZti7JF5irRKF8hlKfEnF/xJpcNGuuiZMBvuoYM+x9sr9iWGnzrlM0+9hvQ1kgkf1w==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.0.tgz", - "integrity": "sha512-fI9nduZhCccjzlsA/OuAwtFGWocxA4gqXGTLvOyiF8d+8o0fZUeSztixkYjcGq1fGZY3Tkq4yRvHPFxU+jdZ9Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.0.tgz", - "integrity": "sha512-BcnSPRM76/cD2gQC+rQNGBN6GStBs2pl/FpweW8JYuz5J/IEa0Fr4AtrPv766DB/6b2MZ/AfSIOSGw3nEIP8SA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.0.tgz", - "integrity": "sha512-LDyFB9GRolGN7XI6955aFeI3wCdCUszFWumWU0deHA8VpR3nWRrjG6GtGjBrQxQKFevnUTHKCfPR4IvrW3kCgQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.0.tgz", - "integrity": "sha512-ygrGVhQP47mRh0AAD0zl6QqCbNsf0eTo+vgwkY6LunBcg0f2Jv365GXlDUECIyoXp1kKwL5WW6rsO429DBY/bA==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.0.tgz", - "integrity": "sha512-x+uJ6MAYRlHGe9wi4HQjxpaKHPM3d3JjqqCkeC5gpnnI6OWovLdXTpfa8trjxPLnWKyBsSi5kne+146GAxFt4A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.0.tgz", - "integrity": "sha512-nrRw8ZTQKg6+Lttwqo6a2VxR9tOroa2m91XbdQ2sUUzHoedXlsyvY1fN4xWdqz8PKmf4orDwejxXHjh7YBGUCA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.0.tgz", - "integrity": "sha512-xV0d5jDb4aFu84XKr+lcUJ9y3qpIWhttO3Qev97z8DKLXR62LC3cXT/bMZXrjLF9X+P5oSmJTzAhqwUbY96PnA==", - "cpu": [ - "ppc64le" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.0.tgz", - "integrity": "sha512-SDDhBQwZX6LPRoPYjAZWyL27LbcBo7WdBFWJi5PI9RPCzU8ijzkQn7tt8NXiXRiFMJCVpkuMkBf4OxSxVMizAw==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.0.tgz", - "integrity": "sha512-RxB/qez8zIDshNJDufYlTT0ZTVut5eCpAZ3bdXDU9yTxBzui3KhbGjROK2OYTTor7alM7XBhssgoO3CZ0XD3qA==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.0.tgz", - "integrity": "sha512-C6y6z2eCNCfhZxT9u+jAM2Fup89ZjiG5pIzZIDycs1IwESviLxwkQcFRGLjnDrP+PT+v5i4YFvlcfAs+LnreXg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.0.tgz", - "integrity": "sha512-i0QwbHYfnOMYsBEyjxcwGu5SMIi9sImDVjDg087hpzXqhBSosxkE7gyIYFHgfFl4mr7RrXksIBZ4DoLoP4FhJg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.0.tgz", - "integrity": "sha512-Fq52EYb0riNHLBTAcL0cun+rRwyZ10S9vKzhGKKgeD+XbwunszSY0rVMco5KbOsTlwovP2rTOkiII/fQ4ih/zQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.0.tgz", - "integrity": "sha512-e/PBHxPdJ00O9p5Ui43+vixSgVf4NlLsmV6QneGERJ3lnjIua/kim6PRFe3iDueT1rQcgSkYP8ZBBXa/h4iPvw==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.0.tgz", - "integrity": "sha512-aGg7iToJjdklmxlUlJh/PaPNa4PmqHfyRMLunbL3eaMO0gp656+q1zOKkpJ/CVe9CryJv6tAN1HDoR8cNGzkag==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rushstack/eslint-patch": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.7.2.tgz", - "integrity": "sha512-RbhOOTCNoCrbfkRyoXODZp75MlpiHMgbE5MEBZAnnnLyQNgrigEj4p0lzsMDyc1zVsJDLrivB58tgg3emX0eEA==", - "dev": true - }, - "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/@swc/helpers": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", - "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@tanstack/react-virtual": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.2.tgz", - "integrity": "sha512-9XbRLPKgnhMwwmuQMnJMv+5a9sitGNCSEtf/AZXzmJdesYk7XsjYHaEDny+IrJzvPNwZliIIDwCRiaUqR3zzCA==", - "dependencies": { - "@tanstack/virtual-core": "3.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/@tanstack/virtual-core": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.0.0.tgz", - "integrity": "sha512-SYXOBTjJb05rXa2vl55TTwO40A6wKu0R5i1qQwhJYNDIqaIGF7D0HsLw+pJAyi2OvntlEIVusx3xtbbgSUi6zg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - } - }, - "node_modules/@testing-library/dom": { - "version": "9.3.4", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.3.4.tgz", - "integrity": "sha512-FlS4ZWlp97iiNWig0Muq8p+3rVDjRiYE+YKGbAqXOu9nwJFFOdL00kFpz42M+4huzYi86vAK1sOOfyOG45muIQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "5.1.3", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.5.0", - "pretty-format": "^27.0.2" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@testing-library/dom/node_modules/aria-query": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", - "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", - "dev": true, - "dependencies": { - "deep-equal": "^2.0.5" - } - }, - "node_modules/@testing-library/react": { - "version": "14.1.2", - "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-14.1.2.tgz", - "integrity": "sha512-z4p7DVBTPjKM5qDZ0t5ZjzkpSNb+fZy1u6bzO7kk8oeGagpPCAtgh4cx1syrfp7a+QWkM021jGqjJaxJJnXAZg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5", - "@testing-library/dom": "^9.0.0", - "@types/react-dom": "^18.0.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, - "node_modules/@theguild/remark-mermaid": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/@theguild/remark-mermaid/-/remark-mermaid-0.0.5.tgz", - "integrity": "sha512-e+ZIyJkEv9jabI4m7q29wZtZv+2iwPGsXJ2d46Zi7e+QcFudiyuqhLhHG/3gX3ZEB+hxTch+fpItyMS8jwbIcw==", - "dependencies": { - "mermaid": "^10.2.2", - "unist-util-visit": "^5.0.0" - }, - "peerDependencies": { - "react": "^18.2.0" - } - }, - "node_modules/@theguild/remark-npm2yarn": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@theguild/remark-npm2yarn/-/remark-npm2yarn-0.2.1.tgz", - "integrity": "sha512-jUTFWwDxtLEFtGZh/TW/w30ySaDJ8atKWH8dq2/IiQF61dPrGfETpl0WxD0VdBfuLOeU14/kop466oBSRO/5CA==", - "dependencies": { - "npm-to-yarn": "^2.1.0", - "unist-util-visit": "^5.0.0" - } - }, - "node_modules/@types/acorn": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", - "integrity": "sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==", - "dependencies": { - "@types/estree": "*" - } - }, - "node_modules/@types/aria-query": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", - "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==", - "dev": true - }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.8", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", - "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", - "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.20.7" - } - }, - "node_modules/@types/d3-scale": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.8.tgz", - "integrity": "sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==", - "dependencies": { - "@types/d3-time": "*" - } - }, - "node_modules/@types/d3-scale-chromatic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.3.tgz", - "integrity": "sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw==" - }, - "node_modules/@types/d3-time": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.3.tgz", - "integrity": "sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==" - }, - "node_modules/@types/debug": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", - "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", - "dependencies": { - "@types/ms": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" - }, - "node_modules/@types/estree-jsx": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.3.tgz", - "integrity": "sha512-pvQ+TKeRHeiUGRhvYwRrQ/ISnohKkSJR14fT2yqyZ4e9K5vqc7hrtY2Y1Dw0ZwAzQ6DQsxsaCUuSIIi8v0Cq6w==", - "dependencies": { - "@types/estree": "*" - } - }, - "node_modules/@types/hast": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.9.tgz", - "integrity": "sha512-pTHyNlaMD/oKJmS+ZZUyFUcsZeBZpC0lmGquw98CqRVNgAdJZJeD7GoeLiT6Xbx5rU9VCjSt0RwEvDgzh4obFw==", - "dependencies": { - "@types/unist": "^2" - } - }, - "node_modules/@types/js-yaml": { - "version": "4.0.9", - "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.9.tgz", - "integrity": "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==" - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, - "node_modules/@types/katex": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.7.tgz", - "integrity": "sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==" - }, - "node_modules/@types/mdast": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", - "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", - "dependencies": { - "@types/unist": "^2" - } - }, - "node_modules/@types/mdx": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.10.tgz", - "integrity": "sha512-Rllzc5KHk0Al5/WANwgSPl1/CwjqCy+AZrGd78zuK+jO9aDM6ffblZ+zIjgPNAaEBmlO0RYDvLNh7wD0zKVgEg==" - }, - "node_modules/@types/ms": { - "version": "0.7.34", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", - "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" - }, - "node_modules/@types/node": { - "version": "20.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.7.tgz", - "integrity": "sha512-GPmeN1C3XAyV5uybAf4cMLWT9fDWcmQhZVtMFu7OR32WjrqGG+Wnk2V1d0bmtUyE/Zy1QJ9BxyiTih9z8Oks8A==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "node_modules/@types/prop-types": { - "version": "15.7.11", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz", - "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" - }, - "node_modules/@types/react": { - "version": "18.2.48", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.48.tgz", - "integrity": "sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w==", - "dependencies": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/react-dom": { - "version": "18.2.18", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.18.tgz", - "integrity": "sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==", - "dev": true, - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/scheduler": { - "version": "0.16.8", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", - "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==" - }, - "node_modules/@types/unist": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", - "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" - }, - "node_modules/@typescript-eslint/parser": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.19.1.tgz", - "integrity": "sha512-WEfX22ziAh6pRE9jnbkkLGp/4RhTpffr2ZK5bJ18M8mIfA8A+k97U9ZyaXCEJRlmMHh7R9MJZWXp/r73DzINVQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "6.19.1", - "@typescript-eslint/types": "6.19.1", - "@typescript-eslint/typescript-estree": "6.19.1", - "@typescript-eslint/visitor-keys": "6.19.1", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.1.tgz", - "integrity": "sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.19.1", - "@typescript-eslint/visitor-keys": "6.19.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/types": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.1.tgz", - "integrity": "sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg==", - "dev": true, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.1.tgz", - "integrity": "sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.19.1", - "@typescript-eslint/visitor-keys": "6.19.1", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "9.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/typescript-estree/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/@typescript-eslint/typescript-estree/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": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.19.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz", - "integrity": "sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "6.19.1", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "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==" - }, - "node_modules/@vitejs/plugin-react": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.2.1.tgz", - "integrity": "sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==", - "dev": true, - "dependencies": { - "@babel/core": "^7.23.5", - "@babel/plugin-transform-react-jsx-self": "^7.23.3", - "@babel/plugin-transform-react-jsx-source": "^7.23.3", - "@types/babel__core": "^7.20.5", - "react-refresh": "^0.14.0" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "peerDependencies": { - "vite": "^4.2.0 || ^5.0.0" - } - }, - "node_modules/@vitest/coverage-v8": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-1.5.3.tgz", - "integrity": "sha512-DPyGSu/fPHOJuPxzFSQoT4N/Fu/2aJfZRtEpEp8GI7NHsXBGE94CQ+pbEGBUMFjatsHPDJw/+TAF9r4ens2CNw==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.1", - "@bcoe/v8-coverage": "^0.2.3", - "debug": "^4.3.4", - "istanbul-lib-coverage": "^3.2.2", - "istanbul-lib-report": "^3.0.1", - "istanbul-lib-source-maps": "^5.0.4", - "istanbul-reports": "^3.1.6", - "magic-string": "^0.30.5", - "magicast": "^0.3.3", - "picocolors": "^1.0.0", - "std-env": "^3.5.0", - "strip-literal": "^2.0.0", - "test-exclude": "^6.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - }, - "peerDependencies": { - "vitest": "1.5.3" - } - }, - "node_modules/@vitest/expect": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.5.3.tgz", - "integrity": "sha512-y+waPz31pOFr3rD7vWTbwiLe5+MgsMm40jTZbQE8p8/qXyBX3CQsIXRx9XK12IbY7q/t5a5aM/ckt33b4PxK2g==", - "dev": true, - "dependencies": { - "@vitest/spy": "1.5.3", - "@vitest/utils": "1.5.3", - "chai": "^4.3.10" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/runner": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.5.3.tgz", - "integrity": "sha512-7PlfuReN8692IKQIdCxwir1AOaP5THfNkp0Uc4BKr2na+9lALNit7ub9l3/R7MP8aV61+mHKRGiqEKRIwu6iiQ==", - "dev": true, - "dependencies": { - "@vitest/utils": "1.5.3", - "p-limit": "^5.0.0", - "pathe": "^1.1.1" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/runner/node_modules/p-limit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz", - "integrity": "sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@vitest/runner/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@vitest/snapshot": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.5.3.tgz", - "integrity": "sha512-K3mvIsjyKYBhNIDujMD2gfQEzddLe51nNOAf45yKRt/QFJcUIeTQd2trRvv6M6oCBHNVnZwFWbQ4yj96ibiDsA==", - "dev": true, - "dependencies": { - "magic-string": "^0.30.5", - "pathe": "^1.1.1", - "pretty-format": "^29.7.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/snapshot/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@vitest/snapshot/node_modules/pretty-format": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", - "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@vitest/snapshot/node_modules/react-is": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", - "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", - "dev": true - }, - "node_modules/@vitest/spy": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.5.3.tgz", - "integrity": "sha512-Llj7Jgs6lbnL55WoshJUUacdJfjU2honvGcAJBxhra5TPEzTJH8ZuhI3p/JwqqfnTr4PmP7nDmOXP53MS7GJlg==", - "dev": true, - "dependencies": { - "tinyspy": "^2.2.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/utils": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.5.3.tgz", - "integrity": "sha512-rE9DTN1BRhzkzqNQO+kw8ZgfeEBCLXiHJwetk668shmNBpSagQxneT5eSqEBLP+cqSiAeecvQmbpFfdMyLcIQA==", - "dev": true, - "dependencies": { - "diff-sequences": "^29.6.3", - "estree-walker": "^3.0.3", - "loupe": "^2.3.7", - "pretty-format": "^29.7.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/utils/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@vitest/utils/node_modules/pretty-format": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", - "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@vitest/utils/node_modules/react-is": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", - "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", - "dev": true - }, - "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "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==", - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "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": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "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, - "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" - } - }, - "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, - "engines": { - "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==" - }, - "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": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "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==", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "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/arg": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/arg/-/arg-1.0.0.tgz", - "integrity": "sha512-Wk7TEzl1KqvTGs/uyhmHO/3XLd3t1UeU4IstvPXVzGPM522cTjqjNZ99esCkcL52sjqjo8e8CTBcWhkxvGzoAw==" - }, - "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/aria-query": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", - "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", - "dev": true, - "dependencies": { - "dequal": "^2.0.3" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-includes": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", - "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.tosorted": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz", - "integrity": "sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", - "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", - "is-shared-array-buffer": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/ast-types-flow": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", - "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", - "dev": true - }, - "node_modules/astring": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/astring/-/astring-1.8.6.tgz", - "integrity": "sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==", - "bin": { - "astring": "bin/astring" - } - }, - "node_modules/asynciterator.prototype": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz", - "integrity": "sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.3" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true - }, - "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, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/axe-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz", - "integrity": "sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/axobject-query": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz", - "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==", - "dev": true, - "dependencies": { - "dequal": "^2.0.3" - } - }, - "node_modules/bail": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", - "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.22.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.3.tgz", - "integrity": "sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==", - "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.30001580", - "electron-to-chromium": "^1.4.648", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/busboy": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", - "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", - "dependencies": { - "streamsearch": "^1.1.0" - }, - "engines": { - "node": ">=10.16.0" - } - }, - "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/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, - "dependencies": { - "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/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001643", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001643.tgz", - "integrity": "sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg==", - "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/ccount": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", - "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chai": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", - "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", - "dev": true, - "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.3", - "deep-eql": "^4.1.3", - "get-func-name": "^2.0.2", - "loupe": "^2.3.6", - "pathval": "^1.1.1", - "type-detect": "^4.0.8" - }, - "engines": { - "node": ">=4" - } - }, - "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/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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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==", - "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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/check-error": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", - "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", - "dev": true, - "dependencies": { - "get-func-name": "^2.0.2" - }, - "engines": { - "node": "*" - } - }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "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" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/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==", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/client-only": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", - "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" - }, - "node_modules/clipboardy": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-1.2.2.tgz", - "integrity": "sha512-16KrBOV7bHmHdxcQiCvfUFYVFyEah4FI8vYT1Fr7CGSA4G+xBWMEfUEQJS1hxeHGtI9ju1Bzs9uXSbj5HZKArw==", - "dependencies": { - "arch": "^2.1.0", - "execa": "^0.8.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/clsx": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.0.tgz", - "integrity": "sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==", - "engines": { - "node": ">=6" - } - }, - "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-name": "~1.1.4" - }, - "engines": { - "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/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "engines": { - "node": ">= 12" - } - }, - "node_modules/compute-scroll-into-view": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-3.1.0.tgz", - "integrity": "sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg==" - }, - "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/confbox": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz", - "integrity": "sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==", - "dev": true - }, - "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/cose-base": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-1.0.3.tgz", - "integrity": "sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==", - "dependencies": { - "layout-base": "^1.0.0" - } - }, - "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": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cssstyle": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.0.1.tgz", - "integrity": "sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==", - "dev": true, - "dependencies": { - "rrweb-cssom": "^0.6.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" - }, - "node_modules/cytoscape": { - "version": "3.28.1", - "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.28.1.tgz", - "integrity": "sha512-xyItz4O/4zp9/239wCcH8ZcFuuZooEeF8KHRmzjDfGdXsj3OG9MFSMA0pJE0uX3uCN/ygof6hHf4L7lst+JaDg==", - "dependencies": { - "heap": "^0.2.6", - "lodash": "^4.17.21" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/cytoscape-cose-bilkent": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz", - "integrity": "sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==", - "dependencies": { - "cose-base": "^1.0.0" - }, - "peerDependencies": { - "cytoscape": "^3.2.0" - } - }, - "node_modules/cytoscape-fcose": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cytoscape-fcose/-/cytoscape-fcose-2.2.0.tgz", - "integrity": "sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==", - "dependencies": { - "cose-base": "^2.2.0" - }, - "peerDependencies": { - "cytoscape": "^3.2.0" - } - }, - "node_modules/cytoscape-fcose/node_modules/cose-base": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-2.2.0.tgz", - "integrity": "sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==", - "dependencies": { - "layout-base": "^2.0.0" - } - }, - "node_modules/cytoscape-fcose/node_modules/layout-base": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-2.0.1.tgz", - "integrity": "sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==" - }, - "node_modules/d3": { - "version": "7.8.5", - "resolved": "https://registry.npmjs.org/d3/-/d3-7.8.5.tgz", - "integrity": "sha512-JgoahDG51ncUfJu6wX/1vWQEqOflgXyl4MaHqlcSruTez7yhaRKR9i8VjjcQGeS2en/jnFivXuaIMnseMMt0XA==", - "dependencies": { - "d3-array": "3", - "d3-axis": "3", - "d3-brush": "3", - "d3-chord": "3", - "d3-color": "3", - "d3-contour": "4", - "d3-delaunay": "6", - "d3-dispatch": "3", - "d3-drag": "3", - "d3-dsv": "3", - "d3-ease": "3", - "d3-fetch": "3", - "d3-force": "3", - "d3-format": "3", - "d3-geo": "3", - "d3-hierarchy": "3", - "d3-interpolate": "3", - "d3-path": "3", - "d3-polygon": "3", - "d3-quadtree": "3", - "d3-random": "3", - "d3-scale": "4", - "d3-scale-chromatic": "3", - "d3-selection": "3", - "d3-shape": "3", - "d3-time": "3", - "d3-time-format": "4", - "d3-timer": "3", - "d3-transition": "3", - "d3-zoom": "3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-array": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", - "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", - "dependencies": { - "internmap": "1 - 2" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-axis": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz", - "integrity": "sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-brush": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz", - "integrity": "sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==", - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-drag": "2 - 3", - "d3-interpolate": "1 - 3", - "d3-selection": "3", - "d3-transition": "3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-chord": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz", - "integrity": "sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==", - "dependencies": { - "d3-path": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-contour": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz", - "integrity": "sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==", - "dependencies": { - "d3-array": "^3.2.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-delaunay": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz", - "integrity": "sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==", - "dependencies": { - "delaunator": "5" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-dispatch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", - "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-drag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", - "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-selection": "3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-dsv": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz", - "integrity": "sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==", - "dependencies": { - "commander": "7", - "iconv-lite": "0.6", - "rw": "1" - }, - "bin": { - "csv2json": "bin/dsv2json.js", - "csv2tsv": "bin/dsv2dsv.js", - "dsv2dsv": "bin/dsv2dsv.js", - "dsv2json": "bin/dsv2json.js", - "json2csv": "bin/json2dsv.js", - "json2dsv": "bin/json2dsv.js", - "json2tsv": "bin/json2dsv.js", - "tsv2csv": "bin/dsv2dsv.js", - "tsv2json": "bin/dsv2json.js" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-dsv/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==", - "engines": { - "node": ">= 10" - } - }, - "node_modules/d3-ease": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", - "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-fetch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz", - "integrity": "sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==", - "dependencies": { - "d3-dsv": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-force": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz", - "integrity": "sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==", - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-quadtree": "1 - 3", - "d3-timer": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-format": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", - "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-geo": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.0.tgz", - "integrity": "sha512-JEo5HxXDdDYXCaWdwLRt79y7giK8SbhZJbFWXqbRTolCHFI5jRqteLzCsq51NKbUoX0PjBVSohxrx+NoOUujYA==", - "dependencies": { - "d3-array": "2.5.0 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-hierarchy": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", - "integrity": "sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", - "dependencies": { - "d3-color": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-path": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", - "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-polygon": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz", - "integrity": "sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-quadtree": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz", - "integrity": "sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-random": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz", - "integrity": "sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-sankey": { - "version": "0.12.3", - "resolved": "https://registry.npmjs.org/d3-sankey/-/d3-sankey-0.12.3.tgz", - "integrity": "sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==", - "dependencies": { - "d3-array": "1 - 2", - "d3-shape": "^1.2.0" - } - }, - "node_modules/d3-sankey/node_modules/d3-array": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz", - "integrity": "sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==", - "dependencies": { - "internmap": "^1.0.0" - } - }, - "node_modules/d3-sankey/node_modules/d3-path": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", - "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" - }, - "node_modules/d3-sankey/node_modules/d3-shape": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", - "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", - "dependencies": { - "d3-path": "1" - } - }, - "node_modules/d3-sankey/node_modules/internmap": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz", - "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==" - }, - "node_modules/d3-scale": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", - "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", - "dependencies": { - "d3-array": "2.10.0 - 3", - "d3-format": "1 - 3", - "d3-interpolate": "1.2.0 - 3", - "d3-time": "2.1.1 - 3", - "d3-time-format": "2 - 4" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-scale-chromatic": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz", - "integrity": "sha512-Lx9thtxAKrO2Pq6OO2Ua474opeziKr279P/TKZsMAhYyNDD3EnCffdbgeSYN5O7m2ByQsxtuP2CSDczNUIZ22g==", - "dependencies": { - "d3-color": "1 - 3", - "d3-interpolate": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-selection": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", - "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-shape": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", - "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", - "dependencies": { - "d3-path": "^3.1.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-time": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", - "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", - "dependencies": { - "d3-array": "2 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-time-format": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", - "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", - "dependencies": { - "d3-time": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-timer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", - "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-transition": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", - "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", - "dependencies": { - "d3-color": "1 - 3", - "d3-dispatch": "1 - 3", - "d3-ease": "1 - 3", - "d3-interpolate": "1 - 3", - "d3-timer": "1 - 3" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "d3-selection": "2 - 3" - } - }, - "node_modules/d3-zoom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", - "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-drag": "2 - 3", - "d3-interpolate": "1 - 3", - "d3-selection": "2 - 3", - "d3-transition": "2 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/dagre-d3-es": { - "version": "7.0.10", - "resolved": "https://registry.npmjs.org/dagre-d3-es/-/dagre-d3-es-7.0.10.tgz", - "integrity": "sha512-qTCQmEhcynucuaZgY5/+ti3X/rnszKZhEQH/ZdWdtP1tA/y3VoHJzcVrO9pjjJCNpigfscAtoUB5ONcd2wNn0A==", - "dependencies": { - "d3": "^7.8.2", - "lodash-es": "^4.17.21" - } - }, - "node_modules/damerau-levenshtein": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", - "dev": true - }, - "node_modules/data-urls": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", - "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", - "dev": true, - "dependencies": { - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/dayjs": { - "version": "1.11.10", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz", - "integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==" - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true - }, - "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==", - "dependencies": { - "character-entities": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/deep-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", - "dev": true, - "dependencies": { - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/deep-equal": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", - "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.5", - "es-get-iterator": "^1.1.3", - "get-intrinsic": "^1.2.2", - "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.2", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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 - }, - "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": { - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "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": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/delaunator": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", - "integrity": "sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==", - "dependencies": { - "robust-predicates": "^3.0.2" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", - "engines": { - "node": ">=6" - } - }, - "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==", - "dependencies": { - "dequal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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==", - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/diff-sequences": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", - "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "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": ">=8" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/dom-accessibility-api": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", - "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", - "dev": true - }, - "node_modules/dompurify": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.0.8.tgz", - "integrity": "sha512-b7uwreMYL2eZhrSCRC4ahLTeZcPZxSmYfmcQGXGkXiZSNW1X85v+SDM5KsWcpivIiUBH47Ji7NtyUdpLeF5JZQ==" - }, - "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/electron-to-chromium": { - "version": "1.4.648", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.648.tgz", - "integrity": "sha512-EmFMarXeqJp9cUKu/QEciEApn0S/xRcpZWuAm32U7NgoZCimjsilKXHRO9saeEW55eHZagIDg6XTUOv32w9pjg==", - "dev": true - }, - "node_modules/elkjs": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.9.1.tgz", - "integrity": "sha512-JWKDyqAdltuUcyxaECtYG6H4sqysXSLeoXuGUBfRNESMTkj+w+qdb0jya8Z/WI0jVd03WQtCGhS6FOFtlhD5FQ==" - }, - "node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true - }, - "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": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/es-abstract": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", - "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.2", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.5", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.2", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.12", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "safe-array-concat": "^1.0.1", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.8", - "string.prototype.trimend": "^1.0.7", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-get-iterator": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-iterator-helpers": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz", - "integrity": "sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==", - "dev": true, - "dependencies": { - "asynciterator.prototype": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.1", - "es-set-tostringtag": "^2.0.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.2.1", - "globalthis": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "iterator.prototype": "^1.1.2", - "safe-array-concat": "^1.0.1" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", - "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.2", - "has-tostringtag": "^1.0.0", - "hasown": "^2.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", - "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", - "dev": true, - "dependencies": { - "hasown": "^2.0.0" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/esbuild": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", - "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.20.2", - "@esbuild/android-arm": "0.20.2", - "@esbuild/android-arm64": "0.20.2", - "@esbuild/android-x64": "0.20.2", - "@esbuild/darwin-arm64": "0.20.2", - "@esbuild/darwin-x64": "0.20.2", - "@esbuild/freebsd-arm64": "0.20.2", - "@esbuild/freebsd-x64": "0.20.2", - "@esbuild/linux-arm": "0.20.2", - "@esbuild/linux-arm64": "0.20.2", - "@esbuild/linux-ia32": "0.20.2", - "@esbuild/linux-loong64": "0.20.2", - "@esbuild/linux-mips64el": "0.20.2", - "@esbuild/linux-ppc64": "0.20.2", - "@esbuild/linux-riscv64": "0.20.2", - "@esbuild/linux-s390x": "0.20.2", - "@esbuild/linux-x64": "0.20.2", - "@esbuild/netbsd-x64": "0.20.2", - "@esbuild/openbsd-x64": "0.20.2", - "@esbuild/sunos-x64": "0.20.2", - "@esbuild/win32-arm64": "0.20.2", - "@esbuild/win32-ia32": "0.20.2", - "@esbuild/win32-x64": "0.20.2" - } - }, - "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_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, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", - "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.56.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": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-next": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.1.0.tgz", - "integrity": "sha512-SBX2ed7DoRFXC6CQSLc/SbLY9Ut6HxNB2wPTcoIWjUMd7aF7O/SIE7111L8FdZ9TXsNV4pulUDnfthpyPtbFUg==", - "dev": true, - "dependencies": { - "@next/eslint-plugin-next": "14.1.0", - "@rushstack/eslint-patch": "^1.3.3", - "@typescript-eslint/parser": "^5.4.2 || ^6.0.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-import-resolver-typescript": "^3.5.2", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-jsx-a11y": "^6.7.1", - "eslint-plugin-react": "^7.33.2", - "eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705" - }, - "peerDependencies": { - "eslint": "^7.23.0 || ^8.0.0", - "typescript": ">=3.3.1" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-config-prettier": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", - "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", - "dev": true, - "bin": { - "eslint-config-prettier": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=7.0.0" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-import-resolver-typescript": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz", - "integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==", - "dev": true, - "dependencies": { - "debug": "^4.3.4", - "enhanced-resolve": "^5.12.0", - "eslint-module-utils": "^2.7.4", - "fast-glob": "^3.3.1", - "get-tsconfig": "^4.5.0", - "is-core-module": "^2.11.0", - "is-glob": "^4.0.3" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" - }, - "peerDependencies": { - "eslint": "*", - "eslint-plugin-import": "*" - } - }, - "node_modules/eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", - "dev": true, - "dependencies": { - "debug": "^3.2.7" - }, - "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", - "semver": "^6.3.1", - "tsconfig-paths": "^3.15.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-import/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, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz", - "integrity": "sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.23.2", - "aria-query": "^5.3.0", - "array-includes": "^3.1.7", - "array.prototype.flatmap": "^1.3.2", - "ast-types-flow": "^0.0.8", - "axe-core": "=4.7.0", - "axobject-query": "^3.2.1", - "damerau-levenshtein": "^1.0.8", - "emoji-regex": "^9.2.2", - "es-iterator-helpers": "^1.0.15", - "hasown": "^2.0.0", - "jsx-ast-utils": "^3.3.5", - "language-tags": "^1.0.9", - "minimatch": "^3.1.2", - "object.entries": "^1.1.7", - "object.fromentries": "^2.0.7" - }, - "engines": { - "node": ">=4.0" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-plugin-react": { - "version": "7.33.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", - "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flatmap": "^1.3.1", - "array.prototype.tosorted": "^1.1.1", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.12", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.6", - "object.fromentries": "^2.0.6", - "object.hasown": "^1.1.2", - "object.values": "^1.1.6", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.4", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.8" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-plugin-react-hooks": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", - "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", - "dev": true, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" - } - }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", - "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/eslint-plugin-react/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, - "bin": { - "semver": "bin/semver.js" - } - }, - "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, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "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, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "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, - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "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==", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "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, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "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, - "dependencies": { - "estraverse": "^5.2.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, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estree-util-attach-comments": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-2.1.1.tgz", - "integrity": "sha512-+5Ba/xGGS6mnwFbXIuQiDPTbuTxuMCooq3arVv7gPZtYpjp+VXH/NkHAP35OOefPhNG/UGqU3vt/LTABwcHX0w==", - "dependencies": { - "@types/estree": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-build-jsx": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-2.2.2.tgz", - "integrity": "sha512-m56vOXcOBuaF+Igpb9OPAy7f9w9OIkb5yhjsZuaPm7HoGi4oTOQi0h2+yZ+AtKklYFZ+rPC4n0wYCJCEU1ONqg==", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "estree-util-is-identifier-name": "^2.0.0", - "estree-walker": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-is-identifier-name": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz", - "integrity": "sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-to-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-1.2.0.tgz", - "integrity": "sha512-IzU74r1PK5IMMGZXUVZbmiu4A1uhiPgW5hm1GjcOfr4ZzHaMPpLNJjR7HjXiIOzi25nZDrgFTobHTkV5Q6ITjA==", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "astring": "^1.8.0", - "source-map": "^0.7.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-value-to-estree": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-1.3.0.tgz", - "integrity": "sha512-Y+ughcF9jSUJvncXwqRageavjrNPAI+1M/L3BI3PyLp1nmgYTGUXU6t5z1Y7OWuThoDdhPME07bQU+d5LxdJqw==", - "dependencies": { - "is-plain-obj": "^3.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/estree-util-visit": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-1.2.1.tgz", - "integrity": "sha512-xbgqcrkIVbIG+lI/gzbvd9SGTJL4zqJKBFttUl5pP27KhAjtMKbX/mQXJ7qgyXpMgVy/zvpm0xoQQaGL8OloOw==", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/unist": "^2.0.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==", - "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, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/execa": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz", - "integrity": "sha512-zDWS+Rb1E8BlqqhALSt9kUhss8Qq4nN3iof3gsOdyINksElaPyNBtKUMTR62qhvgVWR0CqCX7sdnKe4MnUbFEA==", - "dependencies": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/execa/node_modules/cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "node_modules/execa/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/execa/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/execa/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/execa/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==" - }, - "node_modules/execa/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/execa/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "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-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, - "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" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/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": ">= 6" - } - }, - "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 - }, - "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 - }, - "node_modules/fastq": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.0.tgz", - "integrity": "sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "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, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "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, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "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/flexsearch": { - "version": "0.7.43", - "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.7.43.tgz", - "integrity": "sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==" - }, - "node_modules/focus-visible": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/focus-visible/-/focus-visible-5.2.0.tgz", - "integrity": "sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==" - }, - "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": { - "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": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "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==", - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "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, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "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": { - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-tsconfig": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", - "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", - "dev": true, - "dependencies": { - "resolve-pkg-maps": "^1.0.0" - }, - "funding": { - "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" - } - }, - "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==", - "dependencies": { - "is-ssh": "^1.4.0", - "parse-url": "^8.1.0" - } - }, - "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==", - "dependencies": { - "git-up": "^7.0.0" - } - }, - "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==" - }, - "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": { - "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" - } - }, - "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, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "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": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/glob/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": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "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==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "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==" - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "node_modules/gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", - "dependencies": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/gray-matter/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/gray-matter/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/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, - "dependencies": { - "get-intrinsic": "^1.2.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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": ">= 0.4" - }, - "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" - }, - "funding": { - "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==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hash-obj": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hash-obj/-/hash-obj-4.0.0.tgz", - "integrity": "sha512-FwO1BUVWkyHasWDW4S8o0ssQXjvyghLV2rfVhnN36b2bbcj45eGiuzdn9XOvOpjV3TKQD7Gm2BWNXdE9V4KKYg==", - "dependencies": { - "is-obj": "^3.0.0", - "sort-keys": "^5.0.0", - "type-fest": "^1.0.2" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/hash-obj/node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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": ">= 0.4" - } - }, - "node_modules/hast-util-from-dom": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/hast-util-from-dom/-/hast-util-from-dom-5.0.0.tgz", - "integrity": "sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg==", - "dependencies": { - "@types/hast": "^3.0.0", - "hastscript": "^8.0.0", - "web-namespaces": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-dom/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/hast-util-from-html": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-from-html/-/hast-util-from-html-2.0.1.tgz", - "integrity": "sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==", - "dependencies": { - "@types/hast": "^3.0.0", - "devlop": "^1.1.0", - "hast-util-from-parse5": "^8.0.0", - "parse5": "^7.0.0", - "vfile": "^6.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-html-isomorphic": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hast-util-from-html-isomorphic/-/hast-util-from-html-isomorphic-2.0.0.tgz", - "integrity": "sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==", - "dependencies": { - "@types/hast": "^3.0.0", - "hast-util-from-dom": "^5.0.0", - "hast-util-from-html": "^2.0.0", - "unist-util-remove-position": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-html-isomorphic/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/hast-util-from-html/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/hast-util-from-html/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/hast-util-from-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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-html/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", - "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/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==", - "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" - } - }, - "node_modules/hast-util-from-parse5/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/hast-util-from-parse5/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/hast-util-from-parse5/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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-parse5/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", - "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/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==", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-is-element/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/hast-util-parse-selector": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", - "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-parse-selector/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/hast-util-raw": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.2.tgz", - "integrity": "sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA==", - "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" - } - }, - "node_modules/hast-util-raw/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/hast-util-raw/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/hast-util-raw/node_modules/unist-util-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", - "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-raw/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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-raw/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", - "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/hast-util-to-estree": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-2.3.3.tgz", - "integrity": "sha512-ihhPIUPxN0v0w6M5+IiAZZrn0LH2uZomeWwhn7uP7avZC6TE7lIiEh2yBMPr5+zi1aUCXq6VoYRgs2Bw9xmycQ==", - "dependencies": { - "@types/estree": "^1.0.0", - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^2.0.0", - "@types/unist": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "estree-util-attach-comments": "^2.0.0", - "estree-util-is-identifier-name": "^2.0.0", - "hast-util-whitespace": "^2.0.0", - "mdast-util-mdx-expression": "^1.0.0", - "mdast-util-mdxjs-esm": "^1.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "style-to-object": "^0.4.1", - "unist-util-position": "^4.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "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": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-parse5/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/hast-util-to-text": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.0.tgz", - "integrity": "sha512-EWiE1FSArNBPUo1cKWtzqgnuRQwEeQbQtnFJRYV1hb1BWDgrAlBU0ExptvZMM/KSA82cDpm2sFGf3Dmc5Mza3w==", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "hast-util-is-element": "^3.0.0", - "unist-util-find-after": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-text/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/hast-util-to-text/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/hast-util-whitespace": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", - "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hastscript": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-8.0.0.tgz", - "integrity": "sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==", - "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" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hastscript/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/heap": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz", - "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==" - }, - "node_modules/html-encoding-sniffer": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", - "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", - "dev": true, - "dependencies": { - "whatwg-encoding": "^3.1.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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/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": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/human-signals": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", - "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", - "dev": true, - "engines": { - "node": ">=16.17.0" - } - }, - "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==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/immutable": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", - "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==" - }, - "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, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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": ">=0.8.19" - } - }, - "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": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "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/inline-style-parser": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" - }, - "node_modules/internal-slot": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", - "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.2", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/internmap": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", - "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", - "engines": { - "node": ">=12" - } - }, - "node_modules/intersection-observer": { - "version": "0.12.2", - "resolved": "https://registry.npmjs.org/intersection-observer/-/intersection-observer-0.12.2.tgz", - "integrity": "sha512-7m1vEcPCxXYI8HqnL8CKI6siDyD+eIWSwgB3DZA+ZTogxk9I4CDnj4wilt9x/+/QbHI4YG5YZNmC6458/e9Ktg==" - }, - "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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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==", - "dependencies": { - "is-alphabetical": "^2.0.0", - "is-decimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-async-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", - "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "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/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, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "engines": { - "node": ">=0.10.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==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-finalizationregistry": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", - "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "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": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-3.0.0.tgz", - "integrity": "sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, - "node_modules/is-reference": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz", - "integrity": "sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==", - "dependencies": { - "@types/estree": "*" - } - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dependencies": { - "protocols": "^2.0.1" - } - }, - "node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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": { - "which-typed-array": "^1.1.11" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakset": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", - "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.4.tgz", - "integrity": "sha512-wHOoEsNJTVltaJp8eVkm8w+GVkVNHT2YDYo53YdzQEL2gWm1hBX5cGFR9hQJtuGLebidVX7et3+dmDZrmclduw==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.23", - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", - "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/iterator.prototype": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", - "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", - "dev": true, - "dependencies": { - "define-properties": "^1.2.1", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", - "reflect.getprototypeof": "^1.0.4", - "set-function-name": "^2.0.1" - } - }, - "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": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "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==" - }, - "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==", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsdom": { - "version": "24.0.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.0.0.tgz", - "integrity": "sha512-UDS2NayCvmXSXVP6mpTj+73JnNQadZlr9N68189xib2tx5Mls7swlTNao26IoHv46BZJFvXygyRtyXd1feAk1A==", - "dev": true, - "dependencies": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.2", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.7", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.6.0", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.3", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.16.0", - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "canvas": "^2.11.2" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "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 - }, - "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 - }, - "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 - }, - "node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/jsonc-parser": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz", - "integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==" - }, - "node_modules/jsx-ast-utils": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", - "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/katex": { - "version": "0.16.10", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.10.tgz", - "integrity": "sha512-ZiqaC04tp2O5utMsl2TEZTXxa6WSC4yo0fv5ML++D3QZv/vx2Mct0mTlRx3O+uUkjfuAgOkzsCmq5MiUEsDDdA==", - "funding": [ - "https://opencollective.com/katex", - "https://github.com/sponsors/katex" - ], - "dependencies": { - "commander": "^8.3.0" - }, - "bin": { - "katex": "cli.js" - } - }, - "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, - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/khroma": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/khroma/-/khroma-2.1.0.tgz", - "integrity": "sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==" - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/kleur": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", - "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/language-subtag-registry": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", - "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", - "dev": true - }, - "node_modules/language-tags": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", - "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", - "dev": true, - "dependencies": { - "language-subtag-registry": "^0.3.20" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/layout-base": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-1.0.2.tgz", - "integrity": "sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==" - }, - "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, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "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": { - "mlly": "^1.4.2", - "pkg-types": "^1.0.3" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "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, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" - }, - "node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" - }, - "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 - }, - "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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/loupe": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", - "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", - "dev": true, - "dependencies": { - "get-func-name": "^2.0.1" - } - }, - "node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/lz-string": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz", - "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==", - "dev": true, - "bin": { - "lz-string": "bin/bin.js" - } - }, - "node_modules/magic-string": { - "version": "0.30.10", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", - "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", - "dev": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15" - } - }, - "node_modules/magicast": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.3.tgz", - "integrity": "sha512-ZbrP1Qxnpoes8sz47AM0z08U+jW6TyRgZzcWy3Ma3vDhJttwMwAFDMMQFobwdBxByBD46JYmxRzeF7w2+wJEuw==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.23.6", - "@babel/types": "^7.23.6", - "source-map-js": "^1.0.2" - } - }, - "node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "dev": true, - "dependencies": { - "semver": "^7.5.3" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/markdown-extensions": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-1.1.1.tgz", - "integrity": "sha512-WWC0ZuMzCyDHYCasEGs4IPvLyTGftYwh6wIEOULOF0HXcqZlhwRzrK0w2VUlxWA98xnvb/jszw4ZSkJ6ADpM6Q==", - "engines": { - "node": ">=0.10.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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/match-sorter": { - "version": "6.3.3", - "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.3.tgz", - "integrity": "sha512-sgiXxrRijEe0SzHKGX4HouCpfHRPnqteH42UdMEW7BlWy990ZkzcvonJGv4Uu9WE7Y1f8Yocm91+4qFPCbmNww==", - "dependencies": { - "@babel/runtime": "^7.23.8", - "remove-accents": "0.5.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==", - "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" - } - }, - "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==", - "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/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==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "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" - } - }, - "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==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/mdast-util-find-and-replace/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==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "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-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" - } - }, - "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==", - "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" - } - }, - "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==", - "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" - } - }, - "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==", - "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" - } - }, - "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==", - "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-markdown": "^1.3.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "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/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==", - "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-markdown": "^1.3.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-math": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-2.0.2.tgz", - "integrity": "sha512-8gmkKVp9v6+Tgjtq6SYx9kGPpTf6FVYRa53/DLh479aldR9AyP48qeVOgNZ5X7QUK7nOy4yw7vg6mbiGcs9jWQ==", - "dependencies": { - "@types/mdast": "^3.0.0", - "longest-streak": "^3.0.0", - "mdast-util-to-markdown": "^1.3.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-2.0.1.tgz", - "integrity": "sha512-38w5y+r8nyKlGvNjSEqWrhG0w5PmnRA+wnBvm+ulYCct7nsGYhFVb0lljS9bQav4psDAS1eGkP2LMVcZBi/aqw==", - "dependencies": { - "mdast-util-from-markdown": "^1.0.0", - "mdast-util-mdx-expression": "^1.0.0", - "mdast-util-mdx-jsx": "^2.0.0", - "mdast-util-mdxjs-esm": "^1.0.0", - "mdast-util-to-markdown": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx-expression": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-1.3.2.tgz", - "integrity": "sha512-xIPmR5ReJDu/DHH1OoIT1HkuybIfRGYRywC+gJtI7qHjCJp/M9jrmBEJW22O8lskDWm562BX2W8TiAwRTb0rKA==", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "mdast-util-from-markdown": "^1.0.0", - "mdast-util-to-markdown": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx-jsx": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-2.1.4.tgz", - "integrity": "sha512-DtMn9CmVhVzZx3f+optVDF8yFgQVt7FghCRNdlIaS3X5Bnym3hZwPbg/XW86vdpKjlc1PVj26SpnLGeJBXD3JA==", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "ccount": "^2.0.0", - "mdast-util-from-markdown": "^1.1.0", - "mdast-util-to-markdown": "^1.3.0", - "parse-entities": "^4.0.0", - "stringify-entities": "^4.0.0", - "unist-util-remove-position": "^4.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx-jsx/node_modules/unist-util-remove-position": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-4.0.2.tgz", - "integrity": "sha512-TkBb0HABNmxzAcfLf4qsIbFbaPDvMO6wa3b3j4VcEzFVaw1LBKwnW4/sRJ/atSLSzoIg41JWEdnE7N6DIhGDGQ==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-visit": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx-jsx/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==", - "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/mdast-util-mdx-jsx/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==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdx-jsx/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-mdxjs-esm": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-1.3.1.tgz", - "integrity": "sha512-SXqglS0HrEvSdUEfoXFtcg7DRl7S2cwOXc7jkuusG472Mmjag34DUDeOJUZtl+BVnyeO1frIgVpHlNRWc2gk/w==", - "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "mdast-util-from-markdown": "^1.0.0", - "mdast-util-to-markdown": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "dependencies": { - "@types/mdast": "^3.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.1.0.tgz", - "integrity": "sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==", - "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", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/mdast-util-to-hast/node_modules/@types/mdast": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.3.tgz", - "integrity": "sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/mdast-util-to-hast/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "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==", - "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/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==", - "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-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==", - "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/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==", - "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-types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", - "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", - "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/unist-util-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", - "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast/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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", - "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/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==", - "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" - } - }, - "node_modules/mdast-util-to-markdown/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==", - "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/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==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "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==", - "dependencies": { - "@types/mdast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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/mermaid": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.7.0.tgz", - "integrity": "sha512-PsvGupPCkN1vemAAjScyw4pw34p4/0dZkSrqvAB26hUvJulOWGIwt35FZWmT9wPIi4r0QLa5X0PB4YLIGn0/YQ==", - "dependencies": { - "@braintree/sanitize-url": "^6.0.1", - "@types/d3-scale": "^4.0.3", - "@types/d3-scale-chromatic": "^3.0.0", - "cytoscape": "^3.23.0", - "cytoscape-cose-bilkent": "^4.1.0", - "cytoscape-fcose": "^2.1.0", - "d3": "^7.4.0", - "d3-sankey": "^0.12.3", - "dagre-d3-es": "7.0.10", - "dayjs": "^1.11.7", - "dompurify": "^3.0.5", - "elkjs": "^0.9.0", - "khroma": "^2.0.0", - "lodash-es": "^4.17.21", - "mdast-util-from-markdown": "^1.3.0", - "non-layered-tidy-tree-layout": "^2.0.2", - "stylis": "^4.1.3", - "ts-dedent": "^2.2.0", - "uuid": "^9.0.0", - "web-worker": "^1.2.0" - } - }, - "node_modules/micromark": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.2.0.tgz", - "integrity": "sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==", - "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/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==", - "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/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==", - "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.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==", - "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" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "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" - } - }, - "node_modules/micromark-extension-gfm-strikethrough": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.7.tgz", - "integrity": "sha512-sX0FawVE1o3abGk3vRjOH50L5TTLr3b5XMqnP9YDRb34M0v5OoZhG+OHFz1OffZ9dlwgpTBKaT4XW/AsUVnSDw==", - "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" - } - }, - "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==", - "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" - } - }, - "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==", - "dependencies": { - "micromark-util-types": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "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" - } - }, - "node_modules/micromark-extension-math": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-2.1.2.tgz", - "integrity": "sha512-es0CcOV89VNS9wFmyn+wyFTKweXGW4CEvdaAca6SWRWPyYCbBisnjaHLjWO4Nszuiud84jCpkHsqAJoa768Pvg==", - "dependencies": { - "@types/katex": "^0.16.0", - "katex": "^0.16.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/micromark-extension-mdx-expression": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-1.0.8.tgz", - "integrity": "sha512-zZpeQtc5wfWKdzDsHRBY003H2Smg+PUi2REhqgIhdzAa5xonhP03FcXxqFSerFiNUr5AWmHpaNPQTBVOS4lrXw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "@types/estree": "^1.0.0", - "micromark-factory-mdx-expression": "^1.0.0", - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-events-to-acorn": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" - } - }, - "node_modules/micromark-extension-mdx-jsx": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-1.0.5.tgz", - "integrity": "sha512-gPH+9ZdmDflbu19Xkb8+gheqEDqkSpdCEubQyxuz/Hn8DOXiXvrXeikOoBA71+e8Pfi0/UYmU3wW3H58kr7akA==", - "dependencies": { - "@types/acorn": "^4.0.0", - "@types/estree": "^1.0.0", - "estree-util-is-identifier-name": "^2.0.0", - "micromark-factory-mdx-expression": "^1.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", - "vfile-message": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdx-jsx/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdx-md": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-1.0.1.tgz", - "integrity": "sha512-7MSuj2S7xjOQXAjjkbjBsHkMtb+mDGVW6uI2dBL9snOBCbZmoNgDAeZ0nSn9j3T42UE/g2xVNMn18PJxZvkBEA==", - "dependencies": { - "micromark-util-types": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdxjs": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-1.0.1.tgz", - "integrity": "sha512-7YA7hF6i5eKOfFUzZ+0z6avRG52GpWR8DL+kN47y3f2KhxbBZMhmxe7auOeaTBrW2DenbbZTf1ea9tA2hDpC2Q==", - "dependencies": { - "acorn": "^8.0.0", - "acorn-jsx": "^5.0.0", - "micromark-extension-mdx-expression": "^1.0.0", - "micromark-extension-mdx-jsx": "^1.0.0", - "micromark-extension-mdx-md": "^1.0.0", - "micromark-extension-mdxjs-esm": "^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-mdxjs-esm": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-1.0.5.tgz", - "integrity": "sha512-xNRBw4aoURcyz/S69B19WnZAkWJMxHMT5hE36GtDAyhoyn/8TuAeqjFJQlwk+MKQsUD7b3l7kFX+vlfVWgcX1w==", - "dependencies": { - "@types/estree": "^1.0.0", - "micromark-core-commonmark": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-events-to-acorn": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "unist-util-position-from-estree": "^1.1.0", - "uvu": "^0.5.0", - "vfile-message": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromark-extension-mdxjs-esm/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "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/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==", - "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/micromark-factory-mdx-expression": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-1.0.9.tgz", - "integrity": "sha512-jGIWzSmNfdnkJq05c7b0+Wv0Kfz3NJ3N4cBjnbO4zjXIlxJr+f8lk+5ZmwFvqdAbUy2q6B5rCY//g0QAAaXDWA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "@types/estree": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-events-to-acorn": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "unist-util-position-from-estree": "^1.0.0", - "uvu": "^0.5.0", - "vfile-message": "^3.0.0" - } - }, - "node_modules/micromark-factory-mdx-expression/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "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/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==", - "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/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==", - "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/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==", - "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-chunked": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz", - "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==", - "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-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==", - "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/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==", - "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-types": "^1.0.0" - } - }, - "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==", - "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": { - "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==", - "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": "^1.0.0", - "micromark-util-decode-numeric-character-reference": "^1.0.0", - "micromark-util-symbol": "^1.0.0" - } - }, - "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==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "node_modules/micromark-util-events-to-acorn": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-1.2.3.tgz", - "integrity": "sha512-ij4X7Wuc4fED6UoLWkmo0xJQhsktfNh1J0m8g4PbIMPlx+ek/4YdW5mvbye8z/aZvAPUoxgXHrwVlXAPKMRp1w==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "@types/acorn": "^4.0.0", - "@types/estree": "^1.0.0", - "@types/unist": "^2.0.0", - "estree-util-visit": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0", - "vfile-message": "^3.0.0" - } - }, - "node_modules/micromark-util-events-to-acorn/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "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==", - "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-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==", - "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/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==", - "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/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==", - "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-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" - } - }, - "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==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "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==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "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, - "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, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "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/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/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/mlly": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.0.tgz", - "integrity": "sha512-U9SDaXGEREBYQgfejV97coK0UL1r+qnF2SyO9A3qcI8MzKnsIFKHNVEkrDyNncQTKQQumsasmeq84eNMdBfsNQ==", - "dev": true, - "dependencies": { - "acorn": "^8.11.3", - "pathe": "^1.1.2", - "pkg-types": "^1.1.0", - "ufo": "^1.5.3" - } - }, - "node_modules/mri": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", - "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", - "engines": { - "node": ">=4" - } - }, - "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==" - }, - "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "node_modules/next": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/next/-/next-14.1.1.tgz", - "integrity": "sha512-McrGJqlGSHeaz2yTRPkEucxQKe5Zq7uPwyeHNmJaZNY4wx9E9QdxmTp310agFRoMuIYgQrCrT3petg13fSVOww==", - "dependencies": { - "@next/env": "14.1.1", - "@swc/helpers": "0.5.2", - "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001579", - "graceful-fs": "^4.2.11", - "postcss": "8.4.31", - "styled-jsx": "5.1.1" - }, - "bin": { - "next": "dist/bin/next" - }, - "engines": { - "node": ">=18.17.0" - }, - "optionalDependencies": { - "@next/swc-darwin-arm64": "14.1.1", - "@next/swc-darwin-x64": "14.1.1", - "@next/swc-linux-arm64-gnu": "14.1.1", - "@next/swc-linux-arm64-musl": "14.1.1", - "@next/swc-linux-x64-gnu": "14.1.1", - "@next/swc-linux-x64-musl": "14.1.1", - "@next/swc-win32-arm64-msvc": "14.1.1", - "@next/swc-win32-ia32-msvc": "14.1.1", - "@next/swc-win32-x64-msvc": "14.1.1" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.1.0", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "sass": "^1.3.0" - }, - "peerDependenciesMeta": { - "@opentelemetry/api": { - "optional": true - }, - "sass": { - "optional": true - } - } - }, - "node_modules/next-mdx-remote": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/next-mdx-remote/-/next-mdx-remote-4.4.1.tgz", - "integrity": "sha512-1BvyXaIou6xy3XoNF4yaMZUCb6vD2GTAa5ciOa6WoO+gAUTYsb1K4rI/HSC2ogAWLrb/7VSV52skz07vOzmqIQ==", - "dependencies": { - "@mdx-js/mdx": "^2.2.1", - "@mdx-js/react": "^2.2.1", - "vfile": "^5.3.0", - "vfile-matter": "^3.0.1" - }, - "engines": { - "node": ">=14", - "npm": ">=7" - }, - "peerDependencies": { - "react": ">=16.x <=18.x", - "react-dom": ">=16.x <=18.x" - } - }, - "node_modules/next-seo": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/next-seo/-/next-seo-6.4.0.tgz", - "integrity": "sha512-XQFxkOL2hw0YE+P100HbI3EAvcludlHPxuzMgaIjKb7kPK0CvjGvLFjd9hszZFEDc5oiQkGFA8+cuWcnip7eYA==", - "peerDependencies": { - "next": "^8.1.1-canary.54 || >=9.0.0", - "react": ">=16.0.0", - "react-dom": ">=16.0.0" - } - }, - "node_modules/next-themes": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz", - "integrity": "sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==", - "peerDependencies": { - "next": "*", - "react": "*", - "react-dom": "*" - } - }, - "node_modules/nextra": { - "version": "2.13.2", - "resolved": "https://registry.npmjs.org/nextra/-/nextra-2.13.2.tgz", - "integrity": "sha512-pIgOSXNUqTz1laxV4ChFZOU7lzJAoDHHaBPj8L09PuxrLKqU1BU/iZtXAG6bQeKCx8EPdBsoXxEuENnL9QGnGA==", - "dependencies": { - "@headlessui/react": "^1.7.10", - "@mdx-js/mdx": "^2.3.0", - "@mdx-js/react": "^2.3.0", - "@napi-rs/simple-git": "^0.1.9", - "@theguild/remark-mermaid": "^0.0.5", - "@theguild/remark-npm2yarn": "^0.2.0", - "clsx": "^2.0.0", - "github-slugger": "^2.0.0", - "graceful-fs": "^4.2.11", - "gray-matter": "^4.0.3", - "katex": "^0.16.9", - "lodash.get": "^4.4.2", - "next-mdx-remote": "^4.2.1", - "p-limit": "^3.1.0", - "rehype-katex": "^7.0.0", - "rehype-pretty-code": "0.9.11", - "rehype-raw": "^7.0.0", - "remark-gfm": "^3.0.1", - "remark-math": "^5.1.1", - "remark-reading-time": "^2.0.1", - "shiki": "^0.14.3", - "slash": "^3.0.0", - "title": "^3.5.3", - "unist-util-remove": "^4.0.0", - "unist-util-visit": "^5.0.0", - "zod": "^3.22.3" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "next": ">=9.5.3", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "node_modules/nextra-theme-docs": { - "version": "2.13.2", - "resolved": "https://registry.npmjs.org/nextra-theme-docs/-/nextra-theme-docs-2.13.2.tgz", - "integrity": "sha512-yE4umXaImp1/kf/sFciPj2+EFrNSwd9Db26hi98sIIiujzGf3+9eUgAz45vF9CwBw50FSXxm1QGRcY+slQ4xQQ==", - "dependencies": { - "@headlessui/react": "^1.7.10", - "@popperjs/core": "^2.11.6", - "clsx": "^2.0.0", - "escape-string-regexp": "^5.0.0", - "flexsearch": "^0.7.31", - "focus-visible": "^5.2.0", - "git-url-parse": "^13.1.0", - "intersection-observer": "^0.12.2", - "match-sorter": "^6.3.1", - "next-seo": "^6.0.0", - "next-themes": "^0.2.1", - "scroll-into-view-if-needed": "^3.0.0", - "zod": "^3.22.3" - }, - "peerDependencies": { - "next": ">=9.5.3", - "nextra": "2.13.2", - "react": ">=16.13.1", - "react-dom": ">=16.13.1" - } - }, - "node_modules/nextra-theme-docs/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==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "node_modules/non-layered-tidy-tree-layout": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/non-layered-tidy-tree-layout/-/non-layered-tidy-tree-layout-2.0.2.tgz", - "integrity": "sha512-gkXMxRzUH+PB0ax9dUN0yYF0S25BqeAYqhgMaLUFmpXLEk7Fcu8f4emJuOAY0V8kjDICxROIKsTAKsV/v355xw==" - }, - "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==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-path/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-to-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/npm-to-yarn/-/npm-to-yarn-2.1.0.tgz", - "integrity": "sha512-2C1IgJLdJngq1bSER7K7CGFszRr9s2rijEwvENPEgI0eK9xlD3tNwDc0UJnRj7FIT2aydWm72jB88uVswAhXHA==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/nebrelbug/npm-to-yarn?sponsor=1" - } - }, - "node_modules/nwsapi": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", - "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", - "dev": true - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", - "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.entries": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", - "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", - "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.groupby": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" - } - }, - "node_modules/object.hasown": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.3.tgz", - "integrity": "sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==", - "dev": true, - "dependencies": { - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.values": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", - "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "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/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": 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" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-entities": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz", - "integrity": "sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==", - "dependencies": { - "@types/unist": "^2.0.0", - "character-entities": "^2.0.0", - "character-entities-legacy": "^3.0.0", - "character-reference-invalid": "^2.0.0", - "decode-named-character-reference": "^1.0.0", - "is-alphanumerical": "^2.0.0", - "is-decimal": "^2.0.0", - "is-hexadecimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/parse-numeric-range": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", - "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" - }, - "node_modules/parse-path": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz", - "integrity": "sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==", - "dependencies": { - "protocols": "^2.0.0" - } - }, - "node_modules/parse-url": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz", - "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==", - "dependencies": { - "parse-path": "^7.0.0" - } - }, - "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", - "dependencies": { - "entities": "^4.4.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", - "dev": true, - "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/pathe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", - "dev": true - }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/periscopic": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz", - "integrity": "sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==", - "dependencies": { - "@types/estree": "^1.0.0", - "estree-walker": "^3.0.0", - "is-reference": "^3.0.0" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pkg-types": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.0.tgz", - "integrity": "sha512-/RpmvKdxKf8uILTtoOhAgf30wYbP2Qw+L9p3Rvshx1JZVX+XQNZQFjlbmGHEGIm4CkVPlSn+NXmIM8+9oWQaSA==", - "dev": true, - "dependencies": { - "confbox": "^0.1.7", - "mlly": "^1.6.1", - "pathe": "^1.1.2" - } - }, - "node_modules/playwright": { - "version": "1.41.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.1.tgz", - "integrity": "sha512-gdZAWG97oUnbBdRL3GuBvX3nDDmUOuqzV/D24dytqlKt+eI5KbwusluZRGljx1YoJKZ2NRPaeWiFTeGZO7SosQ==", - "dev": true, - "dependencies": { - "playwright-core": "1.41.1" - }, - "bin": { - "playwright": "cli.js" - }, - "engines": { - "node": ">=16" - }, - "optionalDependencies": { - "fsevents": "2.3.2" - } - }, - "node_modules/playwright-core": { - "version": "1.41.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.1.tgz", - "integrity": "sha512-/KPO5DzXSMlxSX77wy+HihKGOunh3hqndhqeo/nMxfigiKzogn8kfL0ZBDu0L1RKgan5XHCPmn6zXd2NUJgjhg==", - "dev": true, - "bin": { - "playwright-core": "cli.js" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/playwright/node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prettier": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.4.tgz", - "integrity": "sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==", - "dev": true, - "bin": { - "prettier": "bin/prettier.cjs" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/pretty-format/node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true - }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dev": true, - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "node_modules/property-information": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.4.1.tgz", - "integrity": "sha512-OHYtXfu5aI2sS2LWFSN5rgJjrQ4pCy8i1jubJLe2QvMF8JJ++HXTUIVWFLfXJoaOfvYYjk2SN8J2wFUWIGXT4w==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/protocols": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz", - "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==" - }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" - }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "node_modules/punycode": { - "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" - } - }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "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/react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", - "dependencies": { - "loose-envify": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dom": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", - "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.0" - }, - "peerDependencies": { - "react": "^18.2.0" - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true - }, - "node_modules/react-refresh": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", - "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/reading-time": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", - "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" - }, - "node_modules/reflect.getprototypeof": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz", - "integrity": "sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "globalthis": "^1.0.3", - "which-builtin-type": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" - }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", - "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "set-function-name": "^2.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/rehype-katex": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-7.0.0.tgz", - "integrity": "sha512-h8FPkGE00r2XKU+/acgqwWUlyzve1IiOKwsEkg4pDL3k48PiE0Pt+/uLtVHDVkN1yA4iurZN6UES8ivHVEQV6Q==", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/katex": "^0.16.0", - "hast-util-from-html-isomorphic": "^2.0.0", - "hast-util-to-text": "^4.0.0", - "katex": "^0.16.0", - "unist-util-visit-parents": "^6.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-katex/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/rehype-katex/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/rehype-katex/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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-katex/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", - "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/rehype-pretty-code": { - "version": "0.9.11", - "resolved": "https://registry.npmjs.org/rehype-pretty-code/-/rehype-pretty-code-0.9.11.tgz", - "integrity": "sha512-Eq90eCYXQJISktfRZ8PPtwc5SUyH6fJcxS8XOMnHPUQZBtC6RYo67gGlley9X2nR8vlniPj0/7oCDEYHKQa/oA==", - "dependencies": { - "@types/hast": "^2.0.0", - "hash-obj": "^4.0.0", - "parse-numeric-range": "^1.3.0" - }, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "shiki": "*" - } - }, - "node_modules/rehype-raw": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/rehype-raw/-/rehype-raw-7.0.0.tgz", - "integrity": "sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==", - "dependencies": { - "@types/hast": "^3.0.0", - "hast-util-raw": "^9.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-raw/node_modules/@types/hast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.3.tgz", - "integrity": "sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/rehype-raw/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/rehype-raw/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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-raw/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", - "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/remark-gfm": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-3.0.1.tgz", - "integrity": "sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==", - "dependencies": { - "@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/remark-math": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-5.1.1.tgz", - "integrity": "sha512-cE5T2R/xLVtfFI4cCePtiRn+e6jKMtFDR3P8V3qpv8wpKjwvHoBA4eJzvX+nVrnlNy0911bdGmuspCSwetfYHw==", - "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-math": "^2.0.0", - "micromark-extension-math": "^2.0.0", - "unified": "^10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-mdx": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-2.3.0.tgz", - "integrity": "sha512-g53hMkpM0I98MU266IzDFMrTD980gNF3BJnkyFcmN+dD873mQeD5rdMO3Y2X+x8umQfbSE0PcoEDl7ledSA+2g==", - "dependencies": { - "mdast-util-mdx": "^2.0.0", - "micromark-extension-mdxjs": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "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-reading-time": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/remark-reading-time/-/remark-reading-time-2.0.1.tgz", - "integrity": "sha512-fy4BKy9SRhtYbEHvp6AItbRTnrhiDGbqLQTSYVbQPGuRCncU1ubSsh9p/W5QZSxtYcUXv8KGL0xBgPLyNJA1xw==", - "dependencies": { - "estree-util-is-identifier-name": "^2.0.0", - "estree-util-value-to-estree": "^1.3.0", - "reading-time": "^1.3.0", - "unist-util-visit": "^3.1.0" - } - }, - "node_modules/remark-reading-time/node_modules/unist-util-visit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-3.1.0.tgz", - "integrity": "sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-reading-time/node_modules/unist-util-visit-parents": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-4.1.1.tgz", - "integrity": "sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^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==", - "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/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==", - "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-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==", - "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/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==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remove-accents": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.5.0.tgz", - "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==" - }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "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, - "engines": { - "node": ">=4" - } - }, - "node_modules/resolve-pkg-maps": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", - "dev": true, - "funding": { - "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" - } - }, - "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/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "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, - "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": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/robust-predicates": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", - "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" - }, - "node_modules/rollup": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.14.0.tgz", - "integrity": "sha512-Qe7w62TyawbDzB4yt32R0+AbIo6m1/sqO7UPzFS8Z/ksL5mrfhA0v4CavfdmFav3D+ub4QeAgsGEe84DoWe/nQ==", - "dev": true, - "dependencies": { - "@types/estree": "1.0.5" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.14.0", - "@rollup/rollup-android-arm64": "4.14.0", - "@rollup/rollup-darwin-arm64": "4.14.0", - "@rollup/rollup-darwin-x64": "4.14.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.14.0", - "@rollup/rollup-linux-arm64-gnu": "4.14.0", - "@rollup/rollup-linux-arm64-musl": "4.14.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.14.0", - "@rollup/rollup-linux-riscv64-gnu": "4.14.0", - "@rollup/rollup-linux-s390x-gnu": "4.14.0", - "@rollup/rollup-linux-x64-gnu": "4.14.0", - "@rollup/rollup-linux-x64-musl": "4.14.0", - "@rollup/rollup-win32-arm64-msvc": "4.14.0", - "@rollup/rollup-win32-ia32-msvc": "4.14.0", - "@rollup/rollup-win32-x64-msvc": "4.14.0", - "fsevents": "~2.3.2" - } - }, - "node_modules/rrweb-cssom": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.6.0.tgz", - "integrity": "sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==", - "dev": true - }, - "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", - "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" - } - }, - "node_modules/rw": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", - "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==" - }, - "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==", - "dependencies": { - "mri": "^1.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/safe-array-concat": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.0.tgz", - "integrity": "sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.5", - "get-intrinsic": "^1.2.2", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">=0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-regex-test": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.2.tgz", - "integrity": "sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.5", - "get-intrinsic": "^1.2.2", - "is-regex": "^1.1.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/sass": { - "version": "1.77.8", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.8.tgz", - "integrity": "sha512-4UHg6prsrycW20fqLGPShtEvo/WyHRVRHwOP4DzkUrObWoWI05QBSfzU71TVB7PFaL104TwNaHpjlWXAZbQiNQ==", - "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/saxes": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", - "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", - "dev": true, - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=v12.22.7" - } - }, - "node_modules/scheduler": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", - "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", - "dependencies": { - "loose-envify": "^1.1.0" - } - }, - "node_modules/scroll-into-view-if-needed": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-3.1.0.tgz", - "integrity": "sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==", - "dependencies": { - "compute-scroll-into-view": "^3.0.2" - } - }, - "node_modules/section-matter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", - "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", - "dependencies": { - "extend-shallow": "^2.0.1", - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "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": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "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": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/set-function-length": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.0.tgz", - "integrity": "sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==", - "dev": true, - "dependencies": { - "define-data-property": "^1.1.1", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.2", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-function-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", - "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", - "dev": true, - "dependencies": { - "define-data-property": "^1.0.1", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "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": { - "shebang-regex": "^3.0.0" - }, - "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==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/shiki": { - "version": "0.14.7", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.7.tgz", - "integrity": "sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==", - "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", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/siginfo": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", - "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", - "dev": true - }, - "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/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/sort-keys": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-5.0.0.tgz", - "integrity": "sha512-Pdz01AvCAottHTPQGzndktFNdbRA75BgOfeT1hH+AMnJFv8lynkPi42rfeEhpx1saTEI3YNMWxfqu0sFD1G8pw==", - "dependencies": { - "is-plain-obj": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/sort-keys/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==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", - "engines": { - "node": ">=0.10.0" - } - }, - "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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" - }, - "node_modules/stackback": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", - "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", - "dev": true - }, - "node_modules/std-env": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", - "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==", - "dev": true - }, - "node_modules/stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dev": true, - "dependencies": { - "internal-slot": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/streamsearch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", - "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/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/string-width/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/string-width/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz", - "integrity": "sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "regexp.prototype.flags": "^1.5.0", - "set-function-name": "^2.0.0", - "side-channel": "^1.0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trim": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz", - "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz", - "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", - "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dependencies": { - "character-entities-html4": "^2.0.0", - "character-entities-legacy": "^3.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "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/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": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-bom-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", - "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", - "engines": { - "node": ">=0.10.0" - } - }, - "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/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, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/strip-literal": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.0.tgz", - "integrity": "sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==", - "dev": true, - "dependencies": { - "js-tokens": "^9.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/strip-literal/node_modules/js-tokens": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.0.tgz", - "integrity": "sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==", - "dev": true - }, - "node_modules/style-to-object": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.4.tgz", - "integrity": "sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==", - "dependencies": { - "inline-style-parser": "0.1.1" - } - }, - "node_modules/styled-jsx": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", - "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", - "dependencies": { - "client-only": "0.0.1" - }, - "engines": { - "node": ">= 12.0.0" - }, - "peerDependencies": { - "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "babel-plugin-macros": { - "optional": true - } - } - }, - "node_modules/stylis": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz", - "integrity": "sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==" - }, - "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/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": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/test-exclude/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, - "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": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "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 - }, - "node_modules/tinybench": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz", - "integrity": "sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==", - "dev": true - }, - "node_modules/tinypool": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.8.4.tgz", - "integrity": "sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==", - "dev": true, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/tinyspy": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-2.2.1.tgz", - "integrity": "sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==", - "dev": true, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/title": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/title/-/title-3.5.3.tgz", - "integrity": "sha512-20JyowYglSEeCvZv3EZ0nZ046vLarO37prvV0mbtQV7C8DJPGgN967r8SJkqd3XK3K3lD3/Iyfp3avjfil8Q2Q==", - "dependencies": { - "arg": "1.0.0", - "chalk": "2.3.0", - "clipboardy": "1.2.2", - "titleize": "1.0.0" - }, - "bin": { - "title": "bin/title.js" - } - }, - "node_modules/title/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/title/node_modules/chalk": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", - "dependencies": { - "ansi-styles": "^3.1.0", - "escape-string-regexp": "^1.0.5", - "supports-color": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/title/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==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/title/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/title/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/title/node_modules/has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha512-P+1n3MnwjR/Epg9BBo1KT8qbye2g2Ou4sFumihwt6I4tsUX7jnLcX4BTOSKg/B1ZrIYMN9FcEnG4x5a7NB8Eng==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/title/node_modules/supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha512-ycQR/UbvI9xIlEdQT1TQqwoXtEldExbCEAJgRo5YXlmSKjv6ThHnP9/vwGa1gr19Gfw+LkFd7KqYMhzrRC5JYw==", - "dependencies": { - "has-flag": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/titleize": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/titleize/-/titleize-1.0.0.tgz", - "integrity": "sha512-TARUb7z1pGvlLxgPk++7wJ6aycXF3GJ0sNSBTAsTuJrQG5QuZlkUQP+zl+nbjAh4gMX9yDw9ZYklMd7vAfJKEw==", - "engines": { - "node": ">=0.10.0" - } - }, - "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, - "engines": { - "node": ">=4" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/tough-cookie": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", - "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", - "dev": true, - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tr46": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", - "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", - "dev": true, - "dependencies": { - "punycode": "^2.3.1" - }, - "engines": { - "node": ">=18" - } - }, - "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==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/trough": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz", - "integrity": "sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/ts-api-utils": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", - "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", - "dev": true, - "engines": { - "node": ">=16.13.0" - }, - "peerDependencies": { - "typescript": ">=4.2.0" - } - }, - "node_modules/ts-dedent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz", - "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==", - "engines": { - "node": ">=6.10" - } - }, - "node_modules/tsconfig-paths": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", - "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", - "dev": true, - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" - }, - "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, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "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, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typed-array-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", - "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", - "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", - "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typescript": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", - "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/ufo": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.3.tgz", - "integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==", - "dev": true - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/unified": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", - "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", - "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/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==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/unist-util-find-after": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", - "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-find-after/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/unist-util-find-after/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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-generated": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", - "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-position-from-estree": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-1.1.2.tgz", - "integrity": "sha512-poZa0eXpS+/XpoQwGwl79UUdea4ol2ZuCYguVaJS4qzIOMDzbqz8a3erUCOmubSZkaOuGamb3tX790iwOIROww==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-remove": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-4.0.0.tgz", - "integrity": "sha512-b4gokeGId57UVRX/eVKej5gXqGlc9+trkORhFJpu9raqZkZhU0zm8Doi05+HaiBsMEIJowL+2WtQ5ItjsngPXg==", - "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/unist-util-remove-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz", - "integrity": "sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-visit": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-remove-position/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/unist-util-remove/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/unist-util-remove/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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "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/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==", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit-parents/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/unist-util-visit-parents/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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/unist-util-visit/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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/update-browserslist-db": { - "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": [ - { - "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": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dev": true, - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/uvu": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz", - "integrity": "sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==", - "dependencies": { - "dequal": "^2.0.0", - "diff": "^5.0.0", - "kleur": "^4.0.3", - "sade": "^1.7.3" - }, - "bin": { - "uvu": "bin.js" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vfile": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", - "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", - "dependencies": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^3.0.0", - "vfile-message": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "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==", - "dependencies": { - "@types/unist": "^3.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-location/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/vfile-location/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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-location/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", - "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/vfile-matter": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/vfile-matter/-/vfile-matter-3.0.1.tgz", - "integrity": "sha512-CAAIDwnh6ZdtrqAuxdElUqQRQDQgbbIrYtDYI8gCjXS1qQ+1XdLoK8FIZWxJwn0/I+BkSSZpar3SOgjemQz4fg==", - "dependencies": { - "@types/js-yaml": "^4.0.0", - "is-buffer": "^2.0.0", - "js-yaml": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/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==", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-message/node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" - }, - "node_modules/vfile-message/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==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile/node_modules/vfile-message": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", - "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vite": { - "version": "5.2.8", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.8.tgz", - "integrity": "sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==", - "dev": true, - "dependencies": { - "esbuild": "^0.20.1", - "postcss": "^8.4.38", - "rollup": "^4.13.0" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^18.0.0 || >=20.0.0", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } - } - }, - "node_modules/vite-node": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-1.5.3.tgz", - "integrity": "sha512-axFo00qiCpU/JLd8N1gu9iEYL3xTbMbMrbe5nDp9GL0nb6gurIdZLkkFogZXWnE8Oyy5kfSLwNVIcVsnhE7lgQ==", - "dev": true, - "dependencies": { - "cac": "^6.7.14", - "debug": "^4.3.4", - "pathe": "^1.1.1", - "picocolors": "^1.0.0", - "vite": "^5.0.0" - }, - "bin": { - "vite-node": "vite-node.mjs" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/vite/node_modules/postcss": { - "version": "8.4.38", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", - "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.7", - "picocolors": "^1.0.0", - "source-map-js": "^1.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/vitest": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-1.5.3.tgz", - "integrity": "sha512-2oM7nLXylw3mQlW6GXnRriw+7YvZFk/YNV8AxIC3Z3MfFbuziLGWP9GPxxu/7nRlXhqyxBikpamr+lEEj1sUEw==", - "dev": true, - "dependencies": { - "@vitest/expect": "1.5.3", - "@vitest/runner": "1.5.3", - "@vitest/snapshot": "1.5.3", - "@vitest/spy": "1.5.3", - "@vitest/utils": "1.5.3", - "acorn-walk": "^8.3.2", - "chai": "^4.3.10", - "debug": "^4.3.4", - "execa": "^8.0.1", - "local-pkg": "^0.5.0", - "magic-string": "^0.30.5", - "pathe": "^1.1.1", - "picocolors": "^1.0.0", - "std-env": "^3.5.0", - "strip-literal": "^2.0.0", - "tinybench": "^2.5.1", - "tinypool": "^0.8.3", - "vite": "^5.0.0", - "vite-node": "1.5.3", - "why-is-node-running": "^2.2.2" - }, - "bin": { - "vitest": "vitest.mjs" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - }, - "peerDependencies": { - "@edge-runtime/vm": "*", - "@types/node": "^18.0.0 || >=20.0.0", - "@vitest/browser": "1.5.3", - "@vitest/ui": "1.5.3", - "happy-dom": "*", - "jsdom": "*" - }, - "peerDependenciesMeta": { - "@edge-runtime/vm": { - "optional": true - }, - "@types/node": { - "optional": true - }, - "@vitest/browser": { - "optional": true - }, - "@vitest/ui": { - "optional": true - }, - "happy-dom": { - "optional": true - }, - "jsdom": { - "optional": true - } - } - }, - "node_modules/vitest/node_modules/execa": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", - "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^8.0.1", - "human-signals": "^5.0.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^4.1.0", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": ">=16.17" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/vitest/node_modules/get-stream": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", - "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", - "dev": true, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/vitest/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/vitest/node_modules/npm-run-path": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", - "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", - "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/vitest/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/vscode-oniguruma": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz", - "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==" - }, - "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==" - }, - "node_modules/w3c-xmlserializer": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", - "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", - "dev": true, - "dependencies": { - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/web-namespaces": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", - "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/web-worker": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/web-worker/-/web-worker-1.3.0.tgz", - "integrity": "sha512-BSR9wyRsy/KOValMgd5kMyr3JzpdeoR9KVId8u5GVlTTAtNChlsE4yTxeY7zMdNSyOmoKBv8NH2qeRY9Tg+IaA==" - }, - "node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-encoding": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", - "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", - "dev": true, - "dependencies": { - "iconv-lite": "0.6.3" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/whatwg-mimetype": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", - "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", - "dev": true, - "engines": { - "node": ">=18" - } - }, - "node_modules/whatwg-url": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.0.0.tgz", - "integrity": "sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==", - "dev": true, - "dependencies": { - "tr46": "^5.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-builtin-type": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", - "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", - "dev": true, - "dependencies": { - "function.prototype.name": "^1.1.5", - "has-tostringtag": "^1.0.0", - "is-async-function": "^2.0.0", - "is-date-object": "^1.0.5", - "is-finalizationregistry": "^1.0.2", - "is-generator-function": "^1.0.10", - "is-regex": "^1.1.4", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", - "dev": true, - "dependencies": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "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.4", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/why-is-node-running": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.2.2.tgz", - "integrity": "sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==", - "dev": true, - "dependencies": { - "siginfo": "^2.0.0", - "stackback": "0.0.2" - }, - "bin": { - "why-is-node-running": "cli.js" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/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/wrap-ansi-cjs/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": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "dev": true, - "license": "MIT", - "engines": { - "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/xml-name-validator": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", - "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", - "dev": true, - "engines": { - "node": ">=18" - } - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true - }, - "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/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zod": { - "version": "3.22.4", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz", - "integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==", - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } - }, - "node_modules/zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - } - } -} diff --git a/agdb_web_next/package.json b/agdb_web_next/package.json deleted file mode 100644 index 6cdd7e0c4..000000000 --- a/agdb_web_next/package.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "name": "agdb_web_next", - "version": "0.1.0", - "private": true, - "scripts": { - "dev": "next dev -p 5001", - "build": "next build", - "start": "next start", - "lint": "next lint", - "format": "prettier . --write", - "format:check": "prettier . --check", - "test": "vitest run --coverage", - "test:e2e": "playwright test", - "before-commit": "npm run format && npm run lint && npm run test && npm run test:e2e" - }, - "dependencies": { - "next": "14.1.1", - "nextra": "^2.13.2", - "nextra-theme-docs": "^2.13.2", - "react": "^18", - "react-dom": "^18", - "sass": "^1.77.5" - }, - "devDependencies": { - "@playwright/test": "^1.41.1", - "@testing-library/react": "^14.1.2", - "@types/node": "^20", - "@types/react": "^18", - "@types/react-dom": "^18", - "@vitejs/plugin-react": "^4.2.1", - "@vitest/coverage-v8": "^1.5.3", - "eslint": "^8", - "eslint-config-next": "14.1.0", - "eslint-config-prettier": "^9.1.0", - "jsdom": "^24.0.0", - "prettier": "^3.2.4", - "typescript": "^5", - "vitest": "^1.5.3" - } -} diff --git a/agdb_web_next/playwright.config.ts b/agdb_web_next/playwright.config.ts deleted file mode 100644 index aa9d5972a..000000000 --- a/agdb_web_next/playwright.config.ts +++ /dev/null @@ -1,77 +0,0 @@ -import { defineConfig, devices } from "@playwright/test"; - -/** - * Read environment variables from file. - * https://github.com/motdotla/dotenv - */ -// require('dotenv').config(); - -/** - * See https://playwright.dev/docs/test-configuration. - */ -export default defineConfig({ - testDir: "./e2e", - /* Run tests in files in parallel */ - fullyParallel: true, - /* Fail the build on CI if you accidentally left test.only in the source code. */ - forbidOnly: !!process.env.CI, - /* Retry on CI only */ - retries: process.env.CI ? 2 : 0, - /* Opt out of parallel tests on CI. */ - workers: process.env.CI ? 1 : undefined, - /* Reporter to use. See https://playwright.dev/docs/test-reporters */ - reporter: "html", - /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ - use: { - /* Base URL to use in actions like `await page.goto('/')`. */ - // baseURL: 'http://127.0.0.1:3000', - - /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */ - trace: "on-first-retry", - }, - - /* Configure projects for major browsers */ - projects: [ - { - name: "chromium", - use: { ...devices["Desktop Chrome"] }, - }, - - { - name: "firefox", - use: { ...devices["Desktop Firefox"] }, - }, - - { - name: "webkit", - use: { ...devices["Desktop Safari"] }, - }, - - /* Test against mobile viewports. */ - // { - // name: 'Mobile Chrome', - // use: { ...devices['Pixel 5'] }, - // }, - // { - // name: 'Mobile Safari', - // use: { ...devices['iPhone 12'] }, - // }, - - /* Test against branded browsers. */ - // { - // name: 'Microsoft Edge', - // use: { ...devices['Desktop Edge'], channel: 'msedge' }, - // }, - // { - // name: 'Google Chrome', - // use: { ...devices['Desktop Chrome'], channel: 'chrome' }, - // }, - ], - - /* Run your local dev server before starting the tests */ - webServer: { - command: "npm run start", - url: "http://127.0.0.1:5001", - reuseExistingServer: !process.env.CI, - }, -}); diff --git a/agdb_web_next/public/favicon.ico b/agdb_web_next/public/favicon.ico deleted file mode 100644 index 1608dfad042b8176aa4bbf4f95890a52499dbee5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4286 zcmeHL2~bsK82xz| z3y4cDWw~TMv(y$dG|i#4A&`94 zG?U5Ov|FsN#G`VP@1T%u?0tS0@Y+FFj5`2~abpmcp4))Hg~&A1VYlwl9&>rG1K!l> zp&F@}Qg<;nHO$4qMoV!xGza@?FG7B`6bv@=5MqXKZCq6>-l;IW&-kR^nXVggZOX^M z^iP4Ahk@A7fT^Dl3vq~tm&r-1Rk&ah5oYm4E%^OD|8%4`Ux6PYw*W8f28O&3408f6 zy$AH$33T3o>%>&TdqxmPO>+2W^~7d)%>-m1VE}7)d=4a)01J)*^N#{^jsVk$XRMox zh)uXoto@XqUT9Zu2@WXlh!5Ock*8OPRUyolhCDZzSm>p4`Y4B(gY3laLmx@|c57jR z79nFe*C^-W6Ts4wK+ab{8gU5Iq(iR#AAbWkn0p{=Xd04(!_U6s%HhfRcb~#Ciu@7( z4PwX@53Iw=Pfd+q8YT=NR~g5FWz41PSvrVIa?&<@9llQ{_j$~}<_xgn6p+dMbD95j`apWp zQ{S>rW|PY@)g+HjpkKw0yrY=Rn8@Gq&CNJ;kM^NIkCKBX0$}Bz0vmaWdvZG}#JRZ7 zq7L$b_#eaj+OEN6`lTRn5zfnJ6WlrFj~VppOoiLG^02%s9O9%h7xDzXUctPRJVw-9 zVGsIKi^ML)_+>QxJC${fW8Nrg%z1Q5)}GpAcmT^@?XsBN$A44Sf<*P zJDzzHsaXnrn@X<4oj8+@b9rr+8-p~eti@3FDEscbl{bO=#>2)OZEK|?zJ4~gQRj2P zSt#M}6rK;~OtVQR^3M*JqeRik=UITz6<(rXDrp3V5u)l0%4UE~XS#lwMSYLjIs zwRoS0>NV0Zk-T2$wH+9=*EK)Xv+_7+&LzKeI5_KScqJn;Vk63Dvo3M1n&r`4`X!%! zUCxkyg(IC9gird!&=2Fuf&3>7!>KQ4{bdsed(AY&Xf_NdCUN9hqfhy?X5bqnOnW0o>}YeTg?yQk}mSb4Ca>?J^K%Q7vStFVf~RUSK-Hz%prb+ zQQ?{W9=A-t$q=AP1MGa4*fOh3?ulE7pGl6f=ZFGemPtUXTXT%QM5|zux4T z+Gf-58~f4U(nozHPbt(tl{M2ndNy(H9AO{iMZN9Hulm)is$aDiG75-A8dRyDdwS|u zEe{spXKLA_Nggh$m&B*~Mx4sK(pDO)$2|Qj9q5r$)S%k~`8W|n%xTQ;nb*=@I8?jz z7dGuBpQ<+Xfcmh{n?S%qET`vv>8?;HNY&VKaa^K)p6i=3f*xIUV?1zGPN zy3cd)y{ldpwnTI0s9tHH(06gD8l;_ig#EgYx$29zDn|@|PlOl!REO8Y`EKzv`?No6 z?Zup72Ziq9uRvM-^&&QFj#kd-|8Reae`R<*Mk z2hN5k`1vS3R*&zyUVJXz=0rK7wNa3ugZ>w6{6X?HYo+KsQ%X6#P>7lJzs pKh0Uj75-m>li}d^TO3|IXE!$EYkVC6+$F-neVyF@Yy_$te*nzRqZa@G diff --git a/agdb_web_next/public/images/api.png b/agdb_web_next/public/images/api.png deleted file mode 100644 index 8b6128a82ca3e84a3d1f41b18f058d0b4635ec69..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10677 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 diff --git a/agdb_web_next/public/images/cloud.png b/agdb_web_next/public/images/cloud.png deleted file mode 100644 index d30211846a44f909d256859c865636405a09cebe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5987 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 W+10K_DAB*K02PHd@>Q?RL;nNA_FWPH diff --git a/agdb_web_next/public/images/cpp.png b/agdb_web_next/public/images/cpp.png deleted file mode 100644 index 7ba904049e11b151fd0329dd71e67a5a917896f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9173 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 gxnB;W=(~GGgjvY{0Nt^6mH+?% diff --git a/agdb_web_next/public/images/csharp.png b/agdb_web_next/public/images/csharp.png deleted file mode 100644 index 0ad114bc374ef3391b1dc942f80d65e63faf2599..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9274 zcmW++1z1yG8y`4i^rWR5|46HJjqZ|?7U>4*76yWVAP7iG|5U4Dn} z5zuG2bMHOx`~K=IN>g2d0GA3E0)Y@HDavYtzkBb#VfVq$5`)q#2m~YCPDVykNk)dj z)!oI~&d~}2dGsOhgScXcCTY0F^L(bHP%pS!uV&`%XQpMHVgo2%e#y_`us)T4IZ84K z%gc}I$!V@%d=se`+Sy*@fQ3pj3=^uqR z{-EC3WgMi7-_-sVexL7cNT;fJ>Wjhls+Rqt^lk3`s-~;kZy5RJ{H^T7J)fKnI;lIK zq$dyiW(y7WCrAgVi@p4b6-ED@yYagF`)YaXlMZOlIP+^RYK3U*sxZl4x*icV=&&BR4ofelH^7{N+*9dv9zo`e?J5-8!Y$G8O!9D=kqhx)FqgZT~+Qa=M944@ro|}uau(CeL8>MvO zPc^;AdoScmikTA=GJqM@j(v1=q<^mJ9y&=&OhQtC;X~AVjxpN}Gsg}=gI_62pfVUv zbChG@&?RwjF_-QcFJfs40jk&oE~DCSu_OHKu;}fNs5Wy0CRjT^gpm9))d4b(arh!2 zpebrZgdK)g{4o;FZw5ya{3dW2;9+8vL&nRwG@s~Um|>{H)B5-@q=-Xs1kQcmz$+Et zNY+`2C1@@#wSXgx4fzd=H#<}q{Xm+y%i^e^E1JUl2)zWYcqnmwD6^53l_dz_#9maM zI@CeNuW1)~^t6ZLVYL`$FibpcjWR6@CX`|dd0S{|E*%7izSIf`xE5}42fr+T()~bM zf*8t}koz(nvP&A>b>!yeRue!bj2L{slgo(0Limt{d>ZYsyrc4 zc!*wyZbfH4AY7DzXoW4h#UkVP#Kpy3*jZSf9-=p(7cU&AtNTy|1vW_xuwaD)W~V(Y zHDtVZW=2Ns?F#)rUU$1i==Z1+qdH{|k-5i^TWrZSOMGi%CS)hqi%OPgmHX^40q5Cs zQAj!z;S&?x;iO0rB^y2Ow^M?v9^YnXgU^oq_UtufLvx!H>>@>$=|zR@=x06kctptA zLhyndM^d+u5dPe}<~?&y1%;jslz!Ph*khTyjtOf!OkjZRU_f0{4=9G=(&XTZt1$LR z+9l9`lrH?K2@us)erLKXXe;$y9| zZxxS2(-IWqo<-6bI$8cw2Fhqj5>oJekPn+AB$F-CPDxr?nwCBCp_>ZjrDUsf!{Z)} zpO^+biG2bUniX00p|c754OAi6DO`>1YdbGb9%eAyw4T^+(qo*nrm!}4pM^4T8a8;? z{l~6&5Xna@ncp~E>D?EvobT%4fz;s$*Wqa13-)WKV@t#VKf#x{xEHOg0|W9}g_FF@ zu*t{m345=2x!a1o1_TGJb)TW?tuCnB;qfuDu1+u@AYgHSKj`mBUmp&!(m|yk79vEw zKt@3UdwP2M=fp%rM8y540s^0Nb1^bAGf$;IvPt(g?(OXv+2Ww;gb~g~5m~U-xHYt= zmsf-_w}Pf7eAQj}`sT)8E%Z%JUfwvR@`O83e^qEk3uBs?j^ zsdQWE{x6gv0BTN(irzXnh|86EYq9w=7Y2ht7;6_kp7@Cu7ZgJ-Nr#f~$ z68oxo85wikH6I{PJoM@5>1AbQ8N|eB_V@R7;?S1-h7aJb6Z5-gq^YNpmS*UtwK2-fd-Za}(x|2n-Z|_wJqR))?!=ZqhFZd3R3_eHC74dD{N={{DNVL^ein z7Zw#abn|u9)j5TQFjiJpUaHh03U;{kX{7Au^ZI%rtVC$;w;k=WrSv&2e0)b|=Ub#=pYo?@1so~As-@o-6clv5M*jKZ zP9x$0qot)Cj7fzjfQh=Kp;®n;AZAtfUVt<)oj#_nGlk_6zL!$@qYA|0kD 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 diff --git a/agdb_web_next/public/images/db.png b/agdb_web_next/public/images/db.png deleted file mode 100644 index 6b7e48d1df531555ea7f9d24c3055a3f28bd0757..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5917 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 Graph Reset ZoomSearch <alloc::string::String as agdb::collections::vec::VecValue>::store (1 samples, 0.01%)agdb::storage::Storage<D>::insert (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes (1 samples, 0.01%)agdb::storage::Storage<D>::write_record (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::db::DbImpl<Store>::exec_mut (2 samples, 0.03%)agdb::db::DbImpl<Store>::transaction_mut (2 samples, 0.03%)agdb::db::DbImpl<Store>::exec_mut::{{closure}} (2 samples, 0.03%)agdb::transaction_mut::TransactionMut<Store>::exec_mut (2 samples, 0.03%)<agdb::query::insert_nodes_query::InsertNodesQuery as agdb::query::QueryMut>::process (2 samples, 0.03%)agdb::db::DbImpl<Store>::insert_new_alias (2 samples, 0.03%)agdb::collections::indexed_map::IndexedMapImpl<K,T,D,DataKT,DataTK>::insert (2 samples, 0.03%)agdb::collections::map::MapImpl<K,T,D,Data>::insert (2 samples, 0.03%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::insert_or_replace (2 samples, 0.03%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::rehash (2 samples, 0.03%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::grow (2 samples, 0.03%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::resize (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::resize (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::resize (2 samples, 0.03%)agdb::storage::Storage<D>::insert_bytes_at (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)agdb_benchmarks::database::Database<S>::new (3 samples, 0.04%)agdb::db::DbImpl<Store>::new (1 samples, 0.01%)agdb::db::DbImpl<Store>::try_new (1 samples, 0.01%)agdb::collections::multi_map::MultiMapImpl<K,T,D,agdb::collections::map::DbMapData<K,T,D>>::new (1 samples, 0.01%)agdb::collections::map::DbMapData<K,T,D>::new (1 samples, 0.01%)agdb::storage::Storage<D>::insert (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes (1 samples, 0.01%)agdb::storage::Storage<D>::write_record (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)std::io::Read::read_exact (2 samples, 0.03%)std::io::default_read_exact (2 samples, 0.03%)<&std::fs::File as std::io::Read>::read (2 samples, 0.03%)std::sys::unix::fs::File::read (2 samples, 0.03%)std::sys::unix::fd::FileDesc::read (2 samples, 0.03%)read (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (6 samples, 0.08%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (6 samples, 0.08%)agdb::storage::write_ahead_log::WriteAheadLog::insert (3 samples, 0.04%)std::io::Write::write_all (3 samples, 0.04%)std::os::unix::net::datagram::UnixDatagram::send (3 samples, 0.04%)std::sys::unix::net::Socket::write (3 samples, 0.04%)std::sys::unix::fd::FileDesc::write (3 samples, 0.04%)__write (3 samples, 0.04%)[libc.so.6] (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)std::io::Read::read_exact (1 samples, 0.01%)std::io::default_read_exact (1 samples, 0.01%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (4 samples, 0.06%)std::io::Write::write_all (3 samples, 0.04%)std::os::unix::net::datagram::UnixDatagram::send (3 samples, 0.04%)std::sys::unix::net::Socket::write (3 samples, 0.04%)std::sys::unix::fd::FileDesc::write (3 samples, 0.04%)__write (3 samples, 0.04%)agdb_benchmarks::database::Database<S>::stat (12 samples, 0.17%)agdb::db::DbImpl<Store>::optimize_storage (12 samples, 0.17%)agdb::storage::Storage<D>::shrink_to_fit (12 samples, 0.17%)agdb::storage::Storage<D>::shrink_records (12 samples, 0.17%)agdb::storage::Storage<D>::shrink_index (12 samples, 0.17%)agdb::storage::Storage<D>::write_record (6 samples, 0.08%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (6 samples, 0.08%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (6 samples, 0.08%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)core::slice::sort::merge (2 samples, 0.03%)agdb_benchmarks::readers::Readers<S>::join_and_report::{{closure}} (3 samples, 0.04%)agdb_benchmarks::utilities::report (3 samples, 0.04%)alloc::slice::<impl [T]>::sort (3 samples, 0.04%)alloc::slice::stable_sort (3 samples, 0.04%)core::slice::sort::merge_sort (3 samples, 0.04%)core::slice::sort::provide_sorted_batch (1 samples, 0.01%)core::slice::sort::insertion_sort_shift_left (1 samples, 0.01%)core::slice::sort::insert_tail (1 samples, 0.01%)core::ptr::drop_in_place<core::slice::sort::InsertionHole<core::time::Duration>> (1 samples, 0.01%)<core::slice::sort::InsertionHole<T> as core::ops::drop::Drop>::drop (1 samples, 0.01%)core::intrinsics::copy_nonoverlapping (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::get_free_index (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::grow (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::push (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::resize (1 samples, 0.01%)agdb::storage::Storage<D>::insert_at (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)std::io::Read::read_exact (1 samples, 0.01%)std::io::default_read_exact (1 samples, 0.01%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)<agdb::query::insert_edges_query::InsertEdgesQuery as agdb::query::QueryMut>::process (2 samples, 0.03%)agdb::query::insert_edges_query::InsertEdgesQuery::many_to_many_each (2 samples, 0.03%)agdb::db::DbImpl<Store>::insert_edge (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::insert_edge (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::set_edge (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::update_from_edge (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_from (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)std::io::Read::read_exact (1 samples, 0.01%)std::io::default_read_exact (1 samples, 0.01%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)agdb_benchmarks (21 samples, 0.29%)_start (21 samples, 0.29%)__libc_start_main (21 samples, 0.29%)[libc.so.6] (21 samples, 0.29%)main (21 samples, 0.29%)std::rt::lang_start_internal (21 samples, 0.29%)std::panic::catch_unwind (21 samples, 0.29%)std::panicking::try (21 samples, 0.29%)std::panicking::try::do_call (21 samples, 0.29%)std::rt::lang_start_internal::{{closure}} (21 samples, 0.29%)std::panic::catch_unwind (21 samples, 0.29%)std::panicking::try (21 samples, 0.29%)std::panicking::try::do_call (21 samples, 0.29%)core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once (21 samples, 0.29%)std::rt::lang_start::{{closure}} (21 samples, 0.29%)std::sys_common::backtrace::__rust_begin_short_backtrace (21 samples, 0.29%)core::ops::function::FnOnce::call_once (21 samples, 0.29%)agdb_benchmarks::main (21 samples, 0.29%)tokio::runtime::runtime::Runtime::block_on (21 samples, 0.29%)tokio::runtime::scheduler::multi_thread::MultiThread::block_on (21 samples, 0.29%)tokio::runtime::context::runtime::enter_runtime (21 samples, 0.29%)tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}} (21 samples, 0.29%)tokio::runtime::context::blocking::BlockingRegionGuard::block_on (21 samples, 0.29%)tokio::runtime::park::CachedParkThread::block_on (21 samples, 0.29%)tokio::runtime::coop::budget (21 samples, 0.29%)tokio::runtime::coop::with_budget (21 samples, 0.29%)tokio::runtime::park::CachedParkThread::block_on::{{closure}} (21 samples, 0.29%)agdb_benchmarks::main::{{closure}} (21 samples, 0.29%)agdb_benchmarks::benchmark::{{closure}} (21 samples, 0.29%)agdb_benchmarks::users::setup_users (3 samples, 0.04%)agdb_benchmarks::utilities::measured (3 samples, 0.04%)agdb_benchmarks::users::setup_users::{{closure}} (3 samples, 0.04%)agdb::db::DbImpl<Store>::transaction_mut (3 samples, 0.04%)agdb_benchmarks::users::setup_users::{{closure}}::{{closure}} (3 samples, 0.04%)agdb::transaction_mut::TransactionMut<Store>::exec_mut (3 samples, 0.04%)<agdb::query::insert_nodes_query::InsertNodesQuery as agdb::query::QueryMut>::process (1 samples, 0.01%)agdb::db::DbImpl<Store>::insert_node (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::insert_node (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::get_free_index (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::grow (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::push (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::resize (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)__libc_free (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)std::f64::<impl f64>::powf (2 samples, 0.03%)powf64 (2 samples, 0.03%)[libm.so.6] (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::stats::Stats::end_processing_scheduled_tasks (12 samples, 0.17%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (10 samples, 0.14%)clock_gettime (10 samples, 0.14%)__vdso_clock_gettime (7 samples, 0.10%)tokio::runtime::scheduler::multi_thread::stats::Stats::start_processing_scheduled_tasks (2 samples, 0.03%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (2 samples, 0.03%)clock_gettime (2 samples, 0.03%)__vdso_clock_gettime (2 samples, 0.03%)tokio::runtime::scheduler::multi_thread::worker::Context::maintenance (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::worker::Context::park_timeout (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::park::Parker::park_timeout (1 samples, 0.01%)tokio::runtime::driver::Driver::park_timeout (1 samples, 0.01%)tokio::runtime::driver::TimeDriver::park_timeout (1 samples, 0.01%)tokio::runtime::time::Driver::park_timeout (1 samples, 0.01%)tokio::runtime::time::<impl tokio::runtime::time::handle::Handle>::process_at_time (1 samples, 0.01%)tokio::runtime::time::wheel::Wheel::poll (1 samples, 0.01%)tokio::runtime::time::wheel::Wheel::process_expiration (1 samples, 0.01%)tokio::runtime::time::entry::TimerHandle::mark_pending (1 samples, 0.01%)tokio::runtime::time::entry::StateCell::mark_pending (1 samples, 0.01%)<alloc::sync::Arc<T> as core::ops::deref::Deref>::deref (1 samples, 0.01%)alloc::sync::Arc<T>::inner (1 samples, 0.01%)core::ptr::non_null::NonNull<T>::as_ref (1 samples, 0.01%)<parking_lot_core::thread_parker::imp::ThreadParker as parking_lot_core::thread_parker::ThreadParkerT>::park (2 samples, 0.03%)parking_lot_core::thread_parker::imp::ThreadParker::futex_wait (1 samples, 0.01%)syscall (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::park::Inner::park_condvar (5 samples, 0.07%)tokio::loom::std::parking_lot::Condvar::wait (5 samples, 0.07%)parking_lot::condvar::Condvar::wait (5 samples, 0.07%)parking_lot::condvar::Condvar::wait_until_internal (5 samples, 0.07%)parking_lot_core::parking_lot::park (3 samples, 0.04%)parking_lot_core::parking_lot::with_thread_data (3 samples, 0.04%)parking_lot_core::parking_lot::park::{{closure}} (3 samples, 0.04%)parking_lot_core::parking_lot::lock_bucket (1 samples, 0.01%)parking_lot_core::word_lock::WordLock::lock (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::worker::<impl tokio::runtime::task::Schedule for alloc::sync::Arc<tokio::runtime::scheduler::multi_thread::handle::Handle>>::schedule (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::worker::<impl tokio::runtime::scheduler::multi_thread::handle::Handle>::schedule_task (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::worker::with_current (1 samples, 0.01%)tokio::runtime::context::with_scheduler (1 samples, 0.01%)std::thread::local::LocalKey<T>::with (1 samples, 0.01%)std::thread::local::LocalKey<T>::try_with (1 samples, 0.01%)tokio::runtime::context::with_scheduler::{{closure}} (1 samples, 0.01%)tokio::runtime::context::scoped::Scoped<T>::with (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::worker::with_current::{{closure}} (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::worker::<impl tokio::runtime::scheduler::multi_thread::handle::Handle>::schedule_task::{{closure}} (1 samples, 0.01%)<alloc::sync::Arc<T> as core::ops::deref::Deref>::deref (1 samples, 0.01%)core::task::wake::Waker::wake (2 samples, 0.03%)tokio::runtime::task::waker::wake_by_val (2 samples, 0.03%)tokio::runtime::task::harness::<impl tokio::runtime::task::raw::RawTask>::wake_by_val (2 samples, 0.03%)tokio::runtime::task::raw::RawTask::schedule (2 samples, 0.03%)tokio::runtime::task::raw::schedule (1 samples, 0.01%)tokio::runtime::task::Task<S>::from_raw (1 samples, 0.01%)tokio::runtime::task::raw::RawTask::from_raw (1 samples, 0.01%)tokio::runtime::time::wheel::Wheel::next_expiration (1 samples, 0.01%)tokio::runtime::time::wheel::level::Level::next_expiration (1 samples, 0.01%)tokio::runtime::time::<impl tokio::runtime::time::handle::Handle>::process_at_time (4 samples, 0.06%)tokio::runtime::time::wheel::Wheel::poll (2 samples, 0.03%)tokio::runtime::time::wheel::Wheel::process_expiration (1 samples, 0.01%)tokio::util::linked_list::LinkedList<L,<L as tokio::util::linked_list::Link>::Target>::pop_back (1 samples, 0.01%)tokio::loom::std::parking_lot::Mutex<T>::lock (1 samples, 0.01%)lock_api::mutex::Mutex<R,T>::lock (1 samples, 0.01%)<parking_lot::raw_mutex::RawMutex as lock_api::mutex::RawMutex>::lock (1 samples, 0.01%)tokio::process::imp::orphan::OrphanQueueImpl<T>::reap_orphans (1 samples, 0.01%)tokio::loom::std::parking_lot::Mutex<T>::try_lock (1 samples, 0.01%)lock_api::mutex::Mutex<R,T>::try_lock (1 samples, 0.01%)<parking_lot::raw_mutex::RawMutex as lock_api::mutex::RawMutex>::try_lock (1 samples, 0.01%)tokio::runtime::io::driver::Driver::turn (4 samples, 0.06%)mio::sys::unix::selector::epoll::Selector::select (4 samples, 0.06%)epoll_wait (4 samples, 0.06%)[libc.so.6] (3 samples, 0.04%)tokio::runtime::scheduler::multi_thread::park::Parker::park (18 samples, 0.25%)tokio::runtime::scheduler::multi_thread::park::Inner::park (18 samples, 0.25%)tokio::runtime::scheduler::multi_thread::park::Inner::park_driver (13 samples, 0.18%)tokio::runtime::driver::Driver::park (13 samples, 0.18%)tokio::runtime::driver::TimeDriver::park (13 samples, 0.18%)tokio::runtime::time::Driver::park (13 samples, 0.18%)tokio::runtime::time::Driver::park_internal (9 samples, 0.13%)tokio::runtime::time::<impl tokio::runtime::time::handle::Handle>::process (3 samples, 0.04%)tokio::runtime::time::source::TimeSource::now (3 samples, 0.04%)tokio::time::clock::Clock::now (2 samples, 0.03%)tokio::time::clock::now (2 samples, 0.03%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (2 samples, 0.03%)clock_gettime (2 samples, 0.03%)__vdso_clock_gettime (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::park::Unparker::unpark (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::park::Inner::unpark (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::worker::Context::park_timeout (20 samples, 0.28%)tokio::runtime::scheduler::multi_thread::worker::Core::should_notify_others (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::queue::Local<T>::len (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::queue::Inner<T>::len (1 samples, 0.01%)core::sync::atomic::AtomicU32::load (1 samples, 0.01%)core::sync::atomic::atomic_load (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::worker::Context::park (22 samples, 0.31%)tokio::runtime::scheduler::multi_thread::worker::Core::maintenance (1 samples, 0.01%)tokio::runtime::context::budget (1 samples, 0.01%)std::thread::local::LocalKey<T>::try_with (1 samples, 0.01%)tokio::runtime::context::budget::{{closure}} (1 samples, 0.01%)tokio::runtime::coop::with_budget::{{closure}} (1 samples, 0.01%)core::cell::Cell<T>::get (1 samples, 0.01%)core::cell::RefCell<T>::borrow_mut (1 samples, 0.01%)core::cell::RefCell<T>::try_borrow_mut (1 samples, 0.01%)core::cell::BorrowRefMut::new (1 samples, 0.01%)core::ptr::drop_in_place<tokio::loom::std::parking_lot::MutexGuard<tokio::runtime::time::InnerState>> (1 samples, 0.01%)core::ptr::drop_in_place<lock_api::mutex::MutexGuard<parking_lot::raw_mutex::RawMutex,tokio::runtime::time::InnerState>> (1 samples, 0.01%)<lock_api::mutex::MutexGuard<R,T> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<parking_lot::raw_mutex::RawMutex as lock_api::mutex::RawMutex>::unlock (1 samples, 0.01%)tokio::runtime::time::Inner::lock (2 samples, 0.03%)tokio::loom::std::parking_lot::Mutex<T>::lock (2 samples, 0.03%)lock_api::mutex::Mutex<R,T>::lock (2 samples, 0.03%)<parking_lot::raw_mutex::RawMutex as lock_api::mutex::RawMutex>::lock (2 samples, 0.03%)tokio::runtime::time::<impl tokio::runtime::time::handle::Handle>::reregister (6 samples, 0.08%)tokio::runtime::time::wheel::Wheel::insert (2 samples, 0.03%)tokio::runtime::time::wheel::level::Level::add_entry (2 samples, 0.03%)tokio::runtime::time::wheel::level::slot_for (2 samples, 0.03%)tokio::runtime::time::entry::StateCell::poll (2 samples, 0.03%)tokio::sync::task::atomic_waker::AtomicWaker::register_by_ref (2 samples, 0.03%)tokio::sync::task::atomic_waker::AtomicWaker::do_register (1 samples, 0.01%)tokio::sync::task::atomic_waker::AtomicWaker::do_register::catch_unwind (1 samples, 0.01%)std::panic::catch_unwind (1 samples, 0.01%)std::panicking::try (1 samples, 0.01%)std::panicking::try::do_call (1 samples, 0.01%)<core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once (1 samples, 0.01%)tokio::sync::task::atomic_waker::AtomicWaker::do_register::{{closure}} (1 samples, 0.01%)<&core::task::wake::Waker as tokio::sync::task::atomic_waker::WakerRef>::into_waker (1 samples, 0.01%)<core::task::wake::Waker as core::clone::Clone>::clone (1 samples, 0.01%)tokio::runtime::task::waker::clone_waker (1 samples, 0.01%)<tokio::time::sleep::Sleep as core::future::future::Future>::poll (11 samples, 0.15%)tokio::time::sleep::Sleep::poll_elapsed (10 samples, 0.14%)tokio::runtime::time::entry::TimerEntry::poll_elapsed (10 samples, 0.14%)tokio::runtime::time::entry::TimerEntry::reset (2 samples, 0.03%)tokio::runtime::time::source::TimeSource::deadline_to_tick (2 samples, 0.03%)tokio::runtime::time::source::TimeSource::instant_to_tick (2 samples, 0.03%)tokio::time::instant::Instant::checked_duration_since (2 samples, 0.03%)std::time::Instant::checked_duration_since (2 samples, 0.03%)std::sys::unix::time::inner::Instant::checked_sub_instant (1 samples, 0.01%)<alloc::string::String as agdb::collections::vec::VecValue>::load (1 samples, 0.01%)agdb::storage::Storage<D>::value (1 samples, 0.01%)agdb::storage::Storage<D>::value_as_bytes (1 samples, 0.01%)agdb::storage::Storage<D>::value_as_bytes_at (1 samples, 0.01%)agdb::storage::Storage<D>::value_size (1 samples, 0.01%)agdb::storage::Storage<D>::record (1 samples, 0.01%)agdb::storage::storage_records::StorageRecords::record (1 samples, 0.01%)agdb::storage::storage_records::StorageRecords::is_valid (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::key (3 samples, 0.04%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (3 samples, 0.04%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (2 samples, 0.03%)agdb::storage::Storage<D>::value_as_bytes_at_size (1 samples, 0.01%)agdb::storage::Storage<D>::record (1 samples, 0.01%)agdb::storage::storage_records::StorageRecords::record (1 samples, 0.01%)<agdb::collections::map::MapValueState as agdb::collections::vec::VecValue>::load (3 samples, 0.04%)<agdb::collections::map::MapValueState as agdb::utilities::serialize::Serialize>::deserialize (3 samples, 0.04%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::state (5 samples, 0.07%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (5 samples, 0.07%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (5 samples, 0.07%)agdb::storage::Storage<D>::value_as_bytes_at_size (2 samples, 0.03%)agdb::storage::Storage<D>::record (2 samples, 0.03%)agdb::storage::storage_records::StorageRecords::record (2 samples, 0.03%)agdb::storage::storage_records::StorageRecords::is_valid (2 samples, 0.03%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::value (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)agdb::storage::Storage<D>::value_as_bytes_at_size (1 samples, 0.01%)agdb::storage::Storage<D>::record (1 samples, 0.01%)agdb::storage::storage_records::StorageRecords::record (1 samples, 0.01%)<alloc::string::String as core::cmp::PartialEq>::eq (2 samples, 0.03%)alloc::vec::partial_eq::<impl core::cmp::PartialEq<alloc::vec::Vec<U,A2>> for alloc::vec::Vec<T,A1>>::eq (2 samples, 0.03%)core::slice::cmp::<impl core::cmp::PartialEq<[B]> for [A]>::eq (2 samples, 0.03%)<[A] as core::slice::cmp::SlicePartialEq<B>>::equal (2 samples, 0.03%)[libc.so.6] (2 samples, 0.03%)agdb::collections::indexed_map::IndexedMapImpl<K,T,D,DataKT,DataTK>::value (13 samples, 0.18%)agdb::collections::map::MapImpl<K,T,D,Data>::value (13 samples, 0.18%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::value (13 samples, 0.18%)core::ptr::drop_in_place<alloc::string::String> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)alloc::string::String::with_capacity (1 samples, 0.01%)alloc::vec::Vec<T>::with_capacity (1 samples, 0.01%)alloc::vec::Vec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc (1 samples, 0.01%)malloc (1 samples, 0.01%)<&mut W as core::fmt::Write>::write_str (2 samples, 0.03%)alloc::fmt::format (4 samples, 0.06%)core::option::Option<T>::map_or_else (4 samples, 0.06%)alloc::fmt::format::{{closure}} (4 samples, 0.06%)alloc::fmt::format::format_inner (4 samples, 0.06%)core::fmt::Write::write_fmt (3 samples, 0.04%)core::fmt::write (3 samples, 0.04%)core::fmt::rt::Argument::fmt (1 samples, 0.01%)<str as core::fmt::Display>::fmt (1 samples, 0.01%)agdb::db::DbImpl<Store>::db_id (18 samples, 0.25%)core::option::Option<T>::ok_or (1 samples, 0.01%)core::ptr::drop_in_place<agdb::query::query_error::QueryError> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::string::String> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)agdb::db::db_search_handlers::LimitHandler<Store>::new (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::is_removed_index (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from_meta (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::is_valid_index (2 samples, 0.03%)agdb::graph::GraphIndex::as_u64 (1 samples, 0.01%)agdb::graph::GraphIndex::is_edge (1 samples, 0.01%)agdb::graph_search::GraphSearch<D,Data>::is_valid_index (5 samples, 0.07%)agdb::graph_search::GraphSearch<D,Data>::is_valid_node (5 samples, 0.07%)agdb::graph::GraphImpl<D,Data>::node (5 samples, 0.07%)agdb::graph::GraphImpl<D,Data>::validate_node (5 samples, 0.07%)agdb::graph::GraphImpl<D,Data>::is_valid_node (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (2 samples, 0.03%)<i64 as agdb::collections::vec::VecValue>::load (2 samples, 0.03%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (2 samples, 0.03%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::new (1 samples, 0.01%)<agdb::graph_search::depth_first_search::DepthFirstSearch as agdb::graph_search::search_impl::SearchIterator<D>>::new (1 samples, 0.01%)alloc::vec::Vec<T,A>::pop (1 samples, 0.01%)core::ptr::read (1 samples, 0.01%)<agdb::db::db_search_handlers::LimitHandler<Store> as agdb::graph_search::SearchHandler>::process (2 samples, 0.03%)agdb::db::DbImpl<Store>::evaluate_conditions (2 samples, 0.03%)agdb::db::DbImpl<Store>::evaluate_condition (1 samples, 0.01%)agdb::query::query_condition::CountComparison::compare_distance (1 samples, 0.01%)core::cmp::impls::<impl core::cmp::Ord for u64>::cmp (1 samples, 0.01%)agdb::graph::GraphEdge<D,Data>::index_to (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::edge_to (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::to (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::validate_index (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::is_valid_edge (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (2 samples, 0.03%)<i64 as agdb::collections::vec::VecValue>::load (2 samples, 0.03%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (2 samples, 0.03%)<agdb::graph_search::depth_first_search::DepthFirstSearch as agdb::graph_search::search_impl::SearchIterator<D>>::expand_edge (5 samples, 0.07%)agdb::graph::GraphImpl<D,Data>::edge (4 samples, 0.06%)agdb::graph::GraphImpl<D,Data>::validate_edge (4 samples, 0.06%)agdb::graph::GraphImpl<D,Data>::is_valid_index (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::is_removed_index (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from_meta (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::node (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::validate_node (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::is_valid_node (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)agdb::graph::GraphNode<D,Data>::edge_iter_from (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::first_edge_from (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (5 samples, 0.07%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (8 samples, 0.11%)<i64 as agdb::collections::vec::VecValue>::load (26 samples, 0.36%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (26 samples, 0.36%)<i64 as agdb::collections::vec::VecValue>::storage_len (2 samples, 0.03%)agdb::collections::vec::DbVecData<T,D,E>::offset (8 samples, 0.11%)<i64 as agdb::collections::vec::VecValue>::storage_len (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (5 samples, 0.07%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (3 samples, 0.04%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (3 samples, 0.04%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (3 samples, 0.04%)agdb::storage::Storage<D>::record (26 samples, 0.36%)agdb::storage::storage_records::StorageRecords::record (24 samples, 0.33%)agdb::storage::storage_records::StorageRecords::is_valid (4 samples, 0.06%)agdb::storage::Storage<D>::validate_read_size (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (128 samples, 1.78%)a..<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (119 samples, 1.66%)agdb::storage::Storage<D>::value_as_bytes_at_size (63 samples, 0.88%)agdb::storage::storage_records::StorageRecord::value_start (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from_meta (134 samples, 1.87%)<..agdb::graph::GraphIndex::as_u64 (2 samples, 0.03%)<agdb::graph::GraphIndex as core::convert::From<i64>>::from (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::next_edge_from (139 samples, 1.94%)a..<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (3 samples, 0.04%)<agdb::graph::GraphEdgeIterator<D,Data> as core::iter::traits::iterator::Iterator>::next (173 samples, 2.41%)<a..agdb::graph::GraphIndex::is_valid (2 samples, 0.03%)<core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::next (176 samples, 2.45%)<c..core::option::Option<T>::map (2 samples, 0.03%)@plt (1 samples, 0.01%)<alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend (199 samples, 2.77%)<a..alloc::vec::Vec<T,A>::extend_desugared (199 samples, 2.77%)al..alloc::vec::Vec<T,A>::reserve (22 samples, 0.31%)alloc::raw_vec::RawVec<T,A>::reserve (22 samples, 0.31%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (22 samples, 0.31%)alloc::raw_vec::RawVec<T,A>::grow_amortized (22 samples, 0.31%)alloc::raw_vec::finish_grow (22 samples, 0.31%)<alloc::alloc::Global as core::alloc::Allocator>::grow (22 samples, 0.31%)alloc::alloc::Global::grow_impl (22 samples, 0.31%)alloc::alloc::realloc (22 samples, 0.31%)realloc (22 samples, 0.31%)[libc.so.6] (21 samples, 0.29%)[libc.so.6] (17 samples, 0.24%)[libc.so.6] (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::load (1 samples, 0.01%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (1 samples, 0.01%)<agdb::graph_search::depth_first_search::DepthFirstSearch as agdb::graph_search::search_impl::SearchIterator<D>>::expand_node (204 samples, 2.84%)<a..core::iter::traits::iterator::Iterator::collect (202 samples, 2.81%)co..<alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter (202 samples, 2.81%)<a..<alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter (202 samples, 2.81%)<a..<alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter (202 samples, 2.81%)<a..<core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::next (2 samples, 0.03%)<agdb::graph::GraphEdgeIterator<D,Data> as core::iter::traits::iterator::Iterator>::next (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::next_edge_from (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from_meta (2 samples, 0.03%)agdb::graph::GraphIndex::as_u64 (1 samples, 0.01%)<alloc::vec::into_iter::IntoIter<T,A> as core::iter::traits::iterator::Iterator>::next (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (7 samples, 0.10%)alloc::raw_vec::RawVec<T,A>::grow_amortized (7 samples, 0.10%)alloc::raw_vec::finish_grow (7 samples, 0.10%)<alloc::alloc::Global as core::alloc::Allocator>::grow (7 samples, 0.10%)alloc::alloc::Global::grow_impl (7 samples, 0.10%)alloc::alloc::realloc (7 samples, 0.10%)realloc (7 samples, 0.10%)[libc.so.6] (6 samples, 0.08%)[libc.so.6] (5 samples, 0.07%)alloc::vec::Vec<T,A>::as_mut_ptr (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::ptr (1 samples, 0.01%)core::ptr::mut_ptr::<impl *mut T>::add (2 samples, 0.03%)alloc::vec::Vec<T,A>::push (20 samples, 0.28%)core::ptr::write (6 samples, 0.08%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_unvisited_index (236 samples, 3.29%)agd..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::expand_index (234 samples, 3.26%)agd..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::add_edges_to_stack (25 samples, 0.35%)core::ptr::drop_in_place<alloc::vec::into_iter::IntoIter<agdb::graph::GraphIndex>> (4 samples, 0.06%)<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop (4 samples, 0.06%)core::ptr::drop_in_place<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<agdb::graph::GraphIndex,alloc::alloc::Global>> (4 samples, 0.06%)<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<T,A> as core::ops::drop::Drop>::drop (4 samples, 0.06%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<agdb::graph::GraphIndex>> (4 samples, 0.06%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (4 samples, 0.06%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (4 samples, 0.06%)alloc::alloc::dealloc (4 samples, 0.06%)__libc_free (4 samples, 0.06%)[libc.so.6] (3 samples, 0.04%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::search (238 samples, 3.31%)agd..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_stack (238 samples, 3.31%)agd..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_index (237 samples, 3.30%)agd..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::visit_index (1 samples, 0.01%)agdb::collections::bit_set::BitSet::insert (1 samples, 0.01%)alloc::vec::Vec<T,A>::resize (1 samples, 0.01%)alloc::vec::Vec<T,A>::extend_with (1 samples, 0.01%)alloc::vec::Vec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::grow_amortized (1 samples, 0.01%)core::num::<impl usize>::checked_add (1 samples, 0.01%)core::num::<impl usize>::overflowing_add (1 samples, 0.01%)core::ptr::drop_in_place<agdb::collections::bit_set::BitSet> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)agdb::query::search_query::SearchQuery::search (268 samples, 3.73%)agdb..agdb::db::DbImpl<Store>::search_from (249 samples, 3.47%)agd..agdb::graph_search::GraphSearch<D,Data>::depth_first_search (247 samples, 3.44%)agd..core::ptr::drop_in_place<agdb::graph_search::search_impl::SearchImpl<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped,agdb::graph::GraphDataStorage<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped>,agdb::graph_search::depth_first_search::DepthFirstSearch>> (2 samples, 0.03%)core::ptr::drop_in_place<alloc::vec::Vec<agdb::graph_search::search_impl::SearchIndex>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<agdb::graph_search::search_impl::SearchIndex>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)agdb::db::DbImpl<Store>::exec (269 samples, 3.75%)agdb..agdb::db::DbImpl<Store>::transaction (269 samples, 3.75%)agdb..agdb::db::DbImpl<Store>::exec::{{closure}} (269 samples, 3.75%)agdb..agdb::transaction::Transaction<Store>::exec (269 samples, 3.75%)agdb..<agdb::query::search_query::SearchQuery as agdb::query::Query>::process (269 samples, 3.75%)<agd..alloc::vec::Vec<T,A>::push (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::grow_amortized (1 samples, 0.01%)alloc::raw_vec::finish_grow (1 samples, 0.01%)agdb::query_builder::QueryBuilder::insert (1 samples, 0.01%)agdb::query_builder::search::SearchAlgorithm::from (3 samples, 0.04%)<T as core::convert::Into<U>>::into (3 samples, 0.04%)<agdb::query::query_id::QueryId as core::convert::From<&str>>::from (3 samples, 0.04%)<str as alloc::string::ToString>::to_string (3 samples, 0.04%)<alloc::string::String as core::convert::From<&str>>::from (3 samples, 0.04%)alloc::str::<impl alloc::borrow::ToOwned for str>::to_owned (3 samples, 0.04%)alloc::slice::<impl alloc::borrow::ToOwned for [T]>::to_owned (3 samples, 0.04%)alloc::slice::<impl [T]>::to_vec (3 samples, 0.04%)alloc::slice::<impl [T]>::to_vec_in (3 samples, 0.04%)alloc::slice::hack::to_vec (3 samples, 0.04%)<T as alloc::slice::hack::ConvertVec>::to_vec (3 samples, 0.04%)alloc::vec::Vec<T,A>::with_capacity_in (3 samples, 0.04%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (3 samples, 0.04%)alloc::raw_vec::RawVec<T,A>::allocate_in (3 samples, 0.04%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (3 samples, 0.04%)alloc::alloc::Global::alloc_impl (3 samples, 0.04%)alloc::alloc::alloc (3 samples, 0.04%)malloc (3 samples, 0.04%)agdb::query_builder::search::SearchFrom::where_ (2 samples, 0.03%)agdb::query_builder::where_::WhereLogicOperator::query (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<alloc::vec::Vec<agdb::query::query_condition::QueryCondition>>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<alloc::vec::Vec<agdb::query::query_condition::QueryCondition>>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__rust_dealloc (1 samples, 0.01%)core::ptr::drop_in_place<agdb::query::search_query::SearchQuery> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<agdb::query::query_condition::QueryCondition>> (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)core::ptr::drop_in_place<[agdb::query::query_condition::QueryCondition]> (1 samples, 0.01%)core::ptr::drop_in_place<agdb::query::query_condition::QueryCondition> (1 samples, 0.01%)std::sys::unix::futex::futex_wait (4 samples, 0.06%)syscall (3 samples, 0.04%)agdb_benchmarks::readers::Reader<S>::last_post (282 samples, 3.93%)agdb..std::sync::rwlock::RwLock<T>::read (5 samples, 0.07%)std::sys::unix::locks::futex_rwlock::RwLock::read (5 samples, 0.07%)std::sys::unix::locks::futex_rwlock::RwLock::read_contended (5 samples, 0.07%)std::sys::unix::locks::futex_rwlock::RwLock::spin_read (1 samples, 0.01%)std::sys::unix::locks::futex_rwlock::RwLock::spin_until (1 samples, 0.01%)core::sync::atomic::AtomicU32::load (1 samples, 0.01%)core::sync::atomic::atomic_load (1 samples, 0.01%)<alloc::sync::Arc<T> as core::ops::deref::Deref>::deref (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (22 samples, 0.31%)<T as core::convert::TryInto<U>>::try_into (3 samples, 0.04%)core::array::<impl core::convert::TryFrom<&[T]> for [T: N]>::try_from (3 samples, 0.04%)core::result::Result<T,E>::map (3 samples, 0.04%)<agdb::db::db_id::DbId as agdb::collections::vec::VecValue>::load (116 samples, 1.62%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (94 samples, 1.31%)core::slice::<impl [T]>::get (12 samples, 0.17%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get (12 samples, 0.17%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (17 samples, 0.24%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (43 samples, 0.60%)<i64 as agdb::collections::vec::VecValue>::storage_len (12 samples, 0.17%)agdb::collections::vec::DbVecData<T,D,E>::offset (42 samples, 0.58%)<i64 as agdb::collections::vec::VecValue>::storage_len (17 samples, 0.24%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (106 samples, 1.48%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (42 samples, 0.58%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (14 samples, 0.19%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (14 samples, 0.19%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (14 samples, 0.19%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (3 samples, 0.04%)core::ptr::const_ptr::<impl *const T>::add (3 samples, 0.04%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (34 samples, 0.47%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (25 samples, 0.35%)core::slice::raw::from_raw_parts (6 samples, 0.08%)core::slice::raw::from_raw_parts::runtime (6 samples, 0.08%)core::intrinsics::is_valid_allocation_size (6 samples, 0.08%)agdb::storage::storage_records::StorageRecords::is_valid (31 samples, 0.43%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (7 samples, 0.10%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (7 samples, 0.10%)<usize as core::slice::index::SliceIndex<[T]>>::index (7 samples, 0.10%)agdb::storage::Storage<D>::record (255 samples, 3.55%)agdb..agdb::storage::storage_records::StorageRecords::record (234 samples, 3.26%)agd..core::slice::<impl [T]>::get (4 samples, 0.06%)<usize as core::slice::index::SliceIndex<[T]>>::get (4 samples, 0.06%)agdb::storage::Storage<D>::validate_read_size (14 samples, 0.19%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (883 samples, 12.30%)<agdb::collections..agdb::storage::Storage<D>::value_as_bytes_at_size (594 samples, 8.27%)agdb::storag..agdb::storage::storage_records::StorageRecord::value_start (16 samples, 0.22%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::key (1,035 samples, 14.41%)<agdb::collections::ma..agdb::collections::vec::VecImpl<T,D,Data,E>::value (1,008 samples, 14.04%)agdb::collections::ve..agdb::collections::vec::VecImpl<T,D,Data,E>::validate_index (14 samples, 0.19%)<agdb::collections::map::MapValueState as agdb::collections::vec::VecValue>::load (98 samples, 1.36%)<agdb::collections::map::MapValueState as agdb::utilities::serialize::Serialize>::deserialize (98 samples, 1.36%)core::slice::<impl [T]>::first (8 samples, 0.11%)<agdb::collections::map::MapValueState as agdb::utilities::serialize::SerializeStatic>::serialized_size_static (14 samples, 0.19%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (41 samples, 0.57%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (87 samples, 1.21%)agdb::collections::vec::DbVecData<T,D,E>::offset (43 samples, 0.60%)<agdb::collections::map::MapValueState as agdb::utilities::serialize::SerializeStatic>::serialized_size_static (17 samples, 0.24%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (73 samples, 1.02%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (35 samples, 0.49%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (10 samples, 0.14%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (10 samples, 0.14%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (10 samples, 0.14%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (8 samples, 0.11%)core::ptr::const_ptr::<impl *const T>::add (8 samples, 0.11%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (19 samples, 0.26%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (27 samples, 0.38%)core::slice::raw::from_raw_parts (15 samples, 0.21%)core::slice::raw::from_raw_parts::runtime (15 samples, 0.21%)core::intrinsics::is_valid_allocation_size (15 samples, 0.21%)agdb::storage::storage_records::StorageRecords::is_valid (16 samples, 0.22%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (4 samples, 0.06%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (4 samples, 0.06%)<usize as core::slice::index::SliceIndex<[T]>>::index (4 samples, 0.06%)agdb::storage::Storage<D>::record (203 samples, 2.83%)ag..agdb::storage::storage_records::StorageRecords::record (185 samples, 2.58%)ag..core::slice::<impl [T]>::get (4 samples, 0.06%)<usize as core::slice::index::SliceIndex<[T]>>::get (4 samples, 0.06%)agdb::storage::Storage<D>::validate_read_size (15 samples, 0.21%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (886 samples, 12.34%)<agdb::collections..agdb::storage::Storage<D>::value_as_bytes_at_size (554 samples, 7.71%)agdb::stora..agdb::storage::storage_records::StorageRecord::value_start (43 samples, 0.60%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::state (1,015 samples, 14.13%)<agdb::collections::m..agdb::collections::vec::VecImpl<T,D,Data,E>::value (994 samples, 13.84%)agdb::collections::ve..agdb::collections::vec::VecImpl<T,D,Data,E>::validate_index (8 samples, 0.11%)<agdb::db::db_value_index::DbValueIndex as agdb::utilities::serialize::Serialize>::deserialize (2 samples, 0.03%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)alloc::vec::Vec<T,A>::with_capacity_in (4 samples, 0.06%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (4 samples, 0.06%)alloc::raw_vec::RawVec<T,A>::allocate_in (4 samples, 0.06%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (4 samples, 0.06%)alloc::alloc::Global::alloc_impl (4 samples, 0.06%)alloc::alloc::alloc (4 samples, 0.06%)malloc (4 samples, 0.06%)[libc.so.6] (2 samples, 0.03%)<alloc::borrow::Cow<str> as alloc::string::ToString>::to_string (5 samples, 0.07%)alloc::str::<impl alloc::borrow::ToOwned for str>::to_owned (5 samples, 0.07%)alloc::slice::<impl alloc::borrow::ToOwned for [T]>::to_owned (5 samples, 0.07%)alloc::slice::<impl [T]>::to_vec (5 samples, 0.07%)alloc::slice::<impl [T]>::to_vec_in (5 samples, 0.07%)alloc::slice::hack::to_vec (5 samples, 0.07%)<T as alloc::slice::hack::ConvertVec>::to_vec (5 samples, 0.07%)core::ptr::const_ptr::<impl *const T>::copy_to_nonoverlapping (1 samples, 0.01%)core::intrinsics::copy_nonoverlapping (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb::db::db_value_index::DbValueIndex::get_type (1 samples, 0.01%)agdb::db::db_value_index::DbValueIndex::is_value (1 samples, 0.01%)alloc::vec::Vec<T,A>::with_capacity_in (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::allocate_in (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (2 samples, 0.03%)alloc::alloc::Global::alloc_impl (2 samples, 0.03%)alloc::alloc::alloc (2 samples, 0.03%)malloc (2 samples, 0.03%)<alloc::string::String as agdb::utilities::serialize::Serialize>::deserialize (3 samples, 0.04%)alloc::slice::<impl [T]>::to_vec (3 samples, 0.04%)alloc::slice::<impl [T]>::to_vec_in (3 samples, 0.04%)alloc::slice::hack::to_vec (3 samples, 0.04%)<T as alloc::slice::hack::ConvertVec>::to_vec (3 samples, 0.04%)core::ptr::const_ptr::<impl *const T>::copy_to_nonoverlapping (1 samples, 0.01%)core::intrinsics::copy_nonoverlapping (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb::storage::Storage<D>::value (6 samples, 0.08%)agdb::storage::Storage<D>::value_as_bytes (1 samples, 0.01%)agdb::storage::Storage<D>::value_as_bytes_at (1 samples, 0.01%)agdb::storage::Storage<D>::value_as_bytes_at_size (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (1 samples, 0.01%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)<agdb::db::db_key_value::DbKeyValue as agdb::collections::vec::VecValue>::load (22 samples, 0.31%)agdb::db::db_value::DbValue::load_db_value (19 samples, 0.26%)alloc::string::String::from_utf8_lossy (5 samples, 0.07%)<core::str::lossy::Utf8Chunks as core::iter::traits::iterator::Iterator>::next (2 samples, 0.03%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::value (24 samples, 0.33%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (24 samples, 0.33%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (23 samples, 0.32%)agdb::collections::vec::DbVecData<T,D,E>::offset (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (50 samples, 0.70%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::next_pos (15 samples, 0.21%)__rdl_alloc (1 samples, 0.01%)std::sys::unix::alloc::<impl core::alloc::global::GlobalAlloc for std::alloc::System>::alloc (1 samples, 0.01%)alloc::vec::Vec<T,A>::push (7 samples, 0.10%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (7 samples, 0.10%)alloc::raw_vec::RawVec<T,A>::grow_amortized (7 samples, 0.10%)alloc::raw_vec::finish_grow (7 samples, 0.10%)malloc (5 samples, 0.07%)[libc.so.6] (2 samples, 0.03%)[libc.so.6] (1 samples, 0.01%)agdb::db::DbImpl<Store>::values (2,164 samples, 30.14%)agdb::db::DbImpl<Store>::valuesagdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::values (2,164 samples, 30.14%)agdb::collections::multi_map::MultiMapImpl<K,T,D,..alloc::vec::Vec<T>::new (1 samples, 0.01%)agdb::db::DbImpl<Store>::db_id (1 samples, 0.01%)agdb::db::DbImpl<Store>::graph_index (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::node (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::validate_node (1 samples, 0.01%)agdb::graph_search::GraphSearch<D,Data>::is_valid_index (1 samples, 0.01%)agdb::graph_search::GraphSearch<D,Data>::is_valid_node (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::node (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::validate_node (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::is_valid_node (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::load (1 samples, 0.01%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (1 samples, 0.01%)<agdb::graph_search::breadth_first_search::BreadthFirstSearch as agdb::graph_search::search_impl::SearchIterator<D>>::new (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::iter::traits::collect::IntoIterator>::into_iter (1 samples, 0.01%)core::mem::manually_drop::ManuallyDrop<T>::new (1 samples, 0.01%)<agdb::graph_search::breadth_first_search::BreadthFirstSearch as agdb::graph_search::search_impl::SearchIterator<D>>::next (8 samples, 0.11%)<alloc::vec::into_iter::IntoIter<T,A> as core::iter::traits::iterator::Iterator>::next (8 samples, 0.11%)core::ptr::read (7 samples, 0.10%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (4 samples, 0.06%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (4 samples, 0.06%)<core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::next (15 samples, 0.21%)core::slice::iter::Iter<T>::post_inc_start (8 samples, 0.11%)core::ptr::non_null::NonNull<T>::add (8 samples, 0.11%)core::ptr::const_ptr::<impl *const T>::add (8 samples, 0.11%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (2 samples, 0.03%)core::slice::raw::from_raw_parts (2 samples, 0.03%)core::slice::raw::from_raw_parts::runtime (2 samples, 0.03%)core::intrinsics::is_valid_allocation_size (2 samples, 0.03%)agdb::db::DbImpl<Store>::evaluate_condition (39 samples, 0.54%)agdb::query::query_condition::CountComparison::compare_distance (18 samples, 0.25%)core::cmp::impls::<impl core::cmp::Ord for u64>::cmp (2 samples, 0.03%)agdb::db::DbImpl<Store>::evaluate_conditions (116 samples, 1.62%)agdb::graph_search::SearchControl::and (5 samples, 0.07%)<agdb::db::db_search_handlers::LimitHandler<Store> as agdb::graph_search::SearchHandler>::process (161 samples, 2.24%)<..agdb::graph_search::SearchControl::is_true (4 samples, 0.06%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (4 samples, 0.06%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (11 samples, 0.15%)<i64 as agdb::collections::vec::VecValue>::load (24 samples, 0.33%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (23 samples, 0.32%)<i64 as agdb::collections::vec::VecValue>::storage_len (8 samples, 0.11%)agdb::collections::vec::DbVecData<T,D,E>::offset (10 samples, 0.14%)<i64 as agdb::collections::vec::VecValue>::storage_len (4 samples, 0.06%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (16 samples, 0.22%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (10 samples, 0.14%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (3 samples, 0.04%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (3 samples, 0.04%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (3 samples, 0.04%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (2 samples, 0.03%)core::ptr::const_ptr::<impl *const T>::add (2 samples, 0.03%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (2 samples, 0.03%)core::slice::raw::from_raw_parts (1 samples, 0.01%)core::slice::raw::from_raw_parts::runtime (1 samples, 0.01%)core::intrinsics::is_valid_allocation_size (1 samples, 0.01%)agdb::storage::Storage<D>::record (25 samples, 0.35%)agdb::storage::storage_records::StorageRecords::record (23 samples, 0.32%)agdb::storage::storage_records::StorageRecords::is_valid (5 samples, 0.07%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (2 samples, 0.03%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (2 samples, 0.03%)<usize as core::slice::index::SliceIndex<[T]>>::index (2 samples, 0.03%)agdb::storage::Storage<D>::validate_read_size (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (162 samples, 2.26%)<..agdb::storage::Storage<D>::value_as_bytes_at_size (96 samples, 1.34%)agdb::storage::storage_records::StorageRecord::value_start (7 samples, 0.10%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (181 samples, 2.52%)ag..agdb::collections::vec::VecImpl<T,D,Data,E>::validate_index (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::to (195 samples, 2.72%)<a..agdb::graph::GraphIndex::as_u64 (8 samples, 0.11%)agdb::graph::GraphIndex::is_edge (5 samples, 0.07%)<agdb::graph::GraphIndex as core::convert::From<i64>>::from (2 samples, 0.03%)agdb::graph::GraphEdge<D,Data>::index_to (203 samples, 2.83%)ag..agdb::graph::GraphImpl<D,Data>::edge_to (203 samples, 2.83%)ag..core::result::Result<T,E>::unwrap_or_default (5 samples, 0.07%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (5 samples, 0.07%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (21 samples, 0.29%)<i64 as agdb::collections::vec::VecValue>::load (27 samples, 0.38%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (27 samples, 0.38%)core::slice::<impl [T]>::get (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::storage_len (3 samples, 0.04%)agdb::collections::vec::DbVecData<T,D,E>::offset (8 samples, 0.11%)<i64 as agdb::collections::vec::VecValue>::storage_len (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (23 samples, 0.32%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (12 samples, 0.17%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (2 samples, 0.03%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (2 samples, 0.03%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (2 samples, 0.03%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (2 samples, 0.03%)core::ptr::const_ptr::<impl *const T>::add (2 samples, 0.03%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (3 samples, 0.04%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (3 samples, 0.04%)core::slice::raw::from_raw_parts (2 samples, 0.03%)core::slice::raw::from_raw_parts::runtime (2 samples, 0.03%)core::intrinsics::is_valid_allocation_size (2 samples, 0.03%)agdb::storage::Storage<D>::record (35 samples, 0.49%)agdb::storage::storage_records::StorageRecords::record (31 samples, 0.43%)agdb::storage::storage_records::StorageRecords::is_valid (2 samples, 0.03%)agdb::storage::Storage<D>::validate_read_size (3 samples, 0.04%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (177 samples, 2.46%)<a..agdb::storage::Storage<D>::value_as_bytes_at_size (103 samples, 1.43%)agdb::storage::storage_records::StorageRecord::value_start (8 samples, 0.11%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (199 samples, 2.77%)ag..agdb::collections::vec::VecImpl<T,D,Data,E>::validate_index (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from (209 samples, 2.91%)<a..agdb::graph::GraphIndex::as_u64 (1 samples, 0.01%)agdb::graph::GraphIndex::is_edge (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::is_valid_edge (212 samples, 2.95%)agd..<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (3 samples, 0.04%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (12 samples, 0.17%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (15 samples, 0.21%)<i64 as agdb::collections::vec::VecValue>::load (23 samples, 0.32%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (22 samples, 0.31%)<T as core::convert::TryInto<U>>::try_into (1 samples, 0.01%)core::array::<impl core::convert::TryFrom<&[T]> for [T: N]>::try_from (1 samples, 0.01%)core::result::Result<T,E>::map (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::storage_len (4 samples, 0.06%)agdb::collections::vec::DbVecData<T,D,E>::offset (8 samples, 0.11%)<i64 as agdb::collections::vec::VecValue>::storage_len (3 samples, 0.04%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (14 samples, 0.19%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (11 samples, 0.15%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (1 samples, 0.01%)core::ptr::const_ptr::<impl *const T>::add (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (2 samples, 0.03%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (5 samples, 0.07%)agdb::storage::storage_records::StorageRecords::is_valid (6 samples, 0.08%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (3 samples, 0.04%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (3 samples, 0.04%)<usize as core::slice::index::SliceIndex<[T]>>::index (3 samples, 0.04%)agdb::storage::Storage<D>::record (35 samples, 0.49%)agdb::storage::storage_records::StorageRecords::record (35 samples, 0.49%)core::slice::<impl [T]>::get (3 samples, 0.04%)<usize as core::slice::index::SliceIndex<[T]>>::get (3 samples, 0.04%)agdb::storage::Storage<D>::validate_read_size (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (170 samples, 2.37%)<a..agdb::storage::Storage<D>::value_as_bytes_at_size (96 samples, 1.34%)agdb::storage::storage_records::StorageRecord::value_start (5 samples, 0.07%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (193 samples, 2.69%)ag..agdb::collections::vec::VecImpl<T,D,Data,E>::validate_index (4 samples, 0.06%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from_meta (206 samples, 2.87%)<a..agdb::graph::GraphIndex::as_u64 (7 samples, 0.10%)agdb::graph::GraphIndex::is_edge (3 samples, 0.04%)agdb::graph::GraphImpl<D,Data>::is_removed_index (209 samples, 2.91%)ag..<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (3 samples, 0.04%)agdb::graph::GraphIndex::as_u64 (5 samples, 0.07%)agdb::graph::GraphIndex::is_edge (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::validate_edge (459 samples, 6.39%)agdb::gr..agdb::graph::GraphImpl<D,Data>::is_valid_index (225 samples, 3.13%)agd..agdb::graph::GraphIndex::is_valid (4 samples, 0.06%)<agdb::graph_search::breadth_first_search::BreadthFirstSearch as agdb::graph_search::search_impl::SearchIterator<D>>::expand_edge (680 samples, 9.47%)<agdb::graph_s..agdb::graph::GraphImpl<D,Data>::edge (463 samples, 6.45%)agdb::gr..core::result::Result<T,E>::is_err (3 samples, 0.04%)core::result::Result<T,E>::is_ok (3 samples, 0.04%)agdb::graph::GraphImpl<D,Data>::node (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::validate_node (1 samples, 0.01%)agdb::graph::GraphNode<D,Data>::edge_iter_from (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::first_edge_from (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::load (1 samples, 0.01%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (1 samples, 0.01%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (3 samples, 0.04%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (15 samples, 0.21%)<i64 as agdb::collections::vec::VecValue>::load (17 samples, 0.24%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (17 samples, 0.24%)<i64 as agdb::collections::vec::VecValue>::storage_len (3 samples, 0.04%)agdb::collections::vec::DbVecData<T,D,E>::offset (6 samples, 0.08%)<i64 as agdb::collections::vec::VecValue>::storage_len (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (11 samples, 0.15%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (5 samples, 0.07%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (1 samples, 0.01%)core::ptr::const_ptr::<impl *const T>::add (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (2 samples, 0.03%)core::slice::raw::from_raw_parts (1 samples, 0.01%)core::slice::raw::from_raw_parts::runtime (1 samples, 0.01%)core::intrinsics::is_valid_allocation_size (1 samples, 0.01%)agdb::storage::storage_records::StorageRecords::is_valid (5 samples, 0.07%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<usize as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)agdb::storage::Storage<D>::record (35 samples, 0.49%)agdb::storage::storage_records::StorageRecords::record (33 samples, 0.46%)core::slice::<impl [T]>::get (2 samples, 0.03%)<usize as core::slice::index::SliceIndex<[T]>>::get (2 samples, 0.03%)agdb::storage::Storage<D>::validate_read_size (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (147 samples, 2.05%)a..<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (133 samples, 1.85%)<..agdb::storage::Storage<D>::value_as_bytes_at_size (78 samples, 1.09%)agdb::storage::storage_records::StorageRecord::value_start (7 samples, 0.10%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from_meta (164 samples, 2.28%)<..agdb::graph::GraphIndex::as_u64 (10 samples, 0.14%)agdb::graph::GraphIndex::is_edge (6 samples, 0.08%)agdb::graph::GraphImpl<D,Data>::next_edge_from (168 samples, 2.34%)a..<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (3 samples, 0.04%)<agdb::graph::GraphEdgeIterator<D,Data> as core::iter::traits::iterator::Iterator>::next (196 samples, 2.73%)<a..agdb::graph::GraphIndex::is_valid (1 samples, 0.01%)<core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::next (198 samples, 2.76%)<c..core::option::Option<T>::map (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::set_ptr_and_cap (1 samples, 0.01%)__rdl_realloc (1 samples, 0.01%)std::sys::unix::alloc::<impl core::alloc::global::GlobalAlloc for std::alloc::System>::realloc (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::grow (9 samples, 0.13%)alloc::alloc::Global::grow_impl (9 samples, 0.13%)alloc::alloc::realloc (9 samples, 0.13%)realloc (8 samples, 0.11%)[libc.so.6] (5 samples, 0.07%)[libc.so.6] (2 samples, 0.03%)<alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend (213 samples, 2.97%)<al..alloc::vec::Vec<T,A>::extend_desugared (213 samples, 2.97%)all..alloc::vec::Vec<T,A>::reserve (12 samples, 0.17%)alloc::raw_vec::RawVec<T,A>::reserve (12 samples, 0.17%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (12 samples, 0.17%)alloc::raw_vec::RawVec<T,A>::grow_amortized (12 samples, 0.17%)alloc::raw_vec::finish_grow (11 samples, 0.15%)core::result::Result<T,E>::map_err (1 samples, 0.01%)__rdl_alloc (1 samples, 0.01%)<agdb::graph_search::breadth_first_search::BreadthFirstSearch as agdb::graph_search::search_impl::SearchIterator<D>>::expand_node (217 samples, 3.02%)<ag..core::iter::traits::iterator::Iterator::collect (215 samples, 2.99%)cor..<alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter (215 samples, 2.99%)<al..<alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter (215 samples, 2.99%)<al..<alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter (215 samples, 2.99%)<al..alloc::vec::Vec<T>::with_capacity (2 samples, 0.03%)alloc::vec::Vec<T,A>::with_capacity_in (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::allocate_in (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (2 samples, 0.03%)alloc::alloc::Global::alloc_impl (2 samples, 0.03%)alloc::alloc::alloc (2 samples, 0.03%)malloc (1 samples, 0.01%)agdb::graph::GraphIndex::is_node (3 samples, 0.04%)<alloc::vec::into_iter::IntoIter<T,A> as core::iter::traits::iterator::Iterator>::next (4 samples, 0.06%)<alloc::alloc::Global as core::alloc::Allocator>::grow (5 samples, 0.07%)alloc::alloc::Global::grow_impl (5 samples, 0.07%)alloc::alloc::realloc (5 samples, 0.07%)realloc (5 samples, 0.07%)[libc.so.6] (5 samples, 0.07%)[libc.so.6] (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (6 samples, 0.08%)alloc::raw_vec::RawVec<T,A>::grow_amortized (6 samples, 0.08%)alloc::raw_vec::finish_grow (6 samples, 0.08%)__rdl_alloc (1 samples, 0.01%)alloc::vec::Vec<T,A>::as_mut_ptr (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::ptr (1 samples, 0.01%)core::ptr::mut_ptr::<impl *mut T>::add (1 samples, 0.01%)alloc::vec::Vec<T,A>::push (20 samples, 0.28%)core::ptr::write (7 samples, 0.10%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::add_edges_to_stack (25 samples, 0.35%)core::ptr::drop_in_place<alloc::vec::into_iter::IntoIter<agdb::graph::GraphIndex>> (1 samples, 0.01%)<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)core::ptr::drop_in_place<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<agdb::graph::GraphIndex,alloc::alloc::Global>> (1 samples, 0.01%)<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<agdb::graph::GraphIndex>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__rdl_dealloc (1 samples, 0.01%)std::sys::unix::alloc::<impl core::alloc::global::GlobalAlloc for std::alloc::System>::dealloc (1 samples, 0.01%)__rust_realloc (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (13 samples, 0.18%)alloc::raw_vec::RawVec<T,A>::grow_amortized (13 samples, 0.18%)alloc::raw_vec::finish_grow (13 samples, 0.18%)<alloc::alloc::Global as core::alloc::Allocator>::grow (13 samples, 0.18%)alloc::alloc::Global::grow_impl (13 samples, 0.18%)alloc::alloc::realloc (13 samples, 0.18%)realloc (12 samples, 0.17%)[libc.so.6] (10 samples, 0.14%)[libc.so.6] (9 samples, 0.13%)[libc.so.6] (2 samples, 0.03%)core::ptr::mut_ptr::<impl *mut T>::add (2 samples, 0.03%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::expand_index (987 samples, 13.74%)agdb::graph_search::s..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::add_index_to_stack (36 samples, 0.50%)alloc::vec::Vec<T,A>::push (36 samples, 0.50%)core::ptr::write (14 samples, 0.19%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_unvisited_index (1,160 samples, 16.15%)agdb::graph_search::searc..alloc::vec::Vec<T,A>::push (3 samples, 0.04%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (3 samples, 0.04%)alloc::raw_vec::RawVec<T,A>::grow_amortized (3 samples, 0.04%)alloc::raw_vec::finish_grow (3 samples, 0.04%)<alloc::alloc::Global as core::alloc::Allocator>::grow (3 samples, 0.04%)alloc::alloc::Global::grow_impl (3 samples, 0.04%)alloc::alloc::realloc (3 samples, 0.04%)realloc (3 samples, 0.04%)[libc.so.6] (3 samples, 0.04%)[libc.so.6] (3 samples, 0.04%)alloc::vec::Vec<T,A>::len (1 samples, 0.01%)agdb::collections::bit_set::BitSet::insert (48 samples, 0.67%)alloc::vec::Vec<T,A>::resize (5 samples, 0.07%)alloc::vec::Vec<T,A>::extend_with (5 samples, 0.07%)alloc::vec::Vec<T,A>::reserve (5 samples, 0.07%)alloc::raw_vec::RawVec<T,A>::reserve (5 samples, 0.07%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (5 samples, 0.07%)alloc::raw_vec::RawVec<T,A>::grow_amortized (5 samples, 0.07%)alloc::raw_vec::finish_grow (5 samples, 0.07%)<alloc::alloc::Global as core::alloc::Allocator>::grow (3 samples, 0.04%)alloc::alloc::Global::grow_impl (3 samples, 0.04%)alloc::alloc::realloc (3 samples, 0.04%)realloc (3 samples, 0.04%)[libc.so.6] (3 samples, 0.04%)[libc.so.6] (2 samples, 0.03%)agdb::collections::bit_set::BitSet::value (23 samples, 0.32%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_index (1,258 samples, 17.52%)agdb::graph_search::search_..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::visit_index (95 samples, 1.32%)agdb::graph::GraphIndex::as_u64 (15 samples, 0.21%)agdb::graph::GraphIndex::is_edge (7 samples, 0.10%)agdb::query::search_query::SearchQuery::search (1,273 samples, 17.73%)agdb::query::search_query::S..agdb::db::DbImpl<Store>::search_from (1,271 samples, 17.70%)agdb::db::DbImpl<Store>::se..agdb::graph_search::GraphSearch<D,Data>::breadth_first_search (1,271 samples, 17.70%)agdb::graph_search::GraphSe..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::search (1,269 samples, 17.67%)agdb::graph_search::search_..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_stack (1,269 samples, 17.67%)agdb::graph_search::search_..core::ptr::drop_in_place<agdb::graph_search::breadth_first_search::BreadthFirstSearch> (2 samples, 0.03%)core::ptr::drop_in_place<alloc::vec::into_iter::IntoIter<agdb::graph_search::search_impl::SearchIndex>> (2 samples, 0.03%)<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)core::ptr::drop_in_place<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<agdb::graph_search::search_impl::SearchIndex,alloc::alloc::Global>> (2 samples, 0.03%)<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<agdb::graph_search::search_impl::SearchIndex>> (2 samples, 0.03%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (2 samples, 0.03%)alloc::alloc::dealloc (2 samples, 0.03%)__libc_free (2 samples, 0.03%)[libc.so.6] (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)alloc::vec::Vec<T,A>::push (1 samples, 0.01%)core::ptr::write (1 samples, 0.01%)agdb::db::DbImpl<Store>::exec (3,440 samples, 47.90%)agdb::db::DbImpl<Store>::execagdb::db::DbImpl<Store>::transaction (3,440 samples, 47.90%)agdb::db::DbImpl<Store>::transactionagdb::db::DbImpl<Store>::exec::{{closure}} (3,440 samples, 47.90%)agdb::db::DbImpl<Store>::exec::{{closure}}agdb::transaction::Transaction<Store>::exec (3,440 samples, 47.90%)agdb::transaction::Transaction<Store>::exec<agdb::query::select_query::SelectQuery as agdb::query::Query>::process (3,440 samples, 47.90%)<agdb::query::select_query::SelectQuery as agdb::query::Query>::processalloc::vec::Vec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve (1 samples, 0.01%)agdb::query_builder::where_::Where::distance (1 samples, 0.01%)agdb::query_builder::where_::Where::add_condition (1 samples, 0.01%)alloc::vec::Vec<T,A>::push (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::grow_amortized (1 samples, 0.01%)alloc::raw_vec::finish_grow (1 samples, 0.01%)__libc_free (5 samples, 0.07%)[libc.so.6] (2 samples, 0.03%)<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop (7 samples, 0.10%)core::ptr::drop_in_place<[agdb::db::db_key_value::DbKeyValue]> (7 samples, 0.10%)core::ptr::drop_in_place<agdb::db::db_key_value::DbKeyValue> (7 samples, 0.10%)core::ptr::drop_in_place<agdb::db::db_value::DbValue> (2 samples, 0.03%)core::ptr::drop_in_place<agdb::query::query_result::QueryResult> (10 samples, 0.14%)core::ptr::drop_in_place<alloc::vec::Vec<agdb::db::db_element::DbElement>> (10 samples, 0.14%)<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop (10 samples, 0.14%)core::ptr::drop_in_place<[agdb::db::db_element::DbElement]> (10 samples, 0.14%)core::ptr::drop_in_place<agdb::db::db_element::DbElement> (10 samples, 0.14%)core::ptr::drop_in_place<alloc::vec::Vec<agdb::db::db_key_value::DbKeyValue>> (10 samples, 0.14%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<agdb::db::db_key_value::DbKeyValue>> (3 samples, 0.04%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (3 samples, 0.04%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (3 samples, 0.04%)alloc::alloc::dealloc (3 samples, 0.04%)__libc_free (3 samples, 0.04%)[libc.so.6] (2 samples, 0.03%)std::sync::rwlock::RwLockReadGuard<T>::new (1 samples, 0.01%)std::sync::poison::map_result (1 samples, 0.01%)agdb_benchmarks::readers::Reader<S>::read_comments::{{closure}} (3,456 samples, 48.13%)agdb_benchmarks::readers::Reader<S>::read_comments::{{closure}}std::sync::rwlock::RwLock<T>::read (3 samples, 0.04%)std::sys::unix::locks::futex_rwlock::RwLock::read (2 samples, 0.03%)std::sys::unix::locks::futex_rwlock::RwLock::read_contended (2 samples, 0.03%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (2 samples, 0.03%)clock_gettime (2 samples, 0.03%)__vdso_clock_gettime (2 samples, 0.03%)std::time::Instant::elapsed (5 samples, 0.07%)std::time::Instant::now (5 samples, 0.07%)std::sys::unix::time::inner::Instant::now (5 samples, 0.07%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (5 samples, 0.07%)clock_gettime (5 samples, 0.07%)__vdso_clock_gettime (5 samples, 0.07%)agdb_benchmarks::utilities::measured (3,465 samples, 48.25%)agdb_benchmarks::utilities::measuredstd::time::Instant::now (1 samples, 0.01%)std::sys::unix::time::inner::Instant::now (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::grow_amortized (2 samples, 0.03%)alloc::raw_vec::finish_grow (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::grow (2 samples, 0.03%)alloc::alloc::Global::grow_impl (2 samples, 0.03%)alloc::alloc::realloc (2 samples, 0.03%)realloc (2 samples, 0.03%)[libc.so.6] (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb_benchmarks::readers::Reader<S>::read_comments (3,751 samples, 52.24%)agdb_benchmarks::readers::Reader<S>::read_commentsalloc::vec::Vec<T,A>::push (4 samples, 0.06%)core::ptr::write (1 samples, 0.01%)core::ptr::drop_in_place<tokio::time::sleep::Sleep> (1 samples, 0.01%)tokio::time::instant::Instant::now (1 samples, 0.01%)tokio::time::instant::variant::now (1 samples, 0.01%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (1 samples, 0.01%)clock_gettime (1 samples, 0.01%)__vdso_clock_gettime (1 samples, 0.01%)agdb_benchmarks::readers::start_comment_readers::{{closure}} (3,766 samples, 52.44%)agdb_benchmarks::readers::start_comment_readers::{{closure}}tokio::time::sleep::sleep (2 samples, 0.03%)tokio::time::sleep::Sleep::new_timeout (1 samples, 0.01%)tokio::runtime::scheduler::Handle::current (1 samples, 0.01%)tokio::runtime::context::current::with_current (1 samples, 0.01%)std::thread::local::LocalKey<T>::try_with (1 samples, 0.01%)tokio::runtime::context::current::with_current::{{closure}} (1 samples, 0.01%)core::option::Option<T>::map (1 samples, 0.01%)core::ops::function::FnOnce::call_once (1 samples, 0.01%)<tokio::runtime::scheduler::Handle as core::clone::Clone>::clone (1 samples, 0.01%)tokio::runtime::time::entry::TimerEntry::driver (1 samples, 0.01%)tokio::runtime::scheduler::Handle::driver (1 samples, 0.01%)<tokio::time::sleep::Sleep as core::future::future::Future>::poll (3 samples, 0.04%)tokio::time::sleep::Sleep::poll_elapsed (2 samples, 0.03%)tokio::runtime::time::entry::TimerEntry::poll_elapsed (2 samples, 0.03%)tokio::runtime::time::entry::TimerEntry::reset (1 samples, 0.01%)tokio::runtime::time::source::TimeSource::deadline_to_tick (1 samples, 0.01%)tokio::runtime::time::source::TimeSource::instant_to_tick (1 samples, 0.01%)tokio::time::instant::Instant::checked_duration_since (1 samples, 0.01%)std::time::Instant::checked_duration_since (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (21 samples, 0.29%)<T as core::convert::TryInto<U>>::try_into (2 samples, 0.03%)core::array::<impl core::convert::TryFrom<&[T]> for [T: N]>::try_from (2 samples, 0.03%)core::result::Result<T,E>::map (2 samples, 0.03%)<agdb::db::db_id::DbId as agdb::collections::vec::VecValue>::load (99 samples, 1.38%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (78 samples, 1.09%)core::slice::<impl [T]>::get (6 samples, 0.08%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get (6 samples, 0.08%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (14 samples, 0.19%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (27 samples, 0.38%)<i64 as agdb::collections::vec::VecValue>::storage_len (15 samples, 0.21%)agdb::collections::vec::DbVecData<T,D,E>::offset (29 samples, 0.40%)<i64 as agdb::collections::vec::VecValue>::storage_len (7 samples, 0.10%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (61 samples, 0.85%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (23 samples, 0.32%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (5 samples, 0.07%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (5 samples, 0.07%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (5 samples, 0.07%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (3 samples, 0.04%)core::ptr::const_ptr::<impl *const T>::add (3 samples, 0.04%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (16 samples, 0.22%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (22 samples, 0.31%)core::slice::raw::from_raw_parts (8 samples, 0.11%)core::slice::raw::from_raw_parts::runtime (8 samples, 0.11%)core::intrinsics::is_valid_allocation_size (8 samples, 0.11%)agdb::storage::Storage<D>::record (148 samples, 2.06%)a..agdb::storage::storage_records::StorageRecords::record (133 samples, 1.85%)a..agdb::storage::storage_records::StorageRecords::is_valid (21 samples, 0.29%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (12 samples, 0.17%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (12 samples, 0.17%)<usize as core::slice::index::SliceIndex<[T]>>::index (12 samples, 0.17%)agdb::storage::Storage<D>::validate_read_size (8 samples, 0.11%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (612 samples, 8.52%)<agdb::colle..agdb::storage::Storage<D>::value_as_bytes_at_size (381 samples, 5.31%)agdb::..agdb::storage::storage_records::StorageRecord::value_start (26 samples, 0.36%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::key (728 samples, 10.14%)<agdb::collecti..agdb::collections::vec::VecImpl<T,D,Data,E>::value (716 samples, 9.97%)agdb::collecti..agdb::collections::vec::VecImpl<T,D,Data,E>::validate_index (13 samples, 0.18%)<agdb::collections::map::MapValueState as agdb::collections::vec::VecValue>::load (67 samples, 0.93%)<agdb::collections::map::MapValueState as agdb::utilities::serialize::Serialize>::deserialize (67 samples, 0.93%)core::slice::<impl [T]>::first (7 samples, 0.10%)<agdb::collections::map::MapValueState as agdb::utilities::serialize::SerializeStatic>::serialized_size_static (11 samples, 0.15%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (21 samples, 0.29%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (82 samples, 1.14%)agdb::collections::vec::DbVecData<T,D,E>::offset (33 samples, 0.46%)<agdb::collections::map::MapValueState as agdb::utilities::serialize::SerializeStatic>::serialized_size_static (13 samples, 0.18%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (66 samples, 0.92%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (32 samples, 0.45%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (9 samples, 0.13%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (9 samples, 0.13%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (9 samples, 0.13%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (8 samples, 0.11%)core::ptr::const_ptr::<impl *const T>::add (8 samples, 0.11%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (9 samples, 0.13%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (16 samples, 0.22%)core::slice::raw::from_raw_parts (7 samples, 0.10%)core::slice::raw::from_raw_parts::runtime (7 samples, 0.10%)core::intrinsics::is_valid_allocation_size (7 samples, 0.10%)agdb::storage::Storage<D>::record (170 samples, 2.37%)ag..agdb::storage::storage_records::StorageRecords::record (162 samples, 2.26%)a..agdb::storage::storage_records::StorageRecords::is_valid (18 samples, 0.25%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (9 samples, 0.13%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (9 samples, 0.13%)<usize as core::slice::index::SliceIndex<[T]>>::index (9 samples, 0.13%)agdb::storage::Storage<D>::validate_read_size (13 samples, 0.18%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (677 samples, 9.43%)<agdb::collec..agdb::storage::Storage<D>::value_as_bytes_at_size (412 samples, 5.74%)agdb::s..agdb::storage::storage_records::StorageRecord::value_start (24 samples, 0.33%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::state (779 samples, 10.85%)<agdb::collectio..agdb::collections::vec::VecImpl<T,D,Data,E>::value (764 samples, 10.64%)agdb::collection..agdb::collections::vec::VecImpl<T,D,Data,E>::validate_index (6 samples, 0.08%)<agdb::db::db_value_index::DbValueIndex as agdb::utilities::serialize::Serialize>::deserialize (1 samples, 0.01%)__rdl_alloc (1 samples, 0.01%)alloc::vec::Vec<T,A>::with_capacity_in (12 samples, 0.17%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (12 samples, 0.17%)alloc::raw_vec::RawVec<T,A>::allocate_in (12 samples, 0.17%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (12 samples, 0.17%)alloc::alloc::Global::alloc_impl (12 samples, 0.17%)alloc::alloc::alloc (12 samples, 0.17%)malloc (11 samples, 0.15%)[libc.so.6] (5 samples, 0.07%)[libc.so.6] (2 samples, 0.03%)<alloc::borrow::Cow<str> as alloc::string::ToString>::to_string (13 samples, 0.18%)alloc::str::<impl alloc::borrow::ToOwned for str>::to_owned (13 samples, 0.18%)alloc::slice::<impl alloc::borrow::ToOwned for [T]>::to_owned (13 samples, 0.18%)alloc::slice::<impl [T]>::to_vec (13 samples, 0.18%)alloc::slice::<impl [T]>::to_vec_in (13 samples, 0.18%)alloc::slice::hack::to_vec (13 samples, 0.18%)<T as alloc::slice::hack::ConvertVec>::to_vec (13 samples, 0.18%)core::ptr::const_ptr::<impl *const T>::copy_to_nonoverlapping (1 samples, 0.01%)core::intrinsics::copy_nonoverlapping (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<usize as agdb::utilities::serialize::Serialize>::deserialize (1 samples, 0.01%)<u64 as agdb::utilities::serialize::Serialize>::deserialize (1 samples, 0.01%)<T as core::convert::TryInto<U>>::try_into (1 samples, 0.01%)core::array::<impl core::convert::TryFrom<&[T]> for [T: N]>::try_from (1 samples, 0.01%)core::result::Result<T,E>::map (1 samples, 0.01%)alloc::vec::Vec<T,A>::with_capacity_in (9 samples, 0.13%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (9 samples, 0.13%)alloc::raw_vec::RawVec<T,A>::allocate_in (9 samples, 0.13%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (9 samples, 0.13%)alloc::alloc::Global::alloc_impl (9 samples, 0.13%)alloc::alloc::alloc (9 samples, 0.13%)malloc (9 samples, 0.13%)[libc.so.6] (4 samples, 0.06%)[libc.so.6] (2 samples, 0.03%)alloc::slice::<impl [T]>::to_vec (16 samples, 0.22%)alloc::slice::<impl [T]>::to_vec_in (16 samples, 0.22%)alloc::slice::hack::to_vec (16 samples, 0.22%)<T as alloc::slice::hack::ConvertVec>::to_vec (16 samples, 0.22%)core::ptr::const_ptr::<impl *const T>::copy_to_nonoverlapping (7 samples, 0.10%)core::intrinsics::copy_nonoverlapping (7 samples, 0.10%)[libc.so.6] (7 samples, 0.10%)alloc::string::String::from_utf8 (6 samples, 0.08%)core::str::converts::from_utf8 (6 samples, 0.08%)core::str::validations::run_utf8_validation (5 samples, 0.07%)core::str::validations::contains_nonascii (1 samples, 0.01%)<alloc::string::String as agdb::utilities::serialize::Serialize>::deserialize (26 samples, 0.36%)core::slice::<impl [T]>::get (2 samples, 0.03%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get (2 samples, 0.03%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)agdb::storage::Storage<D>::value_as_bytes_at_size (2 samples, 0.03%)agdb::storage::Storage<D>::record (2 samples, 0.03%)agdb::storage::storage_records::StorageRecords::record (2 samples, 0.03%)agdb::storage::Storage<D>::value (31 samples, 0.43%)agdb::storage::Storage<D>::value_as_bytes (3 samples, 0.04%)agdb::storage::Storage<D>::value_as_bytes_at (3 samples, 0.04%)agdb::storage::Storage<D>::value_size (1 samples, 0.01%)agdb::storage::Storage<D>::record (1 samples, 0.01%)agdb::storage::storage_records::StorageRecords::record (1 samples, 0.01%)agdb::storage::storage_records::StorageRecords::is_valid (1 samples, 0.01%)<core::str::lossy::Utf8Chunks as core::iter::traits::iterator::Iterator>::next (4 samples, 0.06%)core::slice::<impl [T]>::split_at_unchecked (1 samples, 0.01%)core::ptr::const_ptr::<impl *const T>::add (1 samples, 0.01%)<agdb::db::db_key_value::DbKeyValue as agdb::collections::vec::VecValue>::load (60 samples, 0.84%)agdb::db::db_value::DbValue::load_db_value (55 samples, 0.77%)alloc::string::String::from_utf8_lossy (9 samples, 0.13%)core::str::lossy::Utf8Chunk::invalid (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)agdb::collections::vec::DbVecData<T,D,E>::offset (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::value (66 samples, 0.92%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (65 samples, 0.91%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (63 samples, 0.88%)agdb::storage::Storage<D>::value_as_bytes_at_size (1 samples, 0.01%)agdb::storage::storage_records::StorageRecord::value_start (1 samples, 0.01%)<agdb::db::db_id::DbId as core::cmp::PartialEq>::eq (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (31 samples, 0.43%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::capacity (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::capacity (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::len (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::len (1 samples, 0.01%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::next_pos (13 samples, 0.18%)__rdl_alloc (1 samples, 0.01%)alloc::raw_vec::finish_grow (4 samples, 0.06%)malloc (2 samples, 0.03%)alloc::vec::Vec<T,A>::push (6 samples, 0.08%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (5 samples, 0.07%)alloc::raw_vec::RawVec<T,A>::grow_amortized (5 samples, 0.07%)core::cmp::max (1 samples, 0.01%)core::cmp::Ord::max (1 samples, 0.01%)core::cmp::max_by (1 samples, 0.01%)agdb::db::DbImpl<Store>::values (1,633 samples, 22.74%)agdb::db::DbImpl<Store>::valuesagdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::values (1,633 samples, 22.74%)agdb::collections::multi_map::MultiM..alloc::vec::Vec<T>::new (1 samples, 0.01%)<agdb::storage::StorageIndex as agdb::utilities::serialize::Serialize>::deserialize (2 samples, 0.03%)<alloc::string::String as agdb::collections::vec::VecValue>::load (3 samples, 0.04%)agdb::storage::Storage<D>::value (1 samples, 0.01%)<alloc::string::String as agdb::utilities::serialize::Serialize>::deserialize (1 samples, 0.01%)alloc::string::String::from_utf8 (1 samples, 0.01%)core::str::converts::from_utf8 (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::key (5 samples, 0.07%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (5 samples, 0.07%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (4 samples, 0.06%)agdb::storage::Storage<D>::value_as_bytes_at_size (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::state (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (2 samples, 0.03%)<agdb::collections::map::MapValueState as agdb::collections::vec::VecValue>::load (1 samples, 0.01%)<agdb::collections::map::MapValueState as agdb::utilities::serialize::Serialize>::deserialize (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::value (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)agdb::collections::vec::DbVecData<T,D,E>::offset (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::storage_len (1 samples, 0.01%)agdb::collections::indexed_map::IndexedMapImpl<K,T,D,DataKT,DataTK>::value (15 samples, 0.21%)agdb::collections::map::MapImpl<K,T,D,Data>::value (15 samples, 0.21%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::value (15 samples, 0.21%)<alloc::string::String as core::cmp::PartialEq>::eq (5 samples, 0.07%)alloc::vec::partial_eq::<impl core::cmp::PartialEq<alloc::vec::Vec<U,A2>> for alloc::vec::Vec<T,A1>>::eq (5 samples, 0.07%)core::slice::cmp::<impl core::cmp::PartialEq<[B]> for [A]>::eq (5 samples, 0.07%)<[A] as core::slice::cmp::SlicePartialEq<B>>::equal (5 samples, 0.07%)[libc.so.6] (5 samples, 0.07%)agdb::db::DbImpl<Store>::db_id (19 samples, 0.26%)alloc::fmt::format (4 samples, 0.06%)core::option::Option<T>::map_or_else (4 samples, 0.06%)alloc::fmt::format::{{closure}} (4 samples, 0.06%)alloc::fmt::format::format_inner (4 samples, 0.06%)core::fmt::Write::write_fmt (3 samples, 0.04%)core::fmt::write (3 samples, 0.04%)<&mut W as core::fmt::Write>::write_str (2 samples, 0.03%)<alloc::string::String as core::fmt::Write>::write_str (1 samples, 0.01%)alloc::string::String::push_str (1 samples, 0.01%)alloc::vec::Vec<T,A>::extend_from_slice (1 samples, 0.01%)<alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<&T,core::slice::iter::Iter<T>>>::spec_extend (1 samples, 0.01%)alloc::vec::Vec<T,A>::append_elements (1 samples, 0.01%)core::intrinsics::copy_nonoverlapping (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::is_valid_index (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::is_removed_index (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from_meta (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::load (1 samples, 0.01%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (1 samples, 0.01%)agdb::graph_search::GraphSearch<D,Data>::is_valid_index (3 samples, 0.04%)agdb::graph_search::GraphSearch<D,Data>::is_valid_node (3 samples, 0.04%)agdb::graph::GraphImpl<D,Data>::node (3 samples, 0.04%)agdb::graph::GraphImpl<D,Data>::validate_node (3 samples, 0.04%)agdb::graph::GraphImpl<D,Data>::is_valid_node (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::load (1 samples, 0.01%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (1 samples, 0.01%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::new (1 samples, 0.01%)alloc::alloc::exchange_malloc (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc (1 samples, 0.01%)__rdl_alloc (1 samples, 0.01%)std::sys::unix::alloc::<impl core::alloc::global::GlobalAlloc for std::alloc::System>::alloc (1 samples, 0.01%)<agdb::graph_search::breadth_first_search::BreadthFirstSearch as agdb::graph_search::search_impl::SearchIterator<D>>::next (9 samples, 0.13%)<alloc::vec::into_iter::IntoIter<T,A> as core::iter::traits::iterator::Iterator>::next (9 samples, 0.13%)core::ptr::read (8 samples, 0.11%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (6 samples, 0.08%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (4 samples, 0.06%)<core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::next (16 samples, 0.22%)core::slice::iter::Iter<T>::post_inc_start (5 samples, 0.07%)core::ptr::non_null::NonNull<T>::add (5 samples, 0.07%)core::ptr::const_ptr::<impl *const T>::add (5 samples, 0.07%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (2 samples, 0.03%)core::slice::raw::from_raw_parts (2 samples, 0.03%)core::slice::raw::from_raw_parts::runtime (2 samples, 0.03%)core::intrinsics::is_valid_allocation_size (2 samples, 0.03%)agdb::db::DbImpl<Store>::evaluate_condition (42 samples, 0.58%)agdb::query::query_condition::CountComparison::compare_distance (22 samples, 0.31%)core::cmp::impls::<impl core::cmp::Ord for u64>::cmp (4 samples, 0.06%)agdb::db::DbImpl<Store>::evaluate_conditions (117 samples, 1.63%)agdb::graph_search::SearchControl::and (11 samples, 0.15%)<agdb::db::db_search_handlers::LimitHandler<Store> as agdb::graph_search::SearchHandler>::process (162 samples, 2.26%)<..agdb::graph_search::SearchControl::is_true (5 samples, 0.07%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (3 samples, 0.04%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (12 samples, 0.17%)<i64 as agdb::collections::vec::VecValue>::load (20 samples, 0.28%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (20 samples, 0.28%)<T as core::convert::TryInto<U>>::try_into (1 samples, 0.01%)core::array::<impl core::convert::TryFrom<&[T]> for [T: N]>::try_from (1 samples, 0.01%)core::result::Result<T,E>::map (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::storage_len (2 samples, 0.03%)agdb::collections::vec::DbVecData<T,D,E>::offset (5 samples, 0.07%)<i64 as agdb::collections::vec::VecValue>::storage_len (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (7 samples, 0.10%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (4 samples, 0.06%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (2 samples, 0.03%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (1 samples, 0.01%)agdb::storage::Storage<D>::record (27 samples, 0.38%)agdb::storage::storage_records::StorageRecords::record (25 samples, 0.35%)agdb::storage::storage_records::StorageRecords::is_valid (7 samples, 0.10%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (2 samples, 0.03%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (2 samples, 0.03%)<usize as core::slice::index::SliceIndex<[T]>>::index (2 samples, 0.03%)agdb::storage::Storage<D>::validate_read_size (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (120 samples, 1.67%)agdb::storage::Storage<D>::value_as_bytes_at_size (68 samples, 0.95%)agdb::storage::storage_records::StorageRecord::value_start (3 samples, 0.04%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (135 samples, 1.88%)a..agdb::collections::vec::VecImpl<T,D,Data,E>::validate_index (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::to (148 samples, 2.06%)<..agdb::graph::GraphIndex::as_u64 (9 samples, 0.13%)agdb::graph::GraphIndex::is_edge (3 samples, 0.04%)agdb::graph::GraphEdge<D,Data>::index_to (152 samples, 2.12%)a..agdb::graph::GraphImpl<D,Data>::edge_to (152 samples, 2.12%)a..core::result::Result<T,E>::unwrap_or_default (2 samples, 0.03%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (3 samples, 0.04%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (11 samples, 0.15%)<i64 as agdb::collections::vec::VecValue>::load (33 samples, 0.46%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (31 samples, 0.43%)<i64 as agdb::collections::vec::VecValue>::storage_len (1 samples, 0.01%)agdb::collections::vec::DbVecData<T,D,E>::offset (3 samples, 0.04%)<i64 as agdb::collections::vec::VecValue>::storage_len (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (12 samples, 0.17%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (8 samples, 0.11%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (2 samples, 0.03%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (2 samples, 0.03%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (2 samples, 0.03%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (1 samples, 0.01%)core::ptr::const_ptr::<impl *const T>::add (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (2 samples, 0.03%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (4 samples, 0.06%)core::slice::raw::from_raw_parts (2 samples, 0.03%)core::slice::raw::from_raw_parts::runtime (2 samples, 0.03%)core::intrinsics::is_valid_allocation_size (2 samples, 0.03%)agdb::storage::Storage<D>::record (26 samples, 0.36%)agdb::storage::storage_records::StorageRecords::record (20 samples, 0.28%)agdb::storage::storage_records::StorageRecords::is_valid (4 samples, 0.06%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<usize as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)agdb::storage::Storage<D>::validate_read_size (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (147 samples, 2.05%)<..agdb::storage::Storage<D>::value_as_bytes_at_size (83 samples, 1.16%)agdb::storage::storage_records::StorageRecord::value_start (3 samples, 0.04%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (163 samples, 2.27%)a..agdb::collections::vec::VecImpl<T,D,Data,E>::validate_index (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from (168 samples, 2.34%)<..agdb::graph::GraphIndex::as_u64 (1 samples, 0.01%)agdb::graph::GraphIndex::is_edge (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::is_valid_edge (169 samples, 2.35%)a..<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (6 samples, 0.08%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (8 samples, 0.11%)<i64 as agdb::collections::vec::VecValue>::load (18 samples, 0.25%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (18 samples, 0.25%)core::slice::<impl [T]>::get (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::storage_len (4 samples, 0.06%)agdb::collections::vec::DbVecData<T,D,E>::offset (3 samples, 0.04%)<i64 as agdb::collections::vec::VecValue>::storage_len (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (12 samples, 0.17%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (7 samples, 0.10%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (2 samples, 0.03%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (2 samples, 0.03%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (2 samples, 0.03%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (1 samples, 0.01%)core::ptr::const_ptr::<impl *const T>::add (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (2 samples, 0.03%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (2 samples, 0.03%)core::slice::raw::from_raw_parts (1 samples, 0.01%)core::slice::raw::from_raw_parts::runtime (1 samples, 0.01%)core::intrinsics::is_valid_allocation_size (1 samples, 0.01%)agdb::storage::Storage<D>::record (27 samples, 0.38%)agdb::storage::storage_records::StorageRecords::record (25 samples, 0.35%)agdb::storage::storage_records::StorageRecords::is_valid (3 samples, 0.04%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (2 samples, 0.03%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (2 samples, 0.03%)<usize as core::slice::index::SliceIndex<[T]>>::index (2 samples, 0.03%)agdb::storage::Storage<D>::validate_read_size (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (136 samples, 1.89%)a..<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (122 samples, 1.70%)agdb::storage::Storage<D>::value_as_bytes_at_size (73 samples, 1.02%)agdb::storage::storage_records::StorageRecord::value_start (4 samples, 0.06%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from_meta (147 samples, 2.05%)<..agdb::graph::GraphIndex::as_u64 (6 samples, 0.08%)agdb::graph::GraphIndex::is_edge (3 samples, 0.04%)agdb::graph::GraphImpl<D,Data>::is_removed_index (149 samples, 2.07%)a..<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::validate_edge (359 samples, 5.00%)agdb::..agdb::graph::GraphImpl<D,Data>::is_valid_index (158 samples, 2.20%)a..agdb::graph::GraphIndex::as_u64 (5 samples, 0.07%)agdb::graph::GraphIndex::is_edge (5 samples, 0.07%)<agdb::graph_search::breadth_first_search::BreadthFirstSearch as agdb::graph_search::search_impl::SearchIterator<D>>::expand_edge (529 samples, 7.37%)<agdb::gra..agdb::graph::GraphImpl<D,Data>::edge (362 samples, 5.04%)agdb::..core::result::Result<T,E>::is_err (1 samples, 0.01%)core::result::Result<T,E>::is_ok (1 samples, 0.01%)agdb::collections::vec::DbVecData<T,D,E>::offset (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::node (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::validate_node (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::is_valid_node (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (2 samples, 0.03%)agdb::storage::Storage<D>::value_as_bytes_at_size (1 samples, 0.01%)agdb::graph::GraphNode<D,Data>::edge_iter_from (1 samples, 0.01%)agdb::graph::GraphImpl<D,Data>::first_edge_from (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)agdb::storage::Storage<D>::value_as_bytes_at_size (1 samples, 0.01%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (4 samples, 0.06%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (9 samples, 0.13%)<i64 as agdb::collections::vec::VecValue>::load (26 samples, 0.36%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (26 samples, 0.36%)<T as core::convert::TryInto<U>>::try_into (1 samples, 0.01%)core::array::<impl core::convert::TryFrom<&[T]> for [T: N]>::try_from (1 samples, 0.01%)core::result::Result<T,E>::map (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::storage_len (2 samples, 0.03%)agdb::collections::vec::DbVecData<T,D,E>::offset (3 samples, 0.04%)<i64 as agdb::collections::vec::VecValue>::storage_len (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (10 samples, 0.14%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (4 samples, 0.06%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (2 samples, 0.03%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (2 samples, 0.03%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (2 samples, 0.03%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (2 samples, 0.03%)core::ptr::const_ptr::<impl *const T>::add (2 samples, 0.03%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (5 samples, 0.07%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (2 samples, 0.03%)agdb::storage::Storage<D>::record (19 samples, 0.26%)agdb::storage::storage_records::StorageRecords::record (16 samples, 0.22%)agdb::storage::storage_records::StorageRecords::is_valid (2 samples, 0.03%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<usize as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)agdb::storage::Storage<D>::validate_read_size (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (142 samples, 1.98%)a..<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (130 samples, 1.81%)<..agdb::storage::Storage<D>::value_as_bytes_at_size (67 samples, 0.93%)agdb::storage::storage_records::StorageRecord::value_start (4 samples, 0.06%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from_meta (151 samples, 2.10%)<..agdb::graph::GraphIndex::as_u64 (5 samples, 0.07%)agdb::graph::GraphIndex::is_edge (1 samples, 0.01%)<agdb::graph::GraphIndex as core::convert::From<i64>>::from (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::next_edge_from (159 samples, 2.21%)a..<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (2 samples, 0.03%)<agdb::graph::GraphEdgeIterator<D,Data> as core::iter::traits::iterator::Iterator>::next (185 samples, 2.58%)<a..agdb::graph::GraphIndex::is_valid (1 samples, 0.01%)<core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::next (187 samples, 2.60%)<c..core::option::Option<T>::map (1 samples, 0.01%)alloc::vec::Vec<T,A>::reserve (16 samples, 0.22%)alloc::raw_vec::RawVec<T,A>::reserve (16 samples, 0.22%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (16 samples, 0.22%)alloc::raw_vec::RawVec<T,A>::grow_amortized (16 samples, 0.22%)alloc::raw_vec::finish_grow (16 samples, 0.22%)<alloc::alloc::Global as core::alloc::Allocator>::grow (16 samples, 0.22%)alloc::alloc::Global::grow_impl (16 samples, 0.22%)alloc::alloc::realloc (16 samples, 0.22%)realloc (16 samples, 0.22%)[libc.so.6] (14 samples, 0.19%)[libc.so.6] (12 samples, 0.17%)[libc.so.6] (2 samples, 0.03%)<agdb::graph_search::breadth_first_search::BreadthFirstSearch as agdb::graph_search::search_impl::SearchIterator<D>>::expand_node (212 samples, 2.95%)<ag..core::iter::traits::iterator::Iterator::collect (209 samples, 2.91%)co..<alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter (209 samples, 2.91%)<a..<alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter (209 samples, 2.91%)<a..<alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter (209 samples, 2.91%)<a..<alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend (209 samples, 2.91%)<a..alloc::vec::Vec<T,A>::extend_desugared (209 samples, 2.91%)al..core::ptr::write (1 samples, 0.01%)agdb::graph::GraphIndex::is_node (1 samples, 0.01%)<alloc::vec::into_iter::IntoIter<T,A> as core::iter::traits::iterator::Iterator>::next (4 samples, 0.06%)core::ptr::read (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::current_memory (1 samples, 0.01%)__rdl_realloc (2 samples, 0.03%)std::sys::unix::alloc::<impl core::alloc::global::GlobalAlloc for std::alloc::System>::realloc (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::grow (8 samples, 0.11%)alloc::alloc::Global::grow_impl (8 samples, 0.11%)alloc::alloc::realloc (8 samples, 0.11%)realloc (6 samples, 0.08%)[libc.so.6] (5 samples, 0.07%)[libc.so.6] (4 samples, 0.06%)core::result::Result<T,E>::map_err (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (11 samples, 0.15%)alloc::raw_vec::RawVec<T,A>::grow_amortized (11 samples, 0.15%)alloc::raw_vec::finish_grow (10 samples, 0.14%)malloc (1 samples, 0.01%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::add_edges_to_stack (22 samples, 0.31%)alloc::vec::Vec<T,A>::push (18 samples, 0.25%)core::ptr::write (4 samples, 0.06%)__rust_realloc (1 samples, 0.01%)alloc::raw_vec::finish_grow (12 samples, 0.17%)<alloc::alloc::Global as core::alloc::Allocator>::grow (12 samples, 0.17%)alloc::alloc::Global::grow_impl (12 samples, 0.17%)alloc::alloc::realloc (12 samples, 0.17%)realloc (11 samples, 0.15%)[libc.so.6] (10 samples, 0.14%)[libc.so.6] (10 samples, 0.14%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (14 samples, 0.19%)alloc::raw_vec::RawVec<T,A>::grow_amortized (14 samples, 0.19%)core::num::<impl usize>::checked_add (1 samples, 0.01%)core::num::<impl usize>::overflowing_add (1 samples, 0.01%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::expand_index (817 samples, 11.38%)agdb::graph_searc..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::add_index_to_stack (21 samples, 0.29%)alloc::vec::Vec<T,A>::push (21 samples, 0.29%)core::ptr::write (4 samples, 0.06%)<alloc::alloc::Global as core::alloc::Allocator>::grow (4 samples, 0.06%)alloc::alloc::Global::grow_impl (4 samples, 0.06%)alloc::alloc::realloc (4 samples, 0.06%)realloc (4 samples, 0.06%)[libc.so.6] (4 samples, 0.06%)[libc.so.6] (4 samples, 0.06%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_unvisited_index (991 samples, 13.80%)agdb::graph_search::s..alloc::vec::Vec<T,A>::push (7 samples, 0.10%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (6 samples, 0.08%)alloc::raw_vec::RawVec<T,A>::grow_amortized (6 samples, 0.08%)alloc::raw_vec::finish_grow (6 samples, 0.08%)malloc (1 samples, 0.01%)alloc::vec::Vec<T,A>::len (1 samples, 0.01%)agdb::collections::bit_set::BitSet::insert (30 samples, 0.42%)alloc::vec::Vec<T,A>::resize (1 samples, 0.01%)alloc::vec::Vec<T,A>::extend_with (1 samples, 0.01%)alloc::vec::Vec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::grow_amortized (1 samples, 0.01%)alloc::raw_vec::finish_grow (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::grow (1 samples, 0.01%)alloc::alloc::Global::grow_impl (1 samples, 0.01%)alloc::alloc::realloc (1 samples, 0.01%)realloc (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb::collections::bit_set::BitSet::value (19 samples, 0.26%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_index (1,056 samples, 14.71%)agdb::graph_search::se..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::visit_index (65 samples, 0.91%)agdb::graph::GraphIndex::as_u64 (12 samples, 0.17%)agdb::graph::GraphIndex::is_edge (5 samples, 0.07%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::search (1,067 samples, 14.86%)agdb::graph_search::sea..agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_stack (1,067 samples, 14.86%)agdb::graph_search::sea..core::ptr::drop_in_place<agdb::graph_search::breadth_first_search::BreadthFirstSearch> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::into_iter::IntoIter<agdb::graph_search::search_impl::SearchIndex>> (1 samples, 0.01%)<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)core::ptr::drop_in_place<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<agdb::graph_search::search_impl::SearchIndex,alloc::alloc::Global>> (1 samples, 0.01%)<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<agdb::graph_search::search_impl::SearchIndex>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb::graph_search::GraphSearch<D,Data>::breadth_first_search (1,072 samples, 14.93%)agdb::graph_search::Gra..core::ptr::drop_in_place<agdb::graph_search::search_impl::SearchImpl<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped,agdb::graph::GraphDataStorage<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped>,agdb::graph_search::breadth_first_search::BreadthFirstSearch>> (1 samples, 0.01%)core::ptr::drop_in_place<agdb::collections::bit_set::BitSet> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__rust_dealloc (1 samples, 0.01%)agdb::query::search_query::SearchQuery::search (1,093 samples, 15.22%)agdb::query::search_que..agdb::db::DbImpl<Store>::search_from (1,073 samples, 14.94%)agdb::db::DbImpl<Store>..core::ptr::drop_in_place<alloc::vec::Vec<agdb::graph::GraphIndex>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<agdb::graph::GraphIndex>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)__rust_alloc (1 samples, 0.01%)alloc::vec::Vec<T,A>::reserve (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::reserve (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::grow_amortized (2 samples, 0.03%)alloc::raw_vec::finish_grow (2 samples, 0.03%)malloc (1 samples, 0.01%)agdb::db::DbImpl<Store>::exec (2,731 samples, 38.03%)agdb::db::DbImpl<Store>::execagdb::db::DbImpl<Store>::transaction (2,731 samples, 38.03%)agdb::db::DbImpl<Store>::transactionagdb::db::DbImpl<Store>::exec::{{closure}} (2,731 samples, 38.03%)agdb::db::DbImpl<Store>::exec::{{closure}}agdb::transaction::Transaction<Store>::exec (2,731 samples, 38.03%)agdb::transaction::Transaction<Store>::exec<agdb::query::select_query::SelectQuery as agdb::query::Query>::process (2,731 samples, 38.03%)<agdb::query::select_query::SelectQuery as agdb::query::Query>..core::ptr::drop_in_place<alloc::vec::into_iter::IntoIter<agdb::db::db_id::DbId>> (2 samples, 0.03%)<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)core::ptr::drop_in_place<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<agdb::db::db_id::DbId,alloc::alloc::Global>> (2 samples, 0.03%)<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<agdb::db::db_id::DbId>> (2 samples, 0.03%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (2 samples, 0.03%)alloc::alloc::dealloc (2 samples, 0.03%)__libc_free (2 samples, 0.03%)agdb::query_builder::QueryBuilder::insert (2 samples, 0.03%)agdb::query_builder::remove_ids::RemoveIds::query (2 samples, 0.03%)agdb::query_builder::search::Search::from (5 samples, 0.07%)<T as core::convert::Into<U>>::into (5 samples, 0.07%)<agdb::query::query_id::QueryId as core::convert::From<&str>>::from (5 samples, 0.07%)<str as alloc::string::ToString>::to_string (4 samples, 0.06%)<alloc::string::String as core::convert::From<&str>>::from (4 samples, 0.06%)alloc::str::<impl alloc::borrow::ToOwned for str>::to_owned (4 samples, 0.06%)alloc::slice::<impl alloc::borrow::ToOwned for [T]>::to_owned (4 samples, 0.06%)alloc::slice::<impl [T]>::to_vec (4 samples, 0.06%)alloc::slice::<impl [T]>::to_vec_in (4 samples, 0.06%)alloc::slice::hack::to_vec (4 samples, 0.06%)<T as alloc::slice::hack::ConvertVec>::to_vec (4 samples, 0.06%)alloc::vec::Vec<T,A>::with_capacity_in (4 samples, 0.06%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (4 samples, 0.06%)alloc::raw_vec::RawVec<T,A>::allocate_in (4 samples, 0.06%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (4 samples, 0.06%)alloc::alloc::Global::alloc_impl (4 samples, 0.06%)alloc::alloc::alloc (4 samples, 0.06%)malloc (4 samples, 0.06%)agdb::query_builder::search::SearchFrom::where_ (2 samples, 0.03%)agdb::query_builder::where_::Where::new (1 samples, 0.01%)alloc::alloc::exchange_malloc (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc (1 samples, 0.01%)malloc (1 samples, 0.01%)agdb::query_builder::where_::WhereLogicOperator::query (2 samples, 0.03%)core::ptr::drop_in_place<alloc::vec::Vec<alloc::vec::Vec<agdb::query::query_condition::QueryCondition>>> (2 samples, 0.03%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<alloc::vec::Vec<agdb::query::query_condition::QueryCondition>>> (2 samples, 0.03%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (2 samples, 0.03%)alloc::alloc::dealloc (2 samples, 0.03%)__libc_free (2 samples, 0.03%)[libc.so.6] (1 samples, 0.01%)__libc_free (9 samples, 0.13%)[libc.so.6] (6 samples, 0.08%)__rdl_dealloc (1 samples, 0.01%)std::sys::unix::alloc::<impl core::alloc::global::GlobalAlloc for std::alloc::System>::dealloc (1 samples, 0.01%)__rust_dealloc (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop (12 samples, 0.17%)core::ptr::drop_in_place<[agdb::db::db_key_value::DbKeyValue]> (12 samples, 0.17%)core::ptr::drop_in_place<agdb::db::db_key_value::DbKeyValue> (12 samples, 0.17%)core::ptr::drop_in_place<agdb::db::db_value::DbValue> (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop (17 samples, 0.24%)core::ptr::drop_in_place<[agdb::db::db_element::DbElement]> (17 samples, 0.24%)core::ptr::drop_in_place<agdb::db::db_element::DbElement> (16 samples, 0.22%)core::ptr::drop_in_place<alloc::vec::Vec<agdb::db::db_key_value::DbKeyValue>> (16 samples, 0.22%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<agdb::db::db_key_value::DbKeyValue>> (4 samples, 0.06%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (4 samples, 0.06%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (4 samples, 0.06%)alloc::alloc::dealloc (4 samples, 0.06%)__libc_free (4 samples, 0.06%)[libc.so.6] (4 samples, 0.06%)core::ptr::drop_in_place<agdb::query::query_result::QueryResult> (18 samples, 0.25%)core::ptr::drop_in_place<alloc::vec::Vec<agdb::db::db_element::DbElement>> (18 samples, 0.25%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<agdb::db::db_element::DbElement>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)core::ptr::drop_in_place<agdb::query::select_query::SelectQuery> (2 samples, 0.03%)core::ptr::drop_in_place<agdb::query::query_ids::QueryIds> (1 samples, 0.01%)std::sync::rwlock::RwLockReadGuard<T>::new (1 samples, 0.01%)std::sync::poison::Flag::borrow (1 samples, 0.01%)agdb_benchmarks::readers::Reader<S>::read_posts::{{closure}} (2,770 samples, 38.57%)agdb_benchmarks::readers::Reader<S>::read_posts::{{closure}}std::sync::rwlock::RwLock<T>::read (6 samples, 0.08%)std::sys::unix::locks::futex_rwlock::RwLock::read (5 samples, 0.07%)std::sys::unix::locks::futex_rwlock::RwLock::read_contended (5 samples, 0.07%)std::sys::unix::futex::futex_wait (3 samples, 0.04%)syscall (2 samples, 0.03%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (4 samples, 0.06%)clock_gettime (4 samples, 0.06%)__vdso_clock_gettime (4 samples, 0.06%)agdb_benchmarks::utilities::measured (2,782 samples, 38.74%)agdb_benchmarks::utilities::measuredstd::time::Instant::elapsed (6 samples, 0.08%)std::time::Instant::now (6 samples, 0.08%)std::sys::unix::time::inner::Instant::now (6 samples, 0.08%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (6 samples, 0.08%)clock_gettime (5 samples, 0.07%)__vdso_clock_gettime (5 samples, 0.07%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::grow_amortized (1 samples, 0.01%)alloc::raw_vec::finish_grow (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::grow (1 samples, 0.01%)alloc::alloc::Global::grow_impl (1 samples, 0.01%)alloc::alloc::realloc (1 samples, 0.01%)realloc (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb_benchmarks::readers::Reader<S>::read_posts (2,785 samples, 38.78%)agdb_benchmarks::readers::Reader<S>::read_postsalloc::vec::Vec<T,A>::push (2 samples, 0.03%)core::ptr::write (1 samples, 0.01%)agdb_benchmarks::readers::start_post_readers::{{closure}} (2,792 samples, 38.88%)agdb_benchmarks::readers::start_post_readers::{{closure}}tokio::time::sleep::sleep (4 samples, 0.06%)tokio::time::instant::Instant::now (4 samples, 0.06%)tokio::time::instant::variant::now (4 samples, 0.06%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (4 samples, 0.06%)clock_gettime (4 samples, 0.06%)__vdso_clock_gettime (4 samples, 0.06%)<tokio::time::sleep::Sleep as core::future::future::Future>::poll (1 samples, 0.01%)tokio::time::sleep::Sleep::poll_elapsed (1 samples, 0.01%)tokio::runtime::time::entry::TimerEntry::poll_elapsed (1 samples, 0.01%)tokio::runtime::time::entry::TimerEntry::reset (1 samples, 0.01%)tokio::runtime::time::source::TimeSource::deadline_to_tick (1 samples, 0.01%)<tokio::time::instant::Instant as core::ops::arith::Add<core::time::Duration>>::add (1 samples, 0.01%)<std::time::Instant as core::ops::arith::Add<core::time::Duration>>::add (1 samples, 0.01%)std::time::Instant::checked_add (1 samples, 0.01%)std::sys::unix::time::inner::Instant::checked_add_duration (1 samples, 0.01%)std::sys::unix::time::Timespec::checked_add_duration (1 samples, 0.01%)agdb::transaction_mut::TransactionMut<Store>::commit (2 samples, 0.03%)agdb::db::DbImpl<Store>::commit (2 samples, 0.03%)alloc::vec::Vec<T,A>::clear (2 samples, 0.03%)core::ptr::drop_in_place<[agdb::command::Command]> (2 samples, 0.03%)core::ptr::drop_in_place<agdb::command::Command> (2 samples, 0.03%)core::ptr::drop_in_place<agdb::db::db_key_value::DbKeyValue> (1 samples, 0.01%)core::ptr::drop_in_place<agdb::db::db_value::DbValue> (1 samples, 0.01%)agdb::query_builder::insert::Insert::nodes (1 samples, 0.01%)agdb::query_builder::insert_edge::InsertEdgesFrom::to (1 samples, 0.01%)core::ptr::drop_in_place<agdb::query::query_ids::QueryIds> (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)agdb::storage::file_storage::FileStorage::read_impl (6 samples, 0.08%)std::io::Read::read_exact (4 samples, 0.06%)std::io::default_read_exact (4 samples, 0.06%)<&std::fs::File as std::io::Read>::read (4 samples, 0.06%)std::sys::unix::fs::File::read (4 samples, 0.06%)std::sys::unix::fd::FileDesc::read (4 samples, 0.06%)read (4 samples, 0.06%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (2 samples, 0.03%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (2 samples, 0.03%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (2 samples, 0.03%)alloc::alloc::dealloc (2 samples, 0.03%)__libc_free (2 samples, 0.03%)agdb::storage::write_ahead_log::WriteAheadLog::insert (11 samples, 0.15%)std::io::Write::write_all (7 samples, 0.10%)std::os::unix::net::datagram::UnixDatagram::send (7 samples, 0.10%)std::sys::unix::net::Socket::write (7 samples, 0.10%)std::sys::unix::fd::FileDesc::write (7 samples, 0.10%)__write (7 samples, 0.10%)[libc.so.6] (1 samples, 0.01%)alloc::vec::from_elem (1 samples, 0.01%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc_zeroed (1 samples, 0.01%)__libc_calloc (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (20 samples, 0.28%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (20 samples, 0.28%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (20 samples, 0.28%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (2 samples, 0.03%)std::sys::unix::net::Socket::write (2 samples, 0.03%)std::sys::unix::fd::FileDesc::write (2 samples, 0.03%)__write (2 samples, 0.03%)[libc.so.6] (1 samples, 0.01%)agdb::storage::Storage<D>::insert_at (22 samples, 0.31%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (2 samples, 0.03%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (2 samples, 0.03%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (2 samples, 0.03%)alloc::alloc::dealloc (2 samples, 0.03%)__libc_free (2 samples, 0.03%)[libc.so.6] (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)<&std::fs::File as std::io::Seek>::seek (3 samples, 0.04%)std::sys::unix::fs::File::seek (3 samples, 0.04%)lseek64 (3 samples, 0.04%)agdb::storage::file_storage::FileStorage::read_impl (4 samples, 0.06%)std::io::Read::read_exact (1 samples, 0.01%)std::io::default_read_exact (1 samples, 0.01%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::get_free_index (40 samples, 0.56%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::grow (40 samples, 0.56%)agdb::collections::vec::VecImpl<T,D,Data,E>::push (40 samples, 0.56%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::resize (39 samples, 0.54%)agdb::storage::Storage<D>::insert_bytes_at (17 samples, 0.24%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (17 samples, 0.24%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (17 samples, 0.24%)agdb::storage::write_ahead_log::WriteAheadLog::insert (11 samples, 0.15%)std::io::Write::write_all (9 samples, 0.13%)std::os::unix::net::datagram::UnixDatagram::send (9 samples, 0.13%)std::sys::unix::net::Socket::write (8 samples, 0.11%)std::sys::unix::fd::FileDesc::write (8 samples, 0.11%)__write (8 samples, 0.11%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_from (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)std::io::Write::write_all (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<core::ops::range::RangeFrom<usize> as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)std::io::Read::read_exact (1 samples, 0.01%)std::io::default_read_exact (1 samples, 0.01%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_to (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (2 samples, 0.03%)agdb::storage::Storage<D>::insert_bytes_at (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (2 samples, 0.03%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (2 samples, 0.03%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_from (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)std::io::Read::read_exact (1 samples, 0.01%)std::io::default_read_exact (1 samples, 0.01%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (6 samples, 0.08%)std::io::Write::write_all (5 samples, 0.07%)std::os::unix::net::datagram::UnixDatagram::send (5 samples, 0.07%)std::sys::unix::net::Socket::write (5 samples, 0.07%)std::sys::unix::fd::FileDesc::write (5 samples, 0.07%)__write (5 samples, 0.07%)agdb::graph::GraphImpl<D,Data>::update_from_edge (13 samples, 0.18%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_from_meta (12 samples, 0.17%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (12 samples, 0.17%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (12 samples, 0.17%)agdb::storage::Storage<D>::insert_bytes_at (12 samples, 0.17%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (12 samples, 0.17%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (12 samples, 0.17%)std::io::Write::write_all (5 samples, 0.07%)std::os::unix::net::datagram::UnixDatagram::send (5 samples, 0.07%)std::sys::unix::net::Socket::write (5 samples, 0.07%)std::sys::unix::fd::FileDesc::write (5 samples, 0.07%)__write (5 samples, 0.07%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_to (3 samples, 0.04%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (2 samples, 0.03%)agdb::storage::Storage<D>::insert_bytes_at (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)std::io::Read::read_exact (1 samples, 0.01%)std::io::default_read_exact (1 samples, 0.01%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)core::slice::<impl [T]>::is_empty (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (3 samples, 0.04%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)agdb::db::DbImpl<Store>::insert_edge (65 samples, 0.91%)agdb::graph::GraphImpl<D,Data>::insert_edge (65 samples, 0.91%)agdb::graph::GraphImpl<D,Data>::set_edge (25 samples, 0.35%)agdb::graph::GraphImpl<D,Data>::update_to_edge (9 samples, 0.13%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_to_meta (6 samples, 0.08%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (6 samples, 0.08%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (6 samples, 0.08%)agdb::storage::Storage<D>::insert_bytes_at (6 samples, 0.08%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (6 samples, 0.08%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (6 samples, 0.08%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)std::io::Read::read_exact (1 samples, 0.01%)std::io::default_read_exact (1 samples, 0.01%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_key (3 samples, 0.04%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (3 samples, 0.04%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (3 samples, 0.04%)agdb::storage::Storage<D>::insert_bytes_at (3 samples, 0.04%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (3 samples, 0.04%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (3 samples, 0.04%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<f64 as agdb::utilities::serialize::Serialize>::serialize (1 samples, 0.01%)alloc::slice::<impl [T]>::to_vec (1 samples, 0.01%)alloc::slice::<impl [T]>::to_vec_in (1 samples, 0.01%)alloc::slice::hack::to_vec (1 samples, 0.01%)<T as alloc::slice::hack::ConvertVec>::to_vec (1 samples, 0.01%)alloc::vec::Vec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc (1 samples, 0.01%)malloc (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_len (2 samples, 0.03%)agdb::storage::Storage<D>::insert_at (2 samples, 0.03%)agdb::storage::Storage<D>::insert_bytes_at (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)alloc::vec::from_elem (1 samples, 0.01%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc_zeroed (1 samples, 0.01%)__libc_calloc (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_state (3 samples, 0.04%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (3 samples, 0.04%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (3 samples, 0.04%)agdb::storage::Storage<D>::insert_bytes_at (3 samples, 0.04%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (3 samples, 0.04%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (3 samples, 0.04%)agdb::storage::write_ahead_log::WriteAheadLog::insert (2 samples, 0.03%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (2 samples, 0.03%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::do_insert (10 samples, 0.14%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_value (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (2 samples, 0.03%)alloc::slice::<impl [T]>::to_vec (1 samples, 0.01%)alloc::slice::<impl [T]>::to_vec_in (1 samples, 0.01%)alloc::slice::hack::to_vec (1 samples, 0.01%)<T as alloc::slice::hack::ConvertVec>::to_vec (1 samples, 0.01%)core::ptr::const_ptr::<impl *const T>::copy_to_nonoverlapping (1 samples, 0.01%)core::intrinsics::copy_nonoverlapping (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::state (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (5 samples, 0.07%)std::sys::unix::fs::File::seek (5 samples, 0.07%)lseek64 (4 samples, 0.06%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (4 samples, 0.06%)std::io::Read::read_exact (3 samples, 0.04%)std::io::default_read_exact (3 samples, 0.04%)<&std::fs::File as std::io::Read>::read (3 samples, 0.04%)std::sys::unix::fs::File::read (2 samples, 0.03%)std::sys::unix::fd::FileDesc::read (2 samples, 0.03%)read (2 samples, 0.03%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (8 samples, 0.11%)std::io::Write::write_all (5 samples, 0.07%)std::os::unix::net::datagram::UnixDatagram::send (5 samples, 0.07%)std::sys::unix::net::Socket::write (5 samples, 0.07%)std::sys::unix::fd::FileDesc::write (5 samples, 0.07%)__write (5 samples, 0.07%)[libc.so.6] (1 samples, 0.01%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::rehash (22 samples, 0.31%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::grow (22 samples, 0.31%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::resize (22 samples, 0.31%)agdb::collections::vec::VecImpl<T,D,Data,E>::resize (22 samples, 0.31%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::resize (22 samples, 0.31%)agdb::storage::Storage<D>::insert_bytes_at (22 samples, 0.31%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (22 samples, 0.31%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (21 samples, 0.29%)std::io::Write::write_all (4 samples, 0.06%)std::os::unix::net::datagram::UnixDatagram::send (4 samples, 0.06%)std::sys::unix::net::Socket::write (4 samples, 0.06%)std::sys::unix::fd::FileDesc::write (4 samples, 0.06%)__write (4 samples, 0.06%)[libc.so.6] (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)agdb::storage::file_storage::FileStorage::read_impl (9 samples, 0.13%)std::io::Read::read_exact (7 samples, 0.10%)std::io::default_read_exact (7 samples, 0.10%)<&std::fs::File as std::io::Read>::read (7 samples, 0.10%)std::sys::unix::fs::File::read (7 samples, 0.10%)std::sys::unix::fd::FileDesc::read (7 samples, 0.10%)read (6 samples, 0.08%)agdb::storage::write_ahead_log::WriteAheadLog::insert (10 samples, 0.14%)std::io::Write::write_all (10 samples, 0.14%)std::os::unix::net::datagram::UnixDatagram::send (10 samples, 0.14%)std::sys::unix::net::Socket::write (10 samples, 0.14%)std::sys::unix::fd::FileDesc::write (10 samples, 0.14%)__write (10 samples, 0.14%)[libc.so.6] (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (21 samples, 0.29%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (21 samples, 0.29%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (21 samples, 0.29%)alloc::vec::from_elem (1 samples, 0.01%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc_zeroed (1 samples, 0.01%)__rdl_alloc_zeroed (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (6 samples, 0.08%)std::sys::unix::fs::File::seek (6 samples, 0.08%)lseek64 (6 samples, 0.08%)<&std::fs::File as std::io::Seek>::seek (3 samples, 0.04%)std::sys::unix::fs::File::seek (3 samples, 0.04%)lseek64 (3 samples, 0.04%)agdb::storage::file_storage::FileStorage::read_impl (6 samples, 0.08%)std::io::Read::read_exact (3 samples, 0.04%)std::io::default_read_exact (3 samples, 0.04%)<&std::fs::File as std::io::Read>::read (3 samples, 0.04%)std::sys::unix::fs::File::read (3 samples, 0.04%)std::sys::unix::fd::FileDesc::read (3 samples, 0.04%)read (3 samples, 0.04%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)<u64 as agdb::utilities::serialize::Serialize>::serialize (1 samples, 0.01%)alloc::slice::<impl [T]>::to_vec (1 samples, 0.01%)alloc::slice::<impl [T]>::to_vec_in (1 samples, 0.01%)alloc::slice::hack::to_vec (1 samples, 0.01%)<T as alloc::slice::hack::ConvertVec>::to_vec (1 samples, 0.01%)alloc::vec::Vec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc (1 samples, 0.01%)malloc (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (12 samples, 0.17%)std::io::Write::write_all (8 samples, 0.11%)std::os::unix::net::datagram::UnixDatagram::send (8 samples, 0.11%)std::sys::unix::net::Socket::write (8 samples, 0.11%)std::sys::unix::fd::FileDesc::write (8 samples, 0.11%)__write (8 samples, 0.11%)[libc.so.6] (2 samples, 0.03%)agdb::storage::Storage<D>::erase_bytes (26 samples, 0.36%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (26 samples, 0.36%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (26 samples, 0.36%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)agdb::storage::file_storage::FileStorage::read_impl (5 samples, 0.07%)std::io::Read::read_exact (3 samples, 0.04%)std::io::default_read_exact (3 samples, 0.04%)<&std::fs::File as std::io::Read>::read (2 samples, 0.03%)std::sys::unix::fs::File::read (2 samples, 0.03%)std::sys::unix::fd::FileDesc::read (2 samples, 0.03%)read (2 samples, 0.03%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (3 samples, 0.04%)std::sys::unix::fs::File::seek (3 samples, 0.04%)lseek64 (3 samples, 0.04%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (13 samples, 0.18%)std::io::Write::write_all (8 samples, 0.11%)std::os::unix::net::datagram::UnixDatagram::send (8 samples, 0.11%)std::sys::unix::net::Socket::write (8 samples, 0.11%)std::sys::unix::fd::FileDesc::write (8 samples, 0.11%)__write (7 samples, 0.10%)[libc.so.6] (2 samples, 0.03%)<agdb::query::insert_edges_query::InsertEdgesQuery as agdb::query::QueryMut>::process (169 samples, 2.35%)<..agdb::query::insert_edges_query::InsertEdgesQuery::many_to_many_each (169 samples, 2.35%)a..agdb::db::DbImpl<Store>::insert_key_value (104 samples, 1.45%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::insert (104 samples, 1.45%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::free_index (94 samples, 1.31%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::rehash_values (71 samples, 0.99%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::rehash_value (71 samples, 0.99%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::rehash_valid (71 samples, 0.99%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::swap (70 samples, 0.97%)agdb::collections::vec::VecImpl<T,D,Data,E>::swap (70 samples, 0.97%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::swap (70 samples, 0.97%)agdb::storage::Storage<D>::move_at (49 samples, 0.68%)agdb::storage::Storage<D>::insert_bytes_at (22 samples, 0.31%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (22 samples, 0.31%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (22 samples, 0.31%)alloc::vec::from_elem (2 samples, 0.03%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::allocate_in (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (2 samples, 0.03%)alloc::alloc::Global::alloc_impl (2 samples, 0.03%)alloc::alloc::alloc_zeroed (2 samples, 0.03%)__libc_calloc (2 samples, 0.03%)[libc.so.6] (2 samples, 0.03%)<agdb::db::db_key_value::DbKeyValue as core::clone::Clone>::clone (1 samples, 0.01%)<agdb::db::db_value::DbValue as core::clone::Clone>::clone (1 samples, 0.01%)<alloc::string::String as core::clone::Clone>::clone (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_key (3 samples, 0.04%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (3 samples, 0.04%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (3 samples, 0.04%)agdb::storage::Storage<D>::insert_bytes_at (3 samples, 0.04%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (3 samples, 0.04%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (3 samples, 0.04%)agdb::storage::write_ahead_log::WriteAheadLog::insert (2 samples, 0.03%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (2 samples, 0.03%)std::sys::unix::net::Socket::write (2 samples, 0.03%)std::sys::unix::fd::FileDesc::write (2 samples, 0.03%)__write (2 samples, 0.03%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_state (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (2 samples, 0.03%)agdb::storage::Storage<D>::insert_bytes_at (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (2 samples, 0.03%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (2 samples, 0.03%)agdb::storage::write_ahead_log::WriteAheadLog::insert (2 samples, 0.03%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)<&std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)agdb::storage::Storage<D>::append (6 samples, 0.08%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (6 samples, 0.08%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (5 samples, 0.07%)agdb::storage::write_ahead_log::WriteAheadLog::insert (2 samples, 0.03%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)<agdb::db::db_key_value::DbKeyValue as agdb::collections::vec::VecValue>::store (8 samples, 0.11%)agdb::db::db_value::DbValue::store_db_value (7 samples, 0.10%)agdb::storage::Storage<D>::insert (7 samples, 0.10%)agdb::storage::Storage<D>::insert_bytes (7 samples, 0.10%)agdb::storage::Storage<D>::write_record (1 samples, 0.01%)alloc::vec::Vec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::grow_amortized (1 samples, 0.01%)alloc::raw_vec::finish_grow (1 samples, 0.01%)malloc (1 samples, 0.01%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::do_insert (14 samples, 0.19%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_value (9 samples, 0.13%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (9 samples, 0.13%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (9 samples, 0.13%)agdb::storage::Storage<D>::insert_bytes_at (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)agdb::collections::vec::DbVecData<T,D,E>::offset (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::state (4 samples, 0.06%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (4 samples, 0.06%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (4 samples, 0.06%)agdb::storage::Storage<D>::value_as_bytes_at_size (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (1 samples, 0.01%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (1 samples, 0.01%)core::ptr::const_ptr::<impl *const T>::add (1 samples, 0.01%)agdb::db::DbImpl<Store>::insert_key_value (21 samples, 0.29%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::insert (19 samples, 0.26%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::free_index (5 samples, 0.07%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)std::io::Read::read_exact (2 samples, 0.03%)std::io::default_read_exact (2 samples, 0.03%)<&std::fs::File as std::io::Read>::read (2 samples, 0.03%)std::sys::unix::fs::File::read (2 samples, 0.03%)std::sys::unix::fd::FileDesc::read (2 samples, 0.03%)read (2 samples, 0.03%)[libc.so.6] (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_node_count (4 samples, 0.06%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (4 samples, 0.06%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (4 samples, 0.06%)agdb::storage::Storage<D>::insert_bytes_at (4 samples, 0.06%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (4 samples, 0.06%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (4 samples, 0.06%)agdb::storage::write_ahead_log::WriteAheadLog::insert (2 samples, 0.03%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (2 samples, 0.03%)std::sys::unix::net::Socket::write (2 samples, 0.03%)std::sys::unix::fd::FileDesc::write (2 samples, 0.03%)__write (2 samples, 0.03%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)std::io::Read::read_exact (1 samples, 0.01%)std::io::default_read_exact (1 samples, 0.01%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (7 samples, 0.10%)std::io::Write::write_all (5 samples, 0.07%)std::os::unix::net::datagram::UnixDatagram::send (5 samples, 0.07%)std::sys::unix::net::Socket::write (5 samples, 0.07%)std::sys::unix::fd::FileDesc::write (5 samples, 0.07%)__write (5 samples, 0.07%)[libc.so.6] (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (11 samples, 0.15%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (11 samples, 0.15%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (11 samples, 0.15%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (2 samples, 0.03%)std::sys::unix::net::Socket::write (2 samples, 0.03%)std::sys::unix::fd::FileDesc::write (2 samples, 0.03%)__write (2 samples, 0.03%)agdb::storage::Storage<D>::insert_at (12 samples, 0.17%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)__libc_free (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)core::slice::<impl [T]>::is_empty (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (6 samples, 0.08%)std::io::Write::write_all (4 samples, 0.06%)std::os::unix::net::datagram::UnixDatagram::send (3 samples, 0.04%)std::sys::unix::net::Socket::write (3 samples, 0.04%)std::sys::unix::fd::FileDesc::write (3 samples, 0.04%)__write (3 samples, 0.04%)agdb::db::DbImpl<Store>::insert_node (30 samples, 0.42%)agdb::graph::GraphImpl<D,Data>::insert_node (30 samples, 0.42%)agdb::graph::GraphImpl<D,Data>::get_free_index (25 samples, 0.35%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::grow (25 samples, 0.35%)agdb::collections::vec::VecImpl<T,D,Data,E>::push (25 samples, 0.35%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::resize (24 samples, 0.33%)agdb::storage::Storage<D>::insert_bytes_at (12 samples, 0.17%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (12 samples, 0.17%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (12 samples, 0.17%)std::io::Write::write_all (3 samples, 0.04%)std::os::unix::net::datagram::UnixDatagram::send (3 samples, 0.04%)std::sys::unix::net::Socket::write (3 samples, 0.04%)std::sys::unix::fd::FileDesc::write (3 samples, 0.04%)__write (3 samples, 0.04%)agdb::transaction_mut::TransactionMut<Store>::exec_mut (222 samples, 3.09%)agd..<agdb::query::insert_nodes_query::InsertNodesQuery as agdb::query::QueryMut>::process (53 samples, 0.74%)core::iter::traits::iterator::Iterator::collect (1 samples, 0.01%)<alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter (1 samples, 0.01%)alloc::vec::in_place_collect::<impl alloc::vec::spec_from_iter::SpecFromIter<T,I> for alloc::vec::Vec<T>>::from_iter (1 samples, 0.01%)<alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter (1 samples, 0.01%)alloc::vec::Vec<T>::with_capacity (1 samples, 0.01%)alloc::vec::Vec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc (1 samples, 0.01%)malloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)core::ptr::drop_in_place<agdb::query::insert_nodes_query::InsertNodesQuery> (2 samples, 0.03%)core::ptr::drop_in_place<agdb::query::query_values::QueryValues> (2 samples, 0.03%)core::ptr::drop_in_place<alloc::vec::Vec<alloc::vec::Vec<agdb::db::db_key_value::DbKeyValue>>> (2 samples, 0.03%)<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)core::ptr::drop_in_place<[alloc::vec::Vec<agdb::db::db_key_value::DbKeyValue>]> (2 samples, 0.03%)core::ptr::drop_in_place<alloc::vec::Vec<agdb::db::db_key_value::DbKeyValue>> (2 samples, 0.03%)<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)core::ptr::drop_in_place<[agdb::db::db_key_value::DbKeyValue]> (2 samples, 0.03%)core::ptr::drop_in_place<agdb::db::db_key_value::DbKeyValue> (2 samples, 0.03%)core::ptr::drop_in_place<agdb::db::db_value::DbValue> (1 samples, 0.01%)agdb::db::DbImpl<Store>::transaction_mut (229 samples, 3.19%)agd..agdb_benchmarks::writers::Writer<S>::write_comment::{{closure}}::{{closure}} (227 samples, 3.16%)agd..core::ptr::drop_in_place<agdb::query::query_result::QueryResult> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<agdb::db::db_element::DbElement>> (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)core::ptr::drop_in_place<[agdb::db::db_element::DbElement]> (1 samples, 0.01%)core::ptr::drop_in_place<std::sync::rwlock::RwLockWriteGuard<agdb::db::DbImpl<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped>>> (1 samples, 0.01%)<std::sync::rwlock::RwLockWriteGuard<T> as core::ops::drop::Drop>::drop (1 samples, 0.01%)std::sys::unix::locks::futex_rwlock::RwLock::write_unlock (1 samples, 0.01%)syscall (1 samples, 0.01%)std::sys::unix::futex::futex_wait (1 samples, 0.01%)syscall (1 samples, 0.01%)agdb_benchmarks::utilities::measured (233 samples, 3.24%)agd..agdb_benchmarks::writers::Writer<S>::write_comment::{{closure}} (233 samples, 3.24%)agd..std::sync::rwlock::RwLock<T>::write (3 samples, 0.04%)std::sys::unix::locks::futex_rwlock::RwLock::write (3 samples, 0.04%)std::sys::unix::locks::futex_rwlock::RwLock::write_contended (3 samples, 0.04%)std::sys::unix::locks::futex_rwlock::RwLock::spin_write (2 samples, 0.03%)std::sys::unix::locks::futex_rwlock::RwLock::spin_until (2 samples, 0.03%)core::sync::atomic::AtomicU32::load (2 samples, 0.03%)core::sync::atomic::atomic_load (2 samples, 0.03%)agdb::db::DbImpl<Store>::db_id (2 samples, 0.03%)alloc::fmt::format (2 samples, 0.03%)core::option::Option<T>::map_or_else (2 samples, 0.03%)alloc::fmt::format::{{closure}} (2 samples, 0.03%)alloc::fmt::format::format_inner (2 samples, 0.03%)core::fmt::Write::write_fmt (2 samples, 0.03%)core::fmt::write (2 samples, 0.03%)<&mut W as core::fmt::Write>::write_str (2 samples, 0.03%)<alloc::string::String as core::fmt::Write>::write_str (2 samples, 0.03%)alloc::string::String::push_str (2 samples, 0.03%)alloc::vec::Vec<T,A>::extend_from_slice (2 samples, 0.03%)<alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<&T,core::slice::iter::Iter<T>>>::spec_extend (2 samples, 0.03%)alloc::vec::Vec<T,A>::append_elements (2 samples, 0.03%)core::intrinsics::copy_nonoverlapping (2 samples, 0.03%)[libc.so.6] (2 samples, 0.03%)<agdb::db::db_search_handlers::LimitHandler<Store> as agdb::graph_search::SearchHandler>::process (1 samples, 0.01%)agdb::db::DbImpl<Store>::evaluate_conditions (1 samples, 0.01%)agdb::collections::vec::DbVecData<T,D,E>::offset (1 samples, 0.01%)<i64 as agdb::collections::vec::VecValue>::storage_len (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::next (12 samples, 0.17%)<agdb::graph::GraphEdgeIterator<D,Data> as core::iter::traits::iterator::Iterator>::next (12 samples, 0.17%)agdb::graph::GraphImpl<D,Data>::next_edge_from (11 samples, 0.15%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::from_meta (11 samples, 0.15%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (11 samples, 0.15%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (9 samples, 0.13%)agdb::storage::Storage<D>::value_as_bytes_at_size (7 samples, 0.10%)agdb::storage::Storage<D>::record (3 samples, 0.04%)agdb::storage::storage_records::StorageRecords::record (3 samples, 0.04%)<alloc::vec::Vec<T,A> as core::ops::deref::Deref>::deref (1 samples, 0.01%)@plt (1 samples, 0.01%)<agdb::graph_search::depth_first_search::DepthFirstSearch as agdb::graph_search::search_impl::SearchIterator<D>>::expand_node (15 samples, 0.21%)core::iter::traits::iterator::Iterator::collect (15 samples, 0.21%)<alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter (15 samples, 0.21%)<alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter (15 samples, 0.21%)<alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter (15 samples, 0.21%)<alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend (15 samples, 0.21%)alloc::vec::Vec<T,A>::extend_desugared (15 samples, 0.21%)alloc::vec::Vec<T,A>::reserve (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::reserve (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::grow_amortized (2 samples, 0.03%)alloc::raw_vec::finish_grow (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::grow (2 samples, 0.03%)alloc::alloc::Global::grow_impl (2 samples, 0.03%)alloc::alloc::realloc (2 samples, 0.03%)realloc (2 samples, 0.03%)[libc.so.6] (2 samples, 0.03%)[libc.so.6] (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve_for_push (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::grow_amortized (2 samples, 0.03%)alloc::raw_vec::finish_grow (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::grow (2 samples, 0.03%)alloc::alloc::Global::grow_impl (2 samples, 0.03%)alloc::alloc::realloc (2 samples, 0.03%)realloc (2 samples, 0.03%)agdb::db::DbImpl<Store>::exec (21 samples, 0.29%)agdb::db::DbImpl<Store>::transaction (21 samples, 0.29%)agdb::db::DbImpl<Store>::exec::{{closure}} (21 samples, 0.29%)agdb::transaction::Transaction<Store>::exec (21 samples, 0.29%)<agdb::query::search_query::SearchQuery as agdb::query::Query>::process (21 samples, 0.29%)agdb::query::search_query::SearchQuery::search (21 samples, 0.29%)agdb::db::DbImpl<Store>::search_from (19 samples, 0.26%)agdb::graph_search::GraphSearch<D,Data>::depth_first_search (19 samples, 0.26%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::search (19 samples, 0.26%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_stack (19 samples, 0.26%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_index (19 samples, 0.26%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::process_unvisited_index (19 samples, 0.26%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::expand_index (18 samples, 0.25%)agdb::graph_search::search_impl::SearchImpl<D,Data,SearchIt>::add_edges_to_stack (3 samples, 0.04%)alloc::vec::Vec<T,A>::push (3 samples, 0.04%)core::ptr::mut_ptr::<impl *mut T>::add (1 samples, 0.01%)core::ptr::drop_in_place<std::sync::rwlock::RwLockReadGuard<agdb::db::DbImpl<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped>>> (1 samples, 0.01%)<std::sync::rwlock::RwLockReadGuard<T> as core::ops::drop::Drop>::drop (1 samples, 0.01%)std::sys::unix::locks::futex_rwlock::RwLock::read_unlock (1 samples, 0.01%)agdb_benchmarks::writers::Writer<S>::write_comment (256 samples, 3.56%)agdb..agdb_benchmarks::writers::Writer<S>::last_post (23 samples, 0.32%)std::sync::rwlock::RwLock<T>::read (1 samples, 0.01%)std::sys::unix::locks::futex_rwlock::RwLock::read (1 samples, 0.01%)std::sys::unix::locks::futex_rwlock::RwLock::read_contended (1 samples, 0.01%)std::sys::unix::futex::futex_wait (1 samples, 0.01%)syscall (1 samples, 0.01%)core::ptr::drop_in_place<tokio::time::sleep::Sleep> (1 samples, 0.01%)core::ptr::drop_in_place<tokio::runtime::time::entry::TimerEntry> (1 samples, 0.01%)core::ptr::drop_in_place<core::cell::UnsafeCell<tokio::runtime::time::entry::TimerShared>> (1 samples, 0.01%)core::ptr::drop_in_place<tokio::runtime::time::entry::TimerShared> (1 samples, 0.01%)core::ptr::drop_in_place<tokio::runtime::time::entry::StateCell> (1 samples, 0.01%)core::ptr::drop_in_place<tokio::sync::task::atomic_waker::AtomicWaker> (1 samples, 0.01%)core::ptr::drop_in_place<tokio::loom::std::unsafe_cell::UnsafeCell<core::option::Option<core::task::wake::Waker>>> (1 samples, 0.01%)core::ptr::drop_in_place<core::cell::UnsafeCell<core::option::Option<core::task::wake::Waker>>> (1 samples, 0.01%)core::ptr::drop_in_place<core::option::Option<core::task::wake::Waker>> (1 samples, 0.01%)agdb_benchmarks::writers::start_comment_writers::{{closure}}::{{closure}} (259 samples, 3.61%)agdb..tokio::time::sleep::sleep (1 samples, 0.01%)tokio::time::sleep::Sleep::new_timeout (1 samples, 0.01%)tokio::runtime::scheduler::Handle::current (1 samples, 0.01%)tokio::runtime::time::Inner::lock (1 samples, 0.01%)tokio::loom::std::parking_lot::Mutex<T>::lock (1 samples, 0.01%)lock_api::mutex::Mutex<R,T>::lock (1 samples, 0.01%)<parking_lot::raw_mutex::RawMutex as lock_api::mutex::RawMutex>::lock (1 samples, 0.01%)core::sync::atomic::AtomicU8::compare_exchange_weak (1 samples, 0.01%)core::sync::atomic::atomic_compare_exchange_weak (1 samples, 0.01%)tokio::runtime::time::<impl tokio::runtime::time::handle::Handle>::reregister (2 samples, 0.03%)tokio::runtime::time::wheel::Wheel::insert (1 samples, 0.01%)tokio::runtime::time::wheel::level::Level::add_entry (1 samples, 0.01%)tokio::util::linked_list::LinkedList<L,<L as tokio::util::linked_list::Link>::Target>::push_front (1 samples, 0.01%)<tokio::time::sleep::Sleep as core::future::future::Future>::poll (3 samples, 0.04%)tokio::time::sleep::Sleep::poll_elapsed (3 samples, 0.04%)tokio::runtime::time::entry::TimerEntry::poll_elapsed (3 samples, 0.04%)tokio::runtime::time::entry::TimerEntry::reset (1 samples, 0.01%)tokio::runtime::time::entry::TimerEntry::driver (1 samples, 0.01%)tokio::runtime::scheduler::Handle::driver (1 samples, 0.01%)agdb::query_builder::insert_edge::InsertEdgesEach::query (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb::query_builder::insert_nodes::InsertNodes::values (1 samples, 0.01%)core::ptr::drop_in_place<agdb::query::query_values::QueryValues> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<agdb::db::db_key_value::DbKeyValue>> (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)agdb::query::insert_edges_query::InsertEdgesQuery::db_ids (1 samples, 0.01%)alloc::vec::Vec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::grow_amortized (1 samples, 0.01%)alloc::raw_vec::finish_grow (1 samples, 0.01%)malloc (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (6 samples, 0.08%)std::io::Read::read_exact (5 samples, 0.07%)std::io::default_read_exact (5 samples, 0.07%)<&std::fs::File as std::io::Read>::read (5 samples, 0.07%)std::sys::unix::fs::File::read (5 samples, 0.07%)std::sys::unix::fd::FileDesc::read (5 samples, 0.07%)read (5 samples, 0.07%)<std::fs::File as std::io::Seek>::seek (3 samples, 0.04%)std::sys::unix::fs::File::seek (3 samples, 0.04%)lseek64 (3 samples, 0.04%)agdb::storage::write_ahead_log::WriteAheadLog::insert (5 samples, 0.07%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (2 samples, 0.03%)std::sys::unix::net::Socket::write (2 samples, 0.03%)std::sys::unix::fd::FileDesc::write (2 samples, 0.03%)__write (2 samples, 0.03%)alloc::vec::from_elem (2 samples, 0.03%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::allocate_in (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (2 samples, 0.03%)alloc::alloc::Global::alloc_impl (2 samples, 0.03%)alloc::alloc::alloc_zeroed (2 samples, 0.03%)__libc_calloc (2 samples, 0.03%)[libc.so.6] (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (17 samples, 0.24%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (17 samples, 0.24%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (17 samples, 0.24%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)agdb::storage::Storage<D>::insert_at (18 samples, 0.25%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (7 samples, 0.10%)std::sys::unix::fs::File::seek (7 samples, 0.10%)lseek64 (7 samples, 0.10%)agdb::graph::GraphImpl<D,Data>::get_free_index (38 samples, 0.53%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::grow (38 samples, 0.53%)agdb::collections::vec::VecImpl<T,D,Data,E>::push (38 samples, 0.53%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::resize (37 samples, 0.52%)agdb::storage::Storage<D>::insert_bytes_at (19 samples, 0.26%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (19 samples, 0.26%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (19 samples, 0.26%)agdb::storage::write_ahead_log::WriteAheadLog::insert (16 samples, 0.22%)std::io::Write::write_all (9 samples, 0.13%)std::os::unix::net::datagram::UnixDatagram::send (9 samples, 0.13%)std::sys::unix::net::Socket::write (9 samples, 0.13%)std::sys::unix::fd::FileDesc::write (9 samples, 0.13%)__write (9 samples, 0.13%)[libc.so.6] (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_from (3 samples, 0.04%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (3 samples, 0.04%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (3 samples, 0.04%)agdb::storage::Storage<D>::insert_bytes_at (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (2 samples, 0.03%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (2 samples, 0.03%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_to (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (2 samples, 0.03%)agdb::storage::Storage<D>::insert_bytes_at (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (2 samples, 0.03%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (2 samples, 0.03%)alloc::vec::from_elem (1 samples, 0.01%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc_zeroed (1 samples, 0.01%)__libc_calloc (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (2 samples, 0.03%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (2 samples, 0.03%)std::sys::unix::net::Socket::write (2 samples, 0.03%)std::sys::unix::fd::FileDesc::write (2 samples, 0.03%)__write (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_from (4 samples, 0.06%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (4 samples, 0.06%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (4 samples, 0.06%)agdb::storage::Storage<D>::insert_bytes_at (4 samples, 0.06%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (4 samples, 0.06%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (4 samples, 0.06%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (3 samples, 0.04%)std::sys::unix::fs::File::seek (3 samples, 0.04%)lseek64 (3 samples, 0.04%)__libc_free (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)<u64 as agdb::utilities::serialize::Serialize>::serialize (1 samples, 0.01%)alloc::slice::<impl [T]>::to_vec (1 samples, 0.01%)alloc::slice::<impl [T]>::to_vec_in (1 samples, 0.01%)alloc::slice::hack::to_vec (1 samples, 0.01%)<T as alloc::slice::hack::ConvertVec>::to_vec (1 samples, 0.01%)alloc::vec::Vec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc (1 samples, 0.01%)malloc (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (6 samples, 0.08%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (2 samples, 0.03%)std::sys::unix::net::Socket::write (2 samples, 0.03%)std::sys::unix::fd::FileDesc::write (2 samples, 0.03%)__write (2 samples, 0.03%)agdb::graph::GraphImpl<D,Data>::update_from_edge (16 samples, 0.22%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_from_meta (12 samples, 0.17%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (12 samples, 0.17%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (12 samples, 0.17%)agdb::storage::Storage<D>::insert_bytes_at (12 samples, 0.17%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (12 samples, 0.17%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (12 samples, 0.17%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (2 samples, 0.03%)std::sys::unix::net::Socket::write (2 samples, 0.03%)std::sys::unix::fd::FileDesc::write (2 samples, 0.03%)__write (2 samples, 0.03%)<i64 as agdb::collections::vec::VecValue>::store (1 samples, 0.01%)<f64 as agdb::utilities::serialize::Serialize>::serialize (1 samples, 0.01%)alloc::slice::<impl [T]>::to_vec (1 samples, 0.01%)alloc::slice::<impl [T]>::to_vec_in (1 samples, 0.01%)alloc::slice::hack::to_vec (1 samples, 0.01%)<T as alloc::slice::hack::ConvertVec>::to_vec (1 samples, 0.01%)alloc::vec::Vec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc (1 samples, 0.01%)malloc (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)std::io::Read::read_exact (2 samples, 0.03%)std::io::default_read_exact (2 samples, 0.03%)<&std::fs::File as std::io::Read>::read (2 samples, 0.03%)std::sys::unix::fs::File::read (2 samples, 0.03%)std::sys::unix::fd::FileDesc::read (2 samples, 0.03%)read (2 samples, 0.03%)alloc::vec::from_elem (1 samples, 0.01%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc_zeroed (1 samples, 0.01%)__libc_calloc (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_to (5 samples, 0.07%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (5 samples, 0.07%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (5 samples, 0.07%)agdb::storage::Storage<D>::insert_bytes_at (4 samples, 0.06%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (4 samples, 0.06%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (4 samples, 0.06%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (3 samples, 0.04%)std::io::Read::read_exact (3 samples, 0.04%)std::io::default_read_exact (3 samples, 0.04%)<&std::fs::File as std::io::Read>::read (3 samples, 0.04%)std::sys::unix::fs::File::read (3 samples, 0.04%)std::sys::unix::fd::FileDesc::read (3 samples, 0.04%)read (3 samples, 0.04%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<core::ops::range::RangeFrom<usize> as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (4 samples, 0.06%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_to_meta (9 samples, 0.13%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (9 samples, 0.13%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (9 samples, 0.13%)agdb::storage::Storage<D>::insert_bytes_at (9 samples, 0.13%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (9 samples, 0.13%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (9 samples, 0.13%)alloc::vec::from_elem (1 samples, 0.01%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc_zeroed (1 samples, 0.01%)__rdl_alloc_zeroed (1 samples, 0.01%)agdb::db::DbImpl<Store>::insert_edge (76 samples, 1.06%)agdb::graph::GraphImpl<D,Data>::insert_edge (74 samples, 1.03%)agdb::graph::GraphImpl<D,Data>::set_edge (36 samples, 0.50%)agdb::graph::GraphImpl<D,Data>::update_to_edge (15 samples, 0.21%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::to (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_key (3 samples, 0.04%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (3 samples, 0.04%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (3 samples, 0.04%)alloc::slice::<impl [T]>::to_vec (2 samples, 0.03%)alloc::slice::<impl [T]>::to_vec_in (2 samples, 0.03%)alloc::slice::hack::to_vec (2 samples, 0.03%)<T as alloc::slice::hack::ConvertVec>::to_vec (2 samples, 0.03%)alloc::vec::Vec<T,A>::with_capacity_in (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (2 samples, 0.03%)alloc::raw_vec::RawVec<T,A>::allocate_in (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (2 samples, 0.03%)alloc::alloc::Global::alloc_impl (2 samples, 0.03%)alloc::alloc::alloc (2 samples, 0.03%)core::ptr::read_volatile (2 samples, 0.03%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)<&std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_len (5 samples, 0.07%)agdb::storage::Storage<D>::insert_at (5 samples, 0.07%)agdb::storage::Storage<D>::insert_bytes_at (5 samples, 0.07%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (5 samples, 0.07%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (5 samples, 0.07%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_state (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)std::io::Read::read_exact (1 samples, 0.01%)std::io::default_read_exact (1 samples, 0.01%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::do_insert (11 samples, 0.15%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_value (2 samples, 0.03%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (2 samples, 0.03%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (2 samples, 0.03%)agdb::storage::Storage<D>::insert_bytes_at (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (2 samples, 0.03%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (2 samples, 0.03%)alloc::vec::from_elem (1 samples, 0.01%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc_zeroed (1 samples, 0.01%)__libc_calloc (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)<alloc::borrow::Cow<B> as core::ops::deref::Deref>::deref (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::read (1 samples, 0.01%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::read (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked (1 samples, 0.01%)core::ptr::const_ptr::<impl *const T>::add (1 samples, 0.01%)agdb::db::DbImpl<Store>::insert_key_value (18 samples, 0.25%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::insert (18 samples, 0.25%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::free_index (6 samples, 0.08%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::state (6 samples, 0.08%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (6 samples, 0.08%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (6 samples, 0.08%)agdb::storage::Storage<D>::value_as_bytes_at_size (3 samples, 0.04%)agdb::storage::Storage<D>::record (1 samples, 0.01%)agdb::storage::storage_records::StorageRecords::record (1 samples, 0.01%)agdb::storage::storage_records::StorageRecords::is_valid (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index (1 samples, 0.01%)core::slice::index::<impl core::ops::index::Index<I> for [T]>::index (1 samples, 0.01%)<usize as core::slice::index::SliceIndex<[T]>>::index (1 samples, 0.01%)<agdb::query::insert_edges_query::InsertEdgesQuery as agdb::query::QueryMut>::process (97 samples, 1.35%)agdb::query::insert_edges_query::InsertEdgesQuery::many_to_many_each (96 samples, 1.34%)core::ptr::drop_in_place<alloc::vec::Vec<&alloc::vec::Vec<agdb::db::db_key_value::DbKeyValue>>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<&alloc::vec::Vec<agdb::db::db_key_value::DbKeyValue>>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__libc_free (1 samples, 0.01%)<agdb::db::db_key_value::DbKeyValue as core::clone::Clone>::clone (1 samples, 0.01%)<agdb::db::db_value::DbValue as core::clone::Clone>::clone (1 samples, 0.01%)<alloc::string::String as core::clone::Clone>::clone (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::clone::Clone>::clone (1 samples, 0.01%)alloc::slice::<impl [T]>::to_vec_in (1 samples, 0.01%)alloc::slice::hack::to_vec (1 samples, 0.01%)<T as alloc::slice::hack::ConvertVec>::to_vec (1 samples, 0.01%)alloc::vec::Vec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc (1 samples, 0.01%)malloc (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::commit (2 samples, 0.03%)agdb::storage::Storage<D>::commit (2 samples, 0.03%)agdb::storage::Storage<D>::end_transaction (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::flush (2 samples, 0.03%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::flush (2 samples, 0.03%)agdb::storage::write_ahead_log::WriteAheadLog::clear (2 samples, 0.03%)std::fs::File::set_len (2 samples, 0.03%)std::sys::unix::fs::File::truncate (2 samples, 0.03%)std::sys::unix::cvt_r (2 samples, 0.03%)std::sys::unix::fs::File::truncate::{{closure}} (2 samples, 0.03%)ftruncate (2 samples, 0.03%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_key (4 samples, 0.06%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (4 samples, 0.06%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (4 samples, 0.06%)agdb::storage::Storage<D>::insert_bytes_at (4 samples, 0.06%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (4 samples, 0.06%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (4 samples, 0.06%)agdb::storage::write_ahead_log::WriteAheadLog::insert (2 samples, 0.03%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)__rust_dealloc (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)std::io::Read::read_exact (2 samples, 0.03%)std::io::default_read_exact (2 samples, 0.03%)<&std::fs::File as std::io::Read>::read (2 samples, 0.03%)std::sys::unix::fs::File::read (2 samples, 0.03%)std::sys::unix::fd::FileDesc::read (2 samples, 0.03%)read (2 samples, 0.03%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)std::io::Write::write_all (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_len (4 samples, 0.06%)agdb::storage::Storage<D>::insert_at (4 samples, 0.06%)agdb::storage::Storage<D>::insert_bytes_at (4 samples, 0.06%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (4 samples, 0.06%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (4 samples, 0.06%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_state (4 samples, 0.06%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (4 samples, 0.06%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (4 samples, 0.06%)agdb::storage::Storage<D>::insert_bytes_at (4 samples, 0.06%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (4 samples, 0.06%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (4 samples, 0.06%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<agdb::db::db_key_value::DbKeyValue as agdb::collections::vec::VecValue>::remove (1 samples, 0.01%)agdb::db::db_value_index::DbValueIndex::is_value (1 samples, 0.01%)<alloc::string::String as agdb::utilities::serialize::Serialize>::serialize (1 samples, 0.01%)alloc::vec::Vec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::grow_amortized (1 samples, 0.01%)core::num::<impl usize>::checked_add (1 samples, 0.01%)core::num::<impl usize>::overflowing_add (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (1 samples, 0.01%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (3 samples, 0.04%)std::sys::unix::fs::File::seek (3 samples, 0.04%)lseek64 (3 samples, 0.04%)agdb::storage::Storage<D>::append (5 samples, 0.07%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (5 samples, 0.07%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (5 samples, 0.07%)agdb::storage::write_ahead_log::WriteAheadLog::insert (4 samples, 0.06%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)agdb::storage::Storage<D>::new_record (1 samples, 0.01%)agdb::storage::storage_records::StorageRecords::new_record (1 samples, 0.01%)alloc::vec::Vec<T,A>::push (1 samples, 0.01%)core::ptr::write (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (1 samples, 0.01%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)<agdb::db::db_key_value::DbKeyValue as agdb::collections::vec::VecValue>::store (11 samples, 0.15%)agdb::db::db_value::DbValue::store_db_value (11 samples, 0.15%)agdb::storage::Storage<D>::insert (10 samples, 0.14%)agdb::storage::Storage<D>::insert_bytes (9 samples, 0.13%)agdb::storage::Storage<D>::write_record (3 samples, 0.04%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (3 samples, 0.04%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (3 samples, 0.04%)std::io::Write::write_all (1 samples, 0.01%)std::os::unix::net::datagram::UnixDatagram::send (1 samples, 0.01%)std::sys::unix::net::Socket::write (1 samples, 0.01%)std::sys::unix::fd::FileDesc::write (1 samples, 0.01%)__write (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::do_insert (27 samples, 0.38%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::set_value (15 samples, 0.21%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (15 samples, 0.21%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (15 samples, 0.21%)agdb::storage::Storage<D>::insert_bytes_at (3 samples, 0.04%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (3 samples, 0.04%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (3 samples, 0.04%)agdb::storage::write_ahead_log::WriteAheadLog::insert (3 samples, 0.04%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (2 samples, 0.03%)std::sys::unix::net::Socket::write (2 samples, 0.03%)std::sys::unix::fd::FileDesc::write (2 samples, 0.03%)__write (2 samples, 0.03%)agdb::collections::vec::DbVecData<T,D,E>::offset (2 samples, 0.03%)<agdb::collections::map::MapValueState as agdb::utilities::serialize::SerializeStatic>::serialized_size_static (2 samples, 0.03%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::state (11 samples, 0.15%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (10 samples, 0.14%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (10 samples, 0.14%)agdb::storage::Storage<D>::value_as_bytes_at_size (7 samples, 0.10%)agdb::storage::Storage<D>::record (4 samples, 0.06%)agdb::storage::storage_records::StorageRecords::record (4 samples, 0.06%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)agdb::storage::Storage<D>::update_record (1 samples, 0.01%)agdb::storage::Storage<D>::write_record (1 samples, 0.01%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (1 samples, 0.01%)<agdb::storage::memory_storage::MemoryStorage as agdb::storage::StorageData>::write (1 samples, 0.01%)alloc::vec::Vec<T,A>::extend_from_slice (1 samples, 0.01%)<alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<&T,core::slice::iter::Iter<T>>>::spec_extend (1 samples, 0.01%)alloc::vec::Vec<T,A>::append_elements (1 samples, 0.01%)core::intrinsics::copy_nonoverlapping (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::reallocate (2 samples, 0.03%)agdb::storage::Storage<D>::resize_value (2 samples, 0.03%)agdb::storage::Storage<D>::move_to_end (2 samples, 0.03%)alloc::vec::Vec<T,A>::resize (1 samples, 0.01%)alloc::vec::Vec<T,A>::extend_with (1 samples, 0.01%)alloc::vec::Vec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::grow_amortized (1 samples, 0.01%)alloc::raw_vec::finish_grow (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::grow (1 samples, 0.01%)alloc::alloc::Global::grow_impl (1 samples, 0.01%)alloc::alloc::realloc (1 samples, 0.01%)realloc (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (4 samples, 0.06%)std::sys::unix::fs::File::seek (4 samples, 0.06%)lseek64 (4 samples, 0.06%)<&std::fs::File as std::io::Seek>::seek (3 samples, 0.04%)std::sys::unix::fs::File::seek (3 samples, 0.04%)lseek64 (3 samples, 0.04%)agdb::storage::file_storage::FileStorage::read_impl (7 samples, 0.10%)std::io::Read::read_exact (4 samples, 0.06%)std::io::default_read_exact (4 samples, 0.06%)<&std::fs::File as std::io::Read>::read (4 samples, 0.06%)std::sys::unix::fs::File::read (4 samples, 0.06%)std::sys::unix::fd::FileDesc::read (4 samples, 0.06%)read (4 samples, 0.06%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)agdb::storage::write_ahead_log::WriteAheadLog::insert (12 samples, 0.17%)std::io::Write::write_all (10 samples, 0.14%)std::os::unix::net::datagram::UnixDatagram::send (10 samples, 0.14%)std::sys::unix::net::Socket::write (10 samples, 0.14%)std::sys::unix::fd::FileDesc::write (10 samples, 0.14%)__write (10 samples, 0.14%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::rehash (29 samples, 0.40%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::grow (29 samples, 0.40%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::resize (29 samples, 0.40%)agdb::collections::vec::VecImpl<T,D,Data,E>::resize (29 samples, 0.40%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::resize (27 samples, 0.38%)agdb::storage::Storage<D>::insert_bytes_at (27 samples, 0.38%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (27 samples, 0.38%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (27 samples, 0.38%)std::io::Write::write_all (3 samples, 0.04%)std::os::unix::net::datagram::UnixDatagram::send (3 samples, 0.04%)std::sys::unix::net::Socket::write (3 samples, 0.04%)std::sys::unix::fd::FileDesc::write (3 samples, 0.04%)__write (3 samples, 0.04%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::state (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::key (1 samples, 0.01%)agdb::collections::vec::VecImpl<T,D,Data,E>::value (1 samples, 0.01%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::value (1 samples, 0.01%)<agdb::db::db_id::DbId as agdb::collections::vec::VecValue>::load (1 samples, 0.01%)<i64 as agdb::utilities::serialize::Serialize>::deserialize (1 samples, 0.01%)<core::result::Result<T,E> as core::ops::try_trait::Try>::branch (2 samples, 0.03%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)<&std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)agdb::storage::file_storage::FileStorage::read_impl (4 samples, 0.06%)std::io::Read::read_exact (2 samples, 0.03%)std::io::default_read_exact (2 samples, 0.03%)<&std::fs::File as std::io::Read>::read (2 samples, 0.03%)std::sys::unix::fs::File::read (2 samples, 0.03%)std::sys::unix::fd::FileDesc::read (2 samples, 0.03%)read (2 samples, 0.03%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (2 samples, 0.03%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (2 samples, 0.03%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (2 samples, 0.03%)alloc::alloc::dealloc (2 samples, 0.03%)__libc_free (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (9 samples, 0.13%)std::io::Write::write_all (5 samples, 0.07%)std::os::unix::net::datagram::UnixDatagram::send (5 samples, 0.07%)std::sys::unix::net::Socket::write (5 samples, 0.07%)std::sys::unix::fd::FileDesc::write (5 samples, 0.07%)__write (5 samples, 0.07%)[libc.so.6] (1 samples, 0.01%)alloc::vec::from_elem (1 samples, 0.01%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc_zeroed (1 samples, 0.01%)__libc_calloc (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (19 samples, 0.26%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (19 samples, 0.26%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (19 samples, 0.26%)std::io::Write::write_all (3 samples, 0.04%)std::os::unix::net::datagram::UnixDatagram::send (3 samples, 0.04%)std::sys::unix::net::Socket::write (3 samples, 0.04%)std::sys::unix::fd::FileDesc::write (3 samples, 0.04%)__write (3 samples, 0.04%)[libc.so.6] (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)<&std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)agdb::storage::file_storage::FileStorage::read_impl (4 samples, 0.06%)std::io::Read::read_exact (2 samples, 0.03%)std::io::default_read_exact (2 samples, 0.03%)<&std::fs::File as std::io::Read>::read (2 samples, 0.03%)std::sys::unix::fs::File::read (2 samples, 0.03%)std::sys::unix::fd::FileDesc::read (2 samples, 0.03%)read (2 samples, 0.03%)agdb::storage::write_ahead_log::WriteAheadLog::insert (10 samples, 0.14%)std::io::Write::write_all (10 samples, 0.14%)std::os::unix::net::datagram::UnixDatagram::send (10 samples, 0.14%)std::sys::unix::net::Socket::write (10 samples, 0.14%)std::sys::unix::fd::FileDesc::write (10 samples, 0.14%)__write (10 samples, 0.14%)[libc.so.6] (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (19 samples, 0.26%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (19 samples, 0.26%)std::io::Write::write_all (3 samples, 0.04%)std::os::unix::net::datagram::UnixDatagram::send (3 samples, 0.04%)std::sys::unix::net::Socket::write (3 samples, 0.04%)std::sys::unix::fd::FileDesc::write (3 samples, 0.04%)__write (3 samples, 0.04%)agdb::storage::Storage<D>::erase_bytes (20 samples, 0.28%)alloc::vec::from_elem (1 samples, 0.01%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc_zeroed (1 samples, 0.01%)__libc_calloc (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (5 samples, 0.07%)std::sys::unix::fs::File::seek (5 samples, 0.07%)lseek64 (5 samples, 0.07%)<&std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)std::io::Read::read_exact (1 samples, 0.01%)std::io::default_read_exact (1 samples, 0.01%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (1 samples, 0.01%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (1 samples, 0.01%)alloc::alloc::dealloc (1 samples, 0.01%)agdb::storage::write_ahead_log::WriteAheadLog::insert (12 samples, 0.17%)std::io::Write::write_all (8 samples, 0.11%)std::os::unix::net::datagram::UnixDatagram::send (7 samples, 0.10%)std::sys::unix::net::Socket::write (7 samples, 0.10%)std::sys::unix::fd::FileDesc::write (7 samples, 0.10%)__write (7 samples, 0.10%)alloc::vec::from_elem (1 samples, 0.01%)<u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::with_capacity_zeroed_in (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::allocate_in (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed (1 samples, 0.01%)alloc::alloc::Global::alloc_impl (1 samples, 0.01%)alloc::alloc::alloc_zeroed (1 samples, 0.01%)__libc_calloc (1 samples, 0.01%)agdb::storage::Storage<D>::insert_bytes_at (23 samples, 0.32%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (23 samples, 0.32%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (23 samples, 0.32%)std::io::Write::write_all (3 samples, 0.04%)std::os::unix::net::datagram::UnixDatagram::send (3 samples, 0.04%)std::sys::unix::net::Socket::write (3 samples, 0.04%)std::sys::unix::fd::FileDesc::write (3 samples, 0.04%)__write (3 samples, 0.04%)agdb::db::DbImpl<Store>::insert_key_value (138 samples, 1.92%)a..agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::insert (137 samples, 1.91%)a..agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::free_index (108 samples, 1.50%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::rehash_values (67 samples, 0.93%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::rehash_value (66 samples, 0.92%)agdb::collections::multi_map::MultiMapImpl<K,T,D,Data>::rehash_valid (66 samples, 0.92%)<agdb::collections::map::DbMapData<K,T,D> as agdb::collections::map::MapData<K,T,D>>::swap (65 samples, 0.91%)agdb::collections::vec::VecImpl<T,D,Data,E>::swap (65 samples, 0.91%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::swap (65 samples, 0.91%)agdb::storage::Storage<D>::move_at (44 samples, 0.61%)agdb::storage::Storage<D>::record (1 samples, 0.01%)agdb::storage::storage_records::StorageRecords::record (1 samples, 0.01%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::commit (2 samples, 0.03%)agdb::storage::Storage<D>::commit (2 samples, 0.03%)agdb::storage::Storage<D>::end_transaction (2 samples, 0.03%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::flush (2 samples, 0.03%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::flush (2 samples, 0.03%)agdb::storage::write_ahead_log::WriteAheadLog::clear (2 samples, 0.03%)std::fs::File::set_len (2 samples, 0.03%)std::sys::unix::fs::File::truncate (2 samples, 0.03%)std::sys::unix::cvt_r (2 samples, 0.03%)std::sys::unix::fs::File::truncate::{{closure}} (2 samples, 0.03%)ftruncate (2 samples, 0.03%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (2 samples, 0.03%)std::sys::unix::fs::File::seek (2 samples, 0.03%)lseek64 (2 samples, 0.03%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::set_node_count (5 samples, 0.07%)agdb::collections::vec::VecImpl<T,D,Data,E>::replace (5 samples, 0.07%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::replace (5 samples, 0.07%)agdb::storage::Storage<D>::insert_bytes_at (5 samples, 0.07%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (5 samples, 0.07%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (5 samples, 0.07%)agdb::storage::write_ahead_log::WriteAheadLog::insert (4 samples, 0.06%)std::io::Write::write_all (2 samples, 0.03%)std::os::unix::net::datagram::UnixDatagram::send (2 samples, 0.03%)std::sys::unix::net::Socket::write (2 samples, 0.03%)std::sys::unix::fd::FileDesc::write (2 samples, 0.03%)__write (2 samples, 0.03%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)std::io::Read::read_exact (2 samples, 0.03%)std::io::default_read_exact (2 samples, 0.03%)<&std::fs::File as std::io::Read>::read (1 samples, 0.01%)std::sys::unix::fs::File::read (1 samples, 0.01%)std::sys::unix::fd::FileDesc::read (1 samples, 0.01%)read (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::Storage<D>::insert_at (7 samples, 0.10%)agdb::storage::Storage<D>::insert_bytes_at (7 samples, 0.10%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (7 samples, 0.10%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (7 samples, 0.10%)agdb::storage::write_ahead_log::WriteAheadLog::insert (4 samples, 0.06%)std::io::Write::write_all (3 samples, 0.04%)std::os::unix::net::datagram::UnixDatagram::send (3 samples, 0.04%)std::sys::unix::net::Socket::write (3 samples, 0.04%)std::sys::unix::fd::FileDesc::write (3 samples, 0.04%)__write (3 samples, 0.04%)[libc.so.6] (1 samples, 0.01%)<std::fs::File as std::io::Seek>::seek (1 samples, 0.01%)std::sys::unix::fs::File::seek (1 samples, 0.01%)lseek64 (1 samples, 0.01%)agdb::storage::file_storage::FileStorage::read_impl (2 samples, 0.03%)std::io::Read::read_exact (2 samples, 0.03%)std::io::default_read_exact (2 samples, 0.03%)<&std::fs::File as std::io::Read>::read (2 samples, 0.03%)std::sys::unix::fs::File::read (2 samples, 0.03%)std::sys::unix::fd::FileDesc::read (2 samples, 0.03%)read (2 samples, 0.03%)core::ptr::drop_in_place<alloc::vec::Vec<u8>> (2 samples, 0.03%)core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>> (2 samples, 0.03%)<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop (2 samples, 0.03%)<alloc::alloc::Global as core::alloc::Allocator>::deallocate (2 samples, 0.03%)alloc::alloc::dealloc (2 samples, 0.03%)__libc_free (2 samples, 0.03%)agdb::transaction_mut::TransactionMut<Store>::exec_mut (257 samples, 3.58%)agdb..<agdb::query::insert_nodes_query::InsertNodesQuery as agdb::query::QueryMut>::process (160 samples, 2.23%)<..agdb::db::DbImpl<Store>::insert_node (22 samples, 0.31%)agdb::graph::GraphImpl<D,Data>::insert_node (22 samples, 0.31%)agdb::graph::GraphImpl<D,Data>::get_free_index (15 samples, 0.21%)<agdb::graph::GraphDataStorage<D> as agdb::graph::GraphData<D>>::grow (15 samples, 0.21%)agdb::collections::vec::VecImpl<T,D,Data,E>::push (15 samples, 0.21%)<agdb::collections::vec::DbVecData<T,D,E> as agdb::collections::vec::VecData<T,D,E>>::resize (15 samples, 0.21%)agdb::storage::Storage<D>::insert_bytes_at (8 samples, 0.11%)<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped as agdb::storage::StorageData>::write (8 samples, 0.11%)<agdb::storage::file_storage::FileStorage as agdb::storage::StorageData>::write (8 samples, 0.11%)agdb::storage::write_ahead_log::WriteAheadLog::insert (5 samples, 0.07%)std::io::Write::write_all (3 samples, 0.04%)std::os::unix::net::datagram::UnixDatagram::send (3 samples, 0.04%)std::sys::unix::net::Socket::write (3 samples, 0.04%)std::sys::unix::fd::FileDesc::write (3 samples, 0.04%)__write (3 samples, 0.04%)[libc.so.6] (1 samples, 0.01%)agdb::db::DbImpl<Store>::transaction_mut (260 samples, 3.62%)agdb..agdb_benchmarks::writers::Writer<S>::write_post::{{closure}}::{{closure}} (260 samples, 3.62%)agdb..core::ptr::drop_in_place<agdb::query::insert_nodes_query::InsertNodesQuery> (1 samples, 0.01%)core::ptr::drop_in_place<agdb::query::query_values::QueryValues> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<alloc::vec::Vec<agdb::db::db_key_value::DbKeyValue>>> (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)core::ptr::drop_in_place<[alloc::vec::Vec<agdb::db::db_key_value::DbKeyValue>]> (1 samples, 0.01%)core::ptr::drop_in_place<alloc::vec::Vec<agdb::db::db_key_value::DbKeyValue>> (1 samples, 0.01%)<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop (1 samples, 0.01%)core::ptr::drop_in_place<[agdb::db::db_key_value::DbKeyValue]> (1 samples, 0.01%)core::ptr::drop_in_place<agdb::db::db_key_value::DbKeyValue> (1 samples, 0.01%)core::ptr::drop_in_place<agdb::db::db_value::DbValue> (1 samples, 0.01%)core::ptr::drop_in_place<std::sync::rwlock::RwLockWriteGuard<agdb::db::DbImpl<agdb::storage::file_storage_memory_mapped::FileStorageMemoryMapped>>> (1 samples, 0.01%)<std::sync::rwlock::RwLockWriteGuard<T> as core::ops::drop::Drop>::drop (1 samples, 0.01%)std::sys::unix::locks::futex_rwlock::RwLock::write_unlock (1 samples, 0.01%)syscall (1 samples, 0.01%)agdb_benchmarks::writers::Writer<S>::write_post::{{closure}} (263 samples, 3.66%)agdb..std::sync::rwlock::RwLock<T>::write (2 samples, 0.03%)std::sys::unix::locks::futex_rwlock::RwLock::write (2 samples, 0.03%)std::sys::unix::locks::futex_rwlock::RwLock::write_contended (2 samples, 0.03%)std::sys::unix::futex::futex_wait (2 samples, 0.03%)syscall (2 samples, 0.03%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (1 samples, 0.01%)clock_gettime (1 samples, 0.01%)__vdso_clock_gettime (1 samples, 0.01%)agdb_benchmarks::writers::Writer<S>::write_post (265 samples, 3.69%)agdb..agdb_benchmarks::utilities::measured (265 samples, 3.69%)agdb..std::time::Instant::elapsed (1 samples, 0.01%)std::time::Instant::now (1 samples, 0.01%)std::sys::unix::time::inner::Instant::now (1 samples, 0.01%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (1 samples, 0.01%)clock_gettime (1 samples, 0.01%)__vdso_clock_gettime (1 samples, 0.01%)<&mut W as core::fmt::Write>::write_str (1 samples, 0.01%)<alloc::string::String as core::fmt::Write>::write_str (1 samples, 0.01%)alloc::string::String::push_str (1 samples, 0.01%)alloc::vec::Vec<T,A>::extend_from_slice (1 samples, 0.01%)<alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<&T,core::slice::iter::Iter<T>>>::spec_extend (1 samples, 0.01%)alloc::vec::Vec<T,A>::append_elements (1 samples, 0.01%)alloc::vec::Vec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::grow_amortized (1 samples, 0.01%)alloc::raw_vec::finish_grow (1 samples, 0.01%)<alloc::alloc::Global as core::alloc::Allocator>::grow (1 samples, 0.01%)alloc::alloc::Global::grow_impl (1 samples, 0.01%)alloc::alloc::realloc (1 samples, 0.01%)realloc (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)[libc.so.6] (1 samples, 0.01%)alloc::fmt::format (2 samples, 0.03%)core::option::Option<T>::map_or_else (2 samples, 0.03%)alloc::fmt::format::{{closure}} (2 samples, 0.03%)alloc::fmt::format::format_inner (2 samples, 0.03%)core::fmt::Write::write_fmt (2 samples, 0.03%)core::fmt::write (2 samples, 0.03%)core::fmt::rt::Argument::fmt (1 samples, 0.01%)<&mut W as core::fmt::Write>::write_str (1 samples, 0.01%)<alloc::string::String as core::fmt::Write>::write_str (1 samples, 0.01%)alloc::string::String::push_str (1 samples, 0.01%)alloc::vec::Vec<T,A>::extend_from_slice (1 samples, 0.01%)<alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<&T,core::slice::iter::Iter<T>>>::spec_extend (1 samples, 0.01%)alloc::vec::Vec<T,A>::append_elements (1 samples, 0.01%)alloc::vec::Vec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::grow_amortized (1 samples, 0.01%)alloc::raw_vec::RawVec<T,A>::set_ptr_and_cap (1 samples, 0.01%)agdb_benchmarks::writers::start_post_writers::{{closure}}::{{closure}} (271 samples, 3.77%)agdb..tokio::time::sleep::sleep (1 samples, 0.01%)tokio::time::instant::Instant::now (1 samples, 0.01%)tokio::time::instant::variant::now (1 samples, 0.01%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (1 samples, 0.01%)clock_gettime (1 samples, 0.01%)__vdso_clock_gettime (1 samples, 0.01%)core::ptr::drop_in_place<tokio::runtime::task::core::TaskIdGuard> (4 samples, 0.06%)<tokio::runtime::task::core::TaskIdGuard as core::ops::drop::Drop>::drop (2 samples, 0.03%)tokio::runtime::context::set_current_task_id (1 samples, 0.01%)std::thread::local::LocalKey<T>::try_with (1 samples, 0.01%)tokio::runtime::context::set_current_task_id::{{closure}} (1 samples, 0.01%)core::cell::Cell<T>::replace (1 samples, 0.01%)core::mem::replace (1 samples, 0.01%)core::ptr::write (1 samples, 0.01%)tokio::runtime::task::harness::poll_future (7,096 samples, 98.82%)tokio::runtime::task::harness::poll_futurestd::panic::catch_unwind (7,096 samples, 98.82%)std::panic::catch_unwindstd::panicking::try (7,096 samples, 98.82%)std::panicking::trystd::panicking::try::do_call (7,096 samples, 98.82%)std::panicking::try::do_call<core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once (7,096 samples, 98.82%)<core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_oncetokio::runtime::task::harness::poll_future::{{closure}} (7,096 samples, 98.82%)tokio::runtime::task::harness::poll_future::{{closure}}tokio::runtime::task::core::Core<T,S>::poll (7,094 samples, 98.79%)tokio::runtime::task::core::Core<T,S>::polltokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut (7,093 samples, 98.77%)tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_muttokio::runtime::task::core::Core<T,S>::poll::{{closure}} (7,093 samples, 98.77%)tokio::runtime::task::core::Core<T,S>::poll::{{closure}}tokio::runtime::task::core::TaskIdGuard::enter (1 samples, 0.01%)tokio::runtime::context::set_current_task_id (1 samples, 0.01%)std::thread::local::LocalKey<T>::try_with (1 samples, 0.01%)tokio::runtime::context::set_current_task_id::{{closure}} (1 samples, 0.01%)core::cell::Cell<T>::replace (1 samples, 0.01%)core::mem::replace (1 samples, 0.01%)core::ptr::read (1 samples, 0.01%)tokio::runtime::task::state::State::transition_to_idle (2 samples, 0.03%)tokio::runtime::task::state::State::transition_to_running (2 samples, 0.03%)tokio::runtime::task::harness::Harness<T,S>::poll (7,103 samples, 98.91%)tokio::runtime::task::harness::Harness<T,S>::polltokio::runtime::task::harness::Harness<T,S>::poll_inner (7,101 samples, 98.89%)tokio::runtime::task::harness::Harness<T,S>::poll_innertokio::runtime::task::waker::waker_ref (1 samples, 0.01%)tokio::runtime::task::waker::raw_waker (1 samples, 0.01%)tokio::runtime::coop::budget (7,108 samples, 98.98%)tokio::runtime::coop::budgettokio::runtime::coop::with_budget (7,108 samples, 98.98%)tokio::runtime::coop::with_budgettokio::runtime::scheduler::multi_thread::worker::Context::run_task::{{closure}} (7,107 samples, 98.97%)tokio::runtime::scheduler::multi_thread::worker::Context::run_task::{{closure}}tokio::runtime::task::LocalNotified<S>::run (7,106 samples, 98.96%)tokio::runtime::task::LocalNotified<S>::runtokio::runtime::task::raw::RawTask::poll (7,106 samples, 98.96%)tokio::runtime::task::raw::RawTask::polltokio::runtime::task::raw::poll (2 samples, 0.03%)<std::time::Instant as core::ops::arith::Add<core::time::Duration>>::add (1 samples, 0.01%)std::time::Instant::checked_add (1 samples, 0.01%)std::sys::unix::time::inner::Instant::checked_add_duration (1 samples, 0.01%)std::sys::unix::time::Timespec::checked_add_duration (1 samples, 0.01%)parking_lot_core::parking_lot::FairTimeout::should_timeout (2 samples, 0.03%)std::sys::unix::time::inner::<impl std::sys::unix::time::Timespec>::now (1 samples, 0.01%)clock_gettime (1 samples, 0.01%)__vdso_clock_gettime (1 samples, 0.01%)parking_lot::condvar::Condvar::notify_one_slow (6 samples, 0.08%)parking_lot_core::parking_lot::unpark_requeue (5 samples, 0.07%)parking_lot_core::parking_lot::lock_bucket_pair (2 samples, 0.03%)tokio::runtime::scheduler::multi_thread::worker::Context::run_task (7,118 samples, 99.12%)tokio::runtime::scheduler::multi_thread::worker::Context::run_tasktokio::runtime::scheduler::multi_thread::worker::Core::transition_from_searching (9 samples, 0.13%)tokio::runtime::scheduler::multi_thread::worker::<impl tokio::runtime::scheduler::multi_thread::handle::Handle>::transition_worker_from_searching (3 samples, 0.04%)tokio::runtime::scheduler::multi_thread::worker::<impl tokio::runtime::scheduler::multi_thread::handle::Handle>::notify_parked_local (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::idle::Idle::worker_to_notify (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::idle::Idle::notify_should_wakeup (1 samples, 0.01%)core::sync::atomic::AtomicUsize::fetch_add (1 samples, 0.01%)core::sync::atomic::atomic_add (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::worker::Core::next_task (1 samples, 0.01%)core::num::<impl u32>::wrapping_add (1 samples, 0.01%)tokio::runtime::scheduler::multi_thread::queue::Steal<T>::steal_into (2 samples, 0.03%)tokio::runtime::scheduler::multi_thread::queue::Steal<T>::steal_into2 (2 samples, 0.03%)core::sync::atomic::AtomicU64::load (1 samples, 0.01%)core::sync::atomic::atomic_load (1 samples, 0.01%)all (7,181 samples, 100%)tokio-runtime-w (7,160 samples, 99.71%)tokio-runtime-w[libc.so.6] (7,160 samples, 99.71%)[libc.so.6][libc.so.6] (7,160 samples, 99.71%)[libc.so.6]std::sys::unix::thread::Thread::new::thread_start (7,159 samples, 99.69%)std::sys::unix::thread::Thread::new::thread_start<alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once (7,159 samples, 99.69%)<alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once<alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once (7,159 samples, 99.69%)<alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_oncecore::ops::function::FnOnce::call_once{{vtable.shim}} (7,159 samples, 99.69%)core::ops::function::FnOnce::call_once{{vtable.shim}}std::thread::Builder::spawn_unchecked_::{{closure}} (7,159 samples, 99.69%)std::thread::Builder::spawn_unchecked_::{{closure}}std::panic::catch_unwind (7,159 samples, 99.69%)std::panic::catch_unwindstd::panicking::try (7,159 samples, 99.69%)std::panicking::trystd::panicking::try::do_call (7,159 samples, 99.69%)std::panicking::try::do_call<core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once (7,159 samples, 99.69%)<core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_oncestd::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}} (7,159 samples, 99.69%)std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}std::sys_common::backtrace::__rust_begin_short_backtrace (7,159 samples, 99.69%)std::sys_common::backtrace::__rust_begin_short_backtracetokio::runtime::blocking::pool::Spawner::spawn_thread::{{closure}} (7,159 samples, 99.69%)tokio::runtime::blocking::pool::Spawner::spawn_thread::{{closure}}tokio::runtime::blocking::pool::Inner::run (7,159 samples, 99.69%)tokio::runtime::blocking::pool::Inner::runtokio::runtime::blocking::pool::Task::run (7,159 samples, 99.69%)tokio::runtime::blocking::pool::Task::runtokio::runtime::task::UnownedTask<S>::run (7,159 samples, 99.69%)tokio::runtime::task::UnownedTask<S>::runtokio::runtime::task::raw::RawTask::poll (7,159 samples, 99.69%)tokio::runtime::task::raw::RawTask::polltokio::runtime::task::harness::Harness<T,S>::poll (7,159 samples, 99.69%)tokio::runtime::task::harness::Harness<T,S>::polltokio::runtime::task::harness::Harness<T,S>::poll_inner (7,159 samples, 99.69%)tokio::runtime::task::harness::Harness<T,S>::poll_innertokio::runtime::task::harness::poll_future (7,159 samples, 99.69%)tokio::runtime::task::harness::poll_futurestd::panic::catch_unwind (7,159 samples, 99.69%)std::panic::catch_unwindstd::panicking::try (7,159 samples, 99.69%)std::panicking::trystd::panicking::try::do_call (7,159 samples, 99.69%)std::panicking::try::do_call<core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once (7,159 samples, 99.69%)<core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_oncetokio::runtime::task::harness::poll_future::{{closure}} (7,159 samples, 99.69%)tokio::runtime::task::harness::poll_future::{{closure}}tokio::runtime::task::core::Core<T,S>::poll (7,159 samples, 99.69%)tokio::runtime::task::core::Core<T,S>::polltokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut (7,159 samples, 99.69%)tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_muttokio::runtime::task::core::Core<T,S>::poll::{{closure}} (7,159 samples, 99.69%)tokio::runtime::task::core::Core<T,S>::poll::{{closure}}<tokio::runtime::blocking::task::BlockingTask<T> as core::future::future::Future>::poll (7,159 samples, 99.69%)<tokio::runtime::blocking::task::BlockingTask<T> as core::future::future::Future>::polltokio::runtime::scheduler::multi_thread::worker::Launch::launch::{{closure}} (7,159 samples, 99.69%)tokio::runtime::scheduler::multi_thread::worker::Launch::launch::{{closure}}tokio::runtime::scheduler::multi_thread::worker::run (7,159 samples, 99.69%)tokio::runtime::scheduler::multi_thread::worker::runtokio::runtime::context::runtime::enter_runtime (7,159 samples, 99.69%)tokio::runtime::context::runtime::enter_runtimetokio::runtime::scheduler::multi_thread::worker::run::{{closure}} (7,159 samples, 99.69%)tokio::runtime::scheduler::multi_thread::worker::run::{{closure}}tokio::runtime::context::scoped::Scoped<T>::set (7,159 samples, 99.69%)tokio::runtime::context::scoped::Scoped<T>::settokio::runtime::scheduler::multi_thread::worker::run::{{closure}}::{{closure}} (7,159 samples, 99.69%)tokio::runtime::scheduler::multi_thread::worker::run::{{closure}}::{{closure}}tokio::runtime::scheduler::multi_thread::worker::Context::run (7,159 samples, 99.69%)tokio::runtime::scheduler::multi_thread::worker::Context::runtokio::runtime::scheduler::multi_thread::worker::Core::steal_work (3 samples, 0.04%)tokio::runtime::scheduler::multi_thread::worker::Core::transition_to_searching (1 samples, 0.01%) \ No newline at end of file diff --git a/agdb_web_next/public/images/java.png b/agdb_web_next/public/images/java.png deleted file mode 100644 index c6e7e38f0f5d84ebc44efc43cf1d98fa3f70ecdc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7529 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 diff --git a/agdb_web_next/public/images/logo.svg b/agdb_web_next/public/images/logo.svg deleted file mode 100644 index 52cec8453..000000000 --- a/agdb_web_next/public/images/logo.svg +++ /dev/null @@ -1,40 +0,0 @@ - - - -Created with Fabric.js 5.3.0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/agdb_web_next/public/images/python.png b/agdb_web_next/public/images/python.png deleted file mode 100644 index e4a0e216c0f086a7838f5fd7472ca6c6cb084289..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10020 zcmWk!1yob-8{S5@ND4!c4hiWF$$`|Q8-Xd^4TFJ_QX?l}Fyu!g6KNPAAgv%JH9$am zNJ{?qKlj{w&%Nh6-}%0`p7(v;FWJOMmxhv!5&!_uK=ibrg!i}q-{ho(XN^^D2><|m z<*un|0@2ju@(b{VxqG<*0D@W3St@$HCXBC)pO$gw#)aJR|7KFW`+m#Ia`?fTPHgNgaWXHRs2-emYf zuiEPQ)8EKJb0E(E$iw7;0vxY)u40Rkm)YVcSyMkq^^SQBMA*NZs^2?snfECM+&stW z@0@!YI-O=8>*%I}f$zO>tF5Jjk=S)wi7T{0!f!pe&Erqx?Qeg`ts~yszKanf&7S-C0a@dtfNqwWleYxDkUlfe)dJl9|9aO^o=x~e z;iqRENKoO-|8L-9!NM@YPqHA0p*GncARPmcv|~2@7y#e`K(sW>!hY=)N9KS-gE!Th zTA%CC*&_Ld8(a+C&Y>gF@nqMoL7u(X7 zV$b=_+cH&UDH8olNL?Q}@7uKq`1>zv`lua)NR78_L)rf+DkObE+)uQ|n??us6*cio zi4o7qN*7Xvf9^7n9|xB67E@OL_*JJ-UWPprGw+Y z|E``uW*`ylejE}aDb|Xv>uEtF9|DWe%S6jWa9sFOV3lRvzOO~B>zgE(&kCDjxyR0s z7!Iop2!w3F>aL`G!Uqp2BC(J!f%{)&X6!Jxp9bzL<$}-}ZvXzSukneJ-q=j&A_4(a zMBp+(A1g6aRxzu4IM3{$M}80d{%%**?fi?oTUU|OS35sz(^uSe1gsYEua!ke6(O7|-ZJX9ML(7=aC9YGI=HCCJZg{Y^ z_{l*7^EX82RIZ*QyKS)3swmalpFc`<<9P=M+?lSuaDpnt9AFu^Nz z*}K}8+Qvy(LzIWcwpN~~EsThWh=mjr?RgLPhqROCD$vn!c~Zo(_96UFIbO=S&9`Me z&#+{34{)PDVT&CCZP~?kf=lFthv8axY9k*ALKW4L@MbmdoDn=;EWR%fZ9pOy!+ohN2QjP3 z0&ER;s!U6*FnoqWy?wKQsGVtB-{{Vtfq4(DSCz*jiJKiKYV~WhJF?E=x>Rs>S5aS* z(>yfT=((7!(g*p3u|l{@M3o6)bOYLPq7)l%YLhDe4}!w6bK=_}Lh9RE0WC!<`Ta)1 z8t%kFAmc^C5_N^!mren^*Nr0!HT35;hazI-F;{DxXVBQ6@&6=-L6a#I7vyvcz;OVX zaK{qC!boFPkP-M9qq_#RiR@kaEF-Z}vFUkvc@#qGcf~|3s_VUEm1w)19}DU8KrZ=C z%)_^`&-toT;?#A!jUR*6c($03Y= zB$ZlnugJV3>I#Ht|3!^Q_4kTn71dblo@rOR$v4>vtv+CI|6ct%p@9qaq+fY_nD(qg z$AnfK@U6YfAm74O+s4Lbtk?HK!kM@1b&CN6y+(J`L^9n=5JMuMUR{jMoc zdr6c2-#G+>C|%KuXsOl6vLlWH7ewsTG^ql-6vFVh8}XQb!{QuaN27905hZdvSOigi z!Q3UHDgQB^!EBgbSpE%A!Wt@+6M~BY`U373NV*M4H7x`Tue^(ls6wN#=Gb{YQKy%R zXD`d*&1B#h+w25lJq5Sg-gY_quwu05NHwSY%Py$u;K-P8(ySF2_uu;JvkKe`*Lvx8 zk_tS+*3Y*=~?T~ccvkI!F+nyRTkdAx;jrRWWJiwbD}p4h9b)ZDmIjZ!Q6Se`HU zl!RKWa!FO7R1-KH`6NxU@CQbjb77T_S>0=4(qH?- z23;emW0}tj4~;ipul1pddO5hNpA)jFwo^I09dE1^sQ*$l*5M`f&$QGIUBQX?{8iWBB>-5}pb^ zeZ0Ac;hP@~(v0c^_xZqQkhe>!YM!|7B2sTRL3WQ%Q~n|R?#8sgyO>2Wf|#|sX*_z; zP>!NYD&+(Jfhmj$4S?|FVIMQLSP97wv51?GUVsdWDt1P}9r`axTCPv$Yl=E<`)yi8 z_qim0#nt(VLoC0L&z;SWA5P*}h~E9aS;5bt^yflqLleB;tZzpx zRW+2zc>zA}vzlauHC5J!YsjoDNYgV6F;bz}HB`0>BWZ(x*7u*Vfs&H)RFb{U^~+M+J7S4K~9X^AjC? z_~3z6b)v#2?(gsGj_&3YX7s!`-qL@lzTdo-p8PKgo`s$P)d6df$0?6*6<=R}?ZxMM zqC}W<#Vi^{HXqzM6>NzEO2ytoI(WinfOTW*0d%{IZD(>A*r;NOU~IKri{x5SVgC4L zUG6dM)fm@g4|lQi$QM(ctZk=^quIxUGD)XypwL>5=7pp7n4PVye_7~#l+^Re4S@Bh zXML`l3ry#uGfS_!R095!>-hP{Y?dAsG0$IfSK?*#UO~5M^|&wbhJm8)gq)(1Qs`*0 z(##Yw*V%GRm-ljKbSt_EazX6J2OrX!lItkK`^wbXbnFkC(j1Ui{m_hyH9c3$4!Vz* zQ@52Zy#7^d-xe~8lG6PI`d!<$|2JfRL4o0%3r;mQ8KxuSV^VZh|UgT#;c8ZNn{U3G5x9e{f4OqU1!rc#LmhpFaCD?*8Wa^Tc)XO21Q{`{skOd z6Ntnb_XPB@5rbdtz4-{_l)J}lk$sTlmg6LmU=TnhO6doW!k^3>`NV9-@^4|ckVbt`K%_t&jP_HeF> zEz%HyA@#iLu0%P#1_@@Y&D3GzFDV!r-h=+1@)f;)oBMA-1L`b@F+t8K61;lKX7Imh zMdVkx%3w@F77ELGa&j_yu)Y2FF_E5Fe%s@THUy^E?-7zby?HQF#^U3zpBcPmSvhNp z<`lHCuhHRSE$l^sqVEB&a}91!@%aai>?iyZxvKv~7?34L)RZ~|R1Y<>tpnV1c8Y22 zd|}T+f`hH60Efy4<{HFKQ8m~fdRtr&yPYIxOv1e)-udzNI6-Y{L8Yo zDOzE5WUPkoL594(`Pgjs=;Z1jiF zrMKh{N%_r)Gm{wvIzeg%O^s|b<#PlOjGobFRODZJ@UD)PmyoGRL%e0USIb^6lG;6` z|G$~QuzlF-W=Qxfj$G*jqvdu)f#EVY|GFfG0T#lh{?YjDlD;WbseE!6#g>pa)(s}x zSYAFLyu!r-l=5WyloJ1zmnLfJ&JvqWbrJd+NlLlwdEATe-(}yW=VH2Yqe7wmytBT{2*&q3i`hq z^Ts#J$@a}XWpLy?J-O&<<=j}|T|XaIE*k3q*q5oJ_RbGGhJ6P`_bB8m*SR#ma3xKo zlV|Qq#D|}Y@{CuW_9wKEY1j1D_*b`EPX4aZ*c#S7|9#GxoHzrpqDr6*}a-q35W{Yh)q=*{a)QzJ2@aZymqLlvl%-lDRo-c(-z8 z(xJH?S;|iDQHJ-kA70$#;BgGef_UHix&>9IxO9`WnyqXAnml@bvQXb zeiA%pfB%o^3oT{psz*JC{9B+nnL<3fQWipJz!lmM-@B z;o07~ao2E*9H5ReP9@7nh#sjeiHm}`1ZKv*b2PC7n^*jFIrRb?)|66j_5%tu2nFLA zMDdHyVr#xwbL82+6h4y0j**`}qhNqlqI(1u6cX|!O?yHL;a+s-xqQ>oga-2NSWT8^ z<2@@fFY7M&wSoQQ+5V#EoYyHSP6o-(|2io{CV^}uWXw>kFK)ywC;IP%pHDzfiwrH5qP9U9t%nhQrRiMX4}P};4egt0Qa%SyPJ#THnLz)d4PXIB;kbL1-4 z5?3s=Pf%67>&wKQCsTFs6O&I%#JDgO7j%ZDhYa@@J<=kwCv3TBrOh!(3`Opn1Hm_< zT2qPwLx;UM3JRiueE`_evB}5&`HI@<{$ip3Sck&|84;g>O-|*{PvvylzPiNZaF-e{ zK8j>hfeUTJ+EP|EYW1J2VA@&It3q^)Jz3er?AdgkW7mOnOjX-_;Mgcol})R5>_5#a zQ`SK?cCPcb1dB#dTg;b@WCk$(Fyv~n01m9q{_KB!aT2Ya*BdxioYB=b>qxEZQ%b7K zS2DorVtk+Wci;3gVfcS?Ihn4Q#*Ji3@FT72fb-z>M1%luG*Q^>2yLxn*Ue{Xu@$fu6B=q)~Xi2~;ggMg`6m+DNnmp;>(x$?B_FJSgq3&=R+ zmpe=s;j%MbqhubnTA~u^)$@`9b#rqwjOYR_#XHhEPgy0R%ia^;iO+s-|f##7f5buC52;JfV7!ZcX_BBvxU2&X({ci6y8jjf!-v#8KBpCe^o zeL^{_MAYfO?&o8!Vw2{a?wk8ll8x-1rM!q%V?i!9DANdMikm@}kU0?30(JR{uO{+4 zrPUeqEiElcn{_5G5$yP;3!k*fz2r%5hzC0pS9gAs#|KGBnjp=Qn!pwvHXgf%g+Yov zr>hn8vxh$#7PdpO`R#%29AOOb#LR=~!CMR0F6j0hTLG8_IG*l;C)64;hT9=(h?`OuI*uz{4hy*Bc() z2Z;zrV%+%(f!8^e6=6Nyos$|nYOgrA4S$>Qwy#41Fi`f|MExfg2T)7>%AOW~OlO@X z!7XCC>6rVdlj<=_Ei=fGAeC&-ncCpe#qT90B^FMtsNz>|zsh!gC#g|b6LZX>?lQG8 zxKmSIP`9wldRj5NVsX-dMiSR9$n^76xA>?s2 zI)J{f*s=mQSYZ6U6VMfZ#8doCas#hfzX=;%7w6trT;yloVur6OvJzZEa%}1sl)$^a zBll(0w#Z~bw}M-RSnOix@^wS%>FKFap7i91*uc0*D{~j-`up`KG|_u4?Rs7zKal7| zEGmsM(*=P_UI;LwOp?StV$~|2cE!vc#2ltNMp^&&rL8Rz48NH>ft?~^3rgrmzTBtC zmY}TO{=S#Y@IAiN<__d?d>6E4jrwm;1VncRS7srBj*`R>#Foc7b!OFZeK8?^W%b2(4WVI);9DeG$6NJTLb?$8|$!zrH;ss zC{?wA5mj$kOq?Syzd~Tbo=o3j+=WvTc9vLb5s;4 z2Z~8?RGH4)HzR6Q@lT7^n>bvROO*;G;|qS8NykYh|JZMU7%Yp4IaNMDMeet3O5dNF zpO5Se-0uP&coO@4{b?dP{b~4~T-+zVEp3Q^E(!UK@H2s%2tC6lh{#bh97m7a3|$PK z`N8d1l>9dN;=z@n{q}t@B(wsFtIef);q(@j=B`nMHhL#cnJ-8QhpN|hy2CnpuMYHa zU7(|E^4HDX^i80dN_sogxCT~CO6f{+racM0i73`&=G6(Xr@Y0xre z_nb8n@FPs^zoX5!Y`O7KD^!k|f%|v9$G@Gk`to5QE7cr-_6Wj`P&r!&H17On-_9H+ zLoryPUurgp)9d|Hp8a`LA=I@wFyU#5GW_4xibOX(soK4bqF&f(nE%a4cRZOCEQF?B zkOKQcn!Ds(`mQtJ7bGI2xj4dc;~7&y(I~<<#;9zFT~_U$^A*onOB!P^`_{oh%&X0C zs(WR^V#yXf!I711#!O3-?VI7ot8&|{>|7cri+9xTPW}pfd6*Ga(!`h43H&}e>2j_F zF3y*B`dJFn{l1EUEqD^&_>U-@c@cs`780-;UJ@%xU>cpuIQc)?Rm0y6jHI(LYoJgh zwNtNik{Aj>GwzDfVt)|Rk^k27t9WS}g0`S;n7Q6_n#qd~4df5JBK_G3CCzgvpcr7lG$sA9-`*G8-B?ndo8o`vkKudnZc2o)EBqBFr2?jZQ~i=~<<`$tgk$s^>d}*3g}=`#F3o006C80^C^YIpnj@(F&ARWI~h&t26bV z=?_<(3Ov~xX;;$w4Lz_Ft3fmAM06w$dj9|vjCh5s-+kXcSes{tGR62y^^PcWS2I!% zXVh9CdfAkmi@3y6rO9^###DmO@heYrL9R)OUR7FKYj$=|JaUBh^`LBJ!r{B6*m0F{ zrHGR$%c^IwVI^nOct(v7-@5^yJb>vxU_a&Uv-t_&(x4{}Qj^4VeyUXx{(n8I3b?YE zcnTTp6TX^PNDLGUsWKHSe__H`Wtkdum-QEykR_9P9F;22D{0uCvXsUoM@!kfp|wd* z1xts>-rL)&WaA25@Ykio^VXO4&!hV`V6Q&?EpAo$p|xAt&MEeNEwL!D1!^QH1HO2P zPVD(iK4q0;6U!rHQF>1lYUQb?&Vt88sV-w){NQHcS9buw6T1Fd{YZ&myy6w(E@@S1 z#OOKKJXjI8RVKR9H83!!{h6%~`oOS1A>YHXGyisjrpw!i*zJ8!-66-nM_&xpNl`u8d^RgU}RI!!-;h@DQhr{a-c@|`zFUqunKLmj29B$=5K=D=Y<}!~Y@*OF{Z=-p z!xm9W8?3Y>xB9;5gkC0e7WBiiC8j*|IO|qfv0!*j~3x%I12dPpE=oAL;du&r7_p98|8CnY+&mVhf&id`*Wy-PN|t?Qk-A8==WYmHeT2xS0- zIlGKJ=$HxFo%K&gZ=FXH8wnEl;V8a4QWzHvh5FP$SjL^OaNKhw9KosBUBlnwdr!$N;WtP>XWU z$BH!3Nb*713zq6v%MM$!8oJEl=EIC!G9jkf$F4_;`fzLn~)~K6>^;vQmO~(XQ{UTLlO1uSA8063wA(-VbCM`jS%-fsGTvydh|A$7Kwh0=Ef^t!V^yulSn)ey=|MsV;j z#WRoTJP3)f8BB=W_+6i7)Yow9>1qWVb{0N@rSo? zcsVponpJ&-TI%U+(YvvsP&zBF#i86fNWuO_fb2PU2S;82q)KRAgYIS8!J-qaCcWAEvlaO;0?d+ zc%(WXi(bo(P|3FoNLC(aC*OZBvbXlfsh$-D;@v_HuU{ZaKB-S&*?+k5Hd<&>jXaF+ zYH&z_|3=uuLWD{5uA8mJiCr6c`8?}Y9*;?2?&aon6PSdlUb@2))9oT+uh6mLCqSs0 z)-@f_+OT>m$#3@_QY_c(2PSx|QLmM&kkWp=rrt@qaYY?fG<=>pQqYKdT8XWQPa>dn7tqoJ5fGR zDcNky30#)-T~fXu#(}@MYhTTP%^2BzL7AzDq!Me!LLvmeJ)?<+Wuzn}HXaH}=uRZ^ zb@(4`jPfB|CqEjBVzsZH_pDmAJ|g$ZJ@(Xp&Gr!h$zuwqJ&!quL?#QYI(sYIIBC}s ztI}L;5o$f1M$-8&-i4WiuC-*Usa$+FfWls=;mw`VUl)f^^@5iDW_JxS6D55{nHx+%p^$w|jRW0DCa% zMS)l62?-LS8#z;m`gj0O=S7rGLb6X$Ranr>)nVcs{zzc9laZ?md0_Hv?28i7Ah*)4M>RI8bUa z@TVsvl5b21k@yFx9eLD~iI{HV@o$XF8T>wnD5CV$nZ{cK!kpJv|Bj4hOKYY1)B&xn zt?dM-K%G;0a3X_L;5S(^EmMD_Fo}qmtYg9YrqWWEch)CpcOcZsuph_*@I@XwKxRyG z5`Xft|2SURtXuSjWxScoBls%VH{|+7L@Xn~Ed@=BBcN2D@vp)~Vy!E{jaZ`^9pG<} zuI|8!84om;TBNwRn1OIwqzx^C@Qiz#ijSO?rIb%6vW*o$2#oFuLB@lFg209{TqJss zhUm*vY6;7U^>gdm)L2?4RqZ~lU{HGexu?2qECEs<;>~Pr=hIsPH(QUB%K;TuvR<<| z!$Mi_67=xsF7zr0kHS8IU<8H5^!0MK1>s9m4pKYF&m8CR=(H9)pR+y|$0CEbUX+>t zRS%<(8$>Jyt&A~0{1qjvCw^mlitaH;kP_u@3BsYP^jFiR#aImN^a)Ot1M-#-_h(%R zc1<@}|FSB`%lpL}hI4> z^}*K>kic>7)^8iXY`l6_{j9lvssas2HYB*D*G3clVO->Pc*zX^mfhyU2$rMJ8MX=9 z)O!=>c&Vbwb<04dj_h6D<>!oD6@*JQ6CoX>F)Vx?~_r*>QqIHBGU zykjx0ut_p>fI=m{oqpEc(G>UGiDbI;yj)5O60!9h@1WX9TY*OE3lkn%|8B|az1N+q Tk!FPBQviszkyhWi#L^843rIIoi*$D*Da!{WB$sYhK|pem zl+YjFf8c#*&cwNMX3m_MJNL|eo*SpHt4{KS;Ryf$Ac1J87(TY6|0{&}k9Ga)hJwci z-&RXq1@P~Gxu~x)<55E7sbS{xIAiI51xtx1FYr-F;0w`FCD_Lzr6Q!uFsFP20I&fd zDvHK|tH=34IZO`i!(kh(4*7L%?Ckb%4Kkv<5<;359=>=hY70SADk?I?uL)L5rL+!d zs=c5RQ^l`%#<;!VEggiTU+^^86lg}(7IW=ITm!aVPB~XHi*CGHSa>BSx^*Xesa?Q1 zXKB4~{od&%0n`6Cg|ct63}C`z6LGk)>XAGlpUv*}1a0yx^HlBgLTr=SIN(&1$iGN9 z@;$Nu>8|#Xe+HKdo`ejx5on?cTx_URu}=y~Pi7lTqO*esV6oy|Vfl+xf2Wm0;&V(` zA{*h)R5%OK2u%tPpr@n|X^ta>@KdUAaT}5*hCr6UC$Fuh@BDG;&4-|PK&&q=6s6_b zNly~wi*PzgJBb6yptNbW+O96bpkB%wHjFe!NMwC|XbMddPkAk4Aj6H6Cu5U|N;i|D z8jG+OmNX&!I{OUJy_maD_lf?H$vDb_)NpVf`Hz9G$loE61R!j^NgCK38eh--$w)o%tpbg7;j`iEn>)ED}sCM z%l}@jdEnVR#fW%*wrm9C!L4kZY${;4cG^mb=fyf#hhtkYu` zW<)StaY2&@$5SZX3nDf3E=3TW*dfP^lYi5~pXrqM>Z`C!{`7ve{i4gFK_+`#ZZBw) z8R=~!jxf-N&`sbkuJ+L~DMn{qK-F-3pBf6TyqUl-ZwGDStZ~G3`CMZO;`&#Y7;a#P zQglAkrf_(?tqWO?Vo2dTxaD)%eter3=#(xC_g0S4nRJ#@T={(4U&8w7OoZBJvZun+ z=hENgR0{UQa0+pf>oN52kR(WYP|N&joID}qNx@z{9*Y7_z9?U6*}}=$)#LkIpz*S* z^VLW>gR;ziBz)N+>rri$zGE-CzQqZ$`}X%(tfN3PeOn&=9MmFG;`Ev-trFf??EEa# zxSkZ?^AOs=p&^Yi7nLm4uQ$Q!7qRU! zpOX15=TNG5B82|MWn2ifjw0r&I9wFT00bHdQspKE*?OL=h8gwZU`!iD_~=#LyI zV=c`Nd<&c|CzweN?lgaX-yajccfg;S;Mnxi z;(Pz`YgH0oTnLeF-P!dL)?P8WQ$Hj0DPr%^670>4*HMHz$*q_oiI%BZCQu1{d2M=g z&5LZ}u>9xd6-6NFom8WXbE*~&bpn^s^qKqu0q+z%zFe`SWJj?bkGnk@}9ak|} zdyjQum`<;^{ZgjL;9S$??ItRB&}wv7sr0CT81V}mroQWqM)gr2~?8PLtBw|QA)BL?*x)Q6x6`?u{9k!^-P-I zUMY@y940LRVoYwX+iwUPq$4;Zo1v3RulYF(px~@8zu&dpeXoZ0-GlzFtSwlorG7OA z;&))P(xw^s_3ojNPISG$RLKL0>Qx@~f}LBxOLjg5zR6rVX-t;(6X}OsLCS=0yHQ%j znc%rM{p%sR@xj}Wk94H$Z%_Ulik&&P(i7f)>y_5yws}Kx!H;O968~$UGPe>!(RppS zlqR5-BLf?B!UsF{43tf}M~2P=kt>Uro)F^>V>8n2X_ICjafUcATnK9mw8rnX8=jS} zw=ozk9tE3J-IxzCTFDG8t&aO*m8IM}YAk8?V1t9I zs9wSeLNoB05{s9-i+Mqlw!y)6v{@B$yU#Zpgy(4{cAA;NHl~?sEQs#O#OJ;kX=80~^uYQYsKwG0)}iN)nDV(1cU+P zKd5cq9o+a?I$jhKuUlzNjFNNGN7%cvjqVnAdy@ZBUOW2~A>R2$_cFep4VdT-CfVa} zlfa0+<%$uV%}_qn;EGKv1Ju!^Jw?$dJSz?|6Qz^2GEAa-GqXHQvfotT&`vQ(&M7rN z`?V~4|MqpcB0`oEq*rvZIye))^~EvO)YTD{Tv2t;42yaIU@Yc&C6n3CO0&SHvJcKb zi787i04cGf8T-D~`KX++6R6?d3AdRvit4VtLQO!78YX~{HOm&fN@i2mi*RF3CjBaF zc^K{o`kg2x(tih`$UOGc~3vFXP zIb$z;cnW2oQ3F>u&dFJ-r?$D@rr&rp6_(CKj~byq#!EprMg*%|19~mzT=ZLmQNG9i zZSuWIe{V0ckERcg`6j7eRCC~6FES|}Kw=$@Qq19Fj*xF=L;?$;*FiY~7b{8iKmruljtOY!tFk_eTtnAH&32B*^^ zJz0ngGe*b%>NrM6K`N2twybEId5M=#bt>J(sB4^a_&?8s+U8;Jco7_aFELb2->U67 za@b7PtqpT4O3yEn0av1T#pM$nbVNKkeX~i6*0LYey8gKvIx)^L$Glk}=QOhg7sIRi zW~8=a=y@xC{GRP_TC0<2xhI)Sw6vcsA0aR6NLr2!_8l%|`J{H&fX%SKitpAU-{eJB zN}Z1v7)5U9(bJDVg0p465-$EBq?6OKj=+TJ)T6Dh(W|N_lpm43=y0{**p^x+;fE_6 z;8gnSlpyohDc8okiSW6u5t?>#9qPadl|P_5=6Cfa>&8{wMunSry|e=Rh0w55x5m|@ z>`Aq(ycrtlarkEJ=9|*vJUO?QeW>}(F@JQ{{Fb3g-x?FyA6A^g@;3U1CG>K|2pOyeeX6+#sZi>pJ^uSSPflMwe!pCkC8=*c zYB5+gLA-g2Ak-u2LgH=UbBzD|8_A9%&&iukR_&U)X65Va3Wf%f?raxO?4@vU3Je(; z+wmrV5yOUgh87R?-=s{Ff{O329q%Q(la9nEK~0VYpd(*tYx*QI=o%G!3VO${3_rH6 z$$Yz-odmU%HQ803^%)sb(>t<@^ zBOgW#BYNc+LPfqp4~uWfVe=7m9J#$V=KNPozwpvF@eAY6Y7 zjOh@0q1BUbpMQ~}ebVeI^bpv#qBrUIDY>Pe(G?hTw!7loUTAl;CCbY&PJwo+IO!eX z94W&+-7{!|56LaKWh9b%e+pkDorVkyPUQvIVt*fbrXF_*WrNX6CpvIRFS;f@tVwe~ zKBuwy3PeKA(l4Mw9@BJdP@{>_jRCht%YD6sl@AA&1ltPE@86oQA8O5XR4ti;AQk^T zbq4$;=}h#r1jJ-~uCQUecW7fj-}bK;QgRbMg^&_CPOZv}BZhc&K5n3lXWqf_c6kwM zVZyT-S10uhRtW5<&*1aw zks{(8nVF*Tj~$cA#BLSax-NYpDTd-Brc^d;4Co9$wA9|qWXy+Y)%&pEzjxhvZMRu| zuQBm@BUv*`jM4EK+7oQz1vuc<0==q~v|*+G72x9pTGdiT#~`JCwhQCriBG7HI4&q9 z3(o)RTa}ezoCrawhMAsJL!XRlQ|^`829Cm@4wk@9mcR*WB3L$CIaPYSe;?FG{t7Eu zwRAItBE_jL;r%Jv8@%U|$LuZOD4_$c90advy~RnUM^i#qCt&|TiW4~ABnOKmwSzAm z^G*fZ1{ChDdZn){?T(7Aqj!B4<_LR8NJKWD^0PW07!A!j;4|#YtQt2t``v$ghT5Ie zD?Td=^G?aW#G^}!W(TT@%5AFLB+E&m^UDWYKe4F;mJloqRBzzpDEieGch$6HX%J}B zZiWggm@jANmKkw^A#MsPtJNc?;7S-Sxl-uMe^x^O*21TI$fLewtncHjW*PY1R zf#Wo2Bhc@>FtQ=}8y7H)V;^K%)XM69k+E%CIpc;ttXNa4w#uAkbXS^Vq`{F(rt{0> z(Shp!rt}Zi<5*>LC&kc$tFGG$=`t=UC4rriQBlvaC2*d_YN*GtJ)N-0r^Q5?6wO7t zWAb$QK^}lF&LC+`I}ct&`ybJeRNbU_>zbnv+{s_^4oY((e<*^(4&4h^HjtlCcy=tIkU&9Yc>-0 zf~IqxbXtd>PUiqR1vo&hZtSAi>-!97D7o2w#@CUY&n_mor)(Z9Ero!WPwy4+_2YMOfFAd}={Sw#tqKfaVl0wA zQR*e+DcHW0=38=>cwM?FqMlr=l`c>c9uKxKyWKI@#0A+L_2OF{tf7(Ua}poh;W-u7 zQaLuMliT?Py%2G0)}cil1tMbkeVK>VqrY*1rt@kpwT!+G77<a}&n|&~7s?^A-~k!oGaV_m=QZ#nj%abqfpq0ewR1B{nL>(%x?qv_4GHlw zAJfWkNQD0BY2W1{;*Irl`ADXpkhtqiK36IU|XT0fx>y$6h&Glk?c*nd^hcZtt=BvW5(hNbgTUk zN}b>2OO09ApQh{BLCL|knUWn1+dfuL%5|KyL$j}3;g#t%jpS+hZiVlnJo_mA#&U~W z#c@yGnly$-iYz+ZNgHL{moN%wOXs2mHw-=IjZ}8xqQpl-L!hUkacP%|`@nhAFrucw zDhTzPYyLLZ$vA&D<2L~;0wE9WuqKs70nqu;9Vy9MDD8~6$+KcB!TvzPK#$11Ah`-F zT%r@PlBD7Pgo3#|J7Vtz-~@7;oSR%w)zYo0AM`Q~*UBTEut)UHKrnlpl-wI!dR9G- zl425&U$S(G#RQ{y-dv|Y;%TlJ@$B*c*$|>tP7u_^c=*a?Ch}eaS#OqL{4!kJyg?#Z zpLV^Fa+$LpI=1_@!u-Qm*}KFSIT@hi9jJmGPIj@B_uFOyPjXCBRq2AfSO0N-1Kk%_ zO3%VrU&ryGu~y;Gv(xacVPe-iwEVUu|BDJ0n=u!hJG)Z3t!`V`GCg>AE}5 zwraJHI-A3*-!bscC0KFzY3W1DLG{mdE>JC<4aPzXykNC9NF(~OK%)q6nyC%Y&+=@O zm;=HvqI?9!50VQ$Ojc&}pU|_hoGxPdTJLvzpM-4umefQcV-0w35c7h+gqb#s{xiW) z;@tES)W>-64V+_^Q}xISs7`=beA+q*WTZY{eNtt5jFPT4?-z%~z$tLsf=*jv`>pU?E_AYgHv>F_t8SKz`C4;B`tcsC4SfYrOj+i*b65 z)b^{d2CJZeBC#U~T~$o6!H?i=g$S{YT8Z7SZC;hwF=mNe?)M*{eZ_rMm8Y4%`8jBnyZaq7bDOLq7Wzwk-mjOpxGz2F?5l&mhrtir=8zn%P-XXYCfsiF&a~C; z(l)Fu>a;cdH|sVxQV32O@zQfuG#q!_kuf%4%F28;J4w)it zt*_`-les(P=rH3la2blJz)7R6iEwzHcg8!X+0oL?QF39*ufX3jN=#2uN(4717lypV z+Q>rLzH$3%IHvQEHD0@UF}SE6vCs_PWLmQ8o>rX&L^#23R+rurwotC3r3tMRVg$M4 zW`$6a;;^)qffQb(r7)zmS8lr@YN?0f-{ibjPJ9ZT+2S4no{oQy%&!QLtING)`*ql5 zu15$Fbtv!pp^xMo>X8 zf{pK_-Onljr4gvEx!5aI)G_l!yIGFKJi=Z-`z=|3vjl3-=YyQtVo|>EK`y}+lcy!Z zybN*i<;zsZsEP0W=5t=Nt8}uOP0kwQuO=KC$_l?8QJu>&g3l$w`AYfXV=2c!%Sg1U zt<3|g1ApC8)dvU+M9xxHQ>@pkr3&?hm=4*~-O1_n%*^NhOUU8ugZ7lw-cLAd+ib}B z3$0U~-SOlc+``CL5G7pKAM|}jjJLyCBNBl(<*>48g8nCDzBG2$Dm$HcH#MW)J+FssyW$C|kFBz^uh++R|b*)KnZ4t%>zr+9g2{P{ofv`5fE+1GP? zWTvL`7gRK&LS)RWsNZYV8!Y-K4DP@yD_5(jZxdO6Hx0$xL3NyX-JcVmM^xJ}L(gX9 z_GJfD2b=I*n@u99l*sHU&gO0ATi*Ug&Ovo9-I0HxI1%*F_|QmlJ27(~491gg+y<+i zHvC2W=rt;Rrw{JzuRvwcxa0yxT?mt#39Dpf6TN+LZS1pt!>*y<=cloO2~t>-wE{EPcqz z=6Ql{C^)n#tL`-)?h^`Om`WbLSc>bj$i5#bOzg#J&>OeIEQrS?rXtL`~Cfon= z2uJ^ zvKFTBbg9!!u7jCfI7fKUlt@=1ad%LP_-df==(PjRriFxb6DL&8pAy63TM-x;G6`fK zOTz==%QGnj*I~O8o1aq-_gvtvx{E+XWAbPGg8Ds@==aYjdK(-@Ib%B-K>ouYK(wJn zqoZ~&g5YAIY6N6Q!BoNr$otv(^|~i!M5K{Lim%}Ypjywl1#_@g^GQd zPO+mpL>p^NXaeM#($NA)8ga}?P9%eujj(8V_dr7YJ2V?s!XTA+qdUvfOI;|B1 zv)3MJ%GL@cZP9c+tW9jDgo;DG3)#j;VTXm_lAN{%>apuPeGU{e3?^YtakNWTy)$^@Qss#;= zwvdr1`7y4XLsnim&N#vbC5kt@<+R^P4{;6w9bLi1EmM;nU4rplnuAdt1%2e}POY#4NAMD?cZH;<=w#Upn!evFqI5IBC&T%k z4a7{88p0a#SAC&LB0Kkd-@|~(Fqe>a8PL1bYd+_~Hm20J@K?Z#airr9P~`GQJv*$; z{XG8Bv|-nYW;(P!xGB3*NFN{AV%9tAR&WKbe5h8F-ccY|3!73?!i5< z`V)F28jtf!!##2aIo&K=I1Yecq-(0Jb7N^&u|uCE1t!J^ zYkEx-m>}Oawe3qD=Ud{nliU8NpVQ~PBRV_%4bha3wuo$*^7U@e=7Ho!(&NzFdGFm! z=cuoZQ}oR17(Sk&^X-0;PcJ~t@^3gsu)(nbd;@v9q!!}>$UV0siE3_*m0j~#N6Qm~ z!C@C6<#QXh)1b{CkLt|G0lDSZ^)6f?YbB&Tg;0tkM1LM4VP1Os?Sc{`c~9PPwkLh# z0R-fhg*9gds=M(mh8x+^Af~*GlkE8s-~2N2gI{o>e=;NmALy#OzTsXv46n`@T8_}| z>0_EKK8!VjiLJQ@%xnFD6V5MUAGrME#2EK2rpJ9Bn81A>J2g}*Ce>`OZ-u+g4m#Z4 zbapgmiK-Z7dUB+RL0NmTrv#%|6wY%`l4UTaj?>J^YDd>8XdB)lXU)pEQOe8SYi(^( zC=fw^dlIX=k?s{leQrtt@VLgxZqCnu^m69h%O0r z<24vIi9Q*5cn?8RiG@byORp&=V>_@B+Sde+4))imk|h!-ldZfbF+v8sROVn&&{$%5 zsPpV!X|=)g47%q|ry%u+MA|i#XfI?)QZ?{u@IEPwoBXE#Bqgx9hNjDA3IdV^7E2wzM)P3Q0# zXqv6KFqVDnXdz-Y$d6~BJ~X)W;1(t=>c|#dFW5eH;&!>rh3u<1QX&X`iy|VA@B>g3da81$$D;M$gVa#0Fuo3bFvr2Hd=zxOJ@Pvj zS`*B1y->DP2tg%4mF$QL)yFOK9!a^r-3K$MeHXL9{DIHMo0vW@W726aGwfU{A1adf zT*}N{F%n72Rc=_G#pb}bMAgQ4Z+2yPkUM2iL$U5=|A&&{^&4k#?NiTFH^W7`2E0qY z;Ho_TFr#YoDvxwWEI%Dc+{_#a=BIATOhxS~<8$f_hp2QP$4pwW^8 z#28I4%w0nNO*DzvLu~_P6#HVNjwFA{i^$WOp~u3}@Gr%)(zI(M!X;YXCwUI^=CIF% z%nul*CJPmD5@986g;x6AH8BDKt{mlyh7}i{)$cxBm>4jtd@ei2mQiOxnne;v2ROlr zQM#MSQK=5~$3sZ|ku*>F8^0p{^>^(i-zp%$>z9jCU*tLb-SO(AaYY=ov_Cqkzz&js zE7k;xtBZN7nu-;@Ei3wC3*Jqa!EeKtiMm3u&b&!h>$C=swPO1T|0{Klw0w7wy+t!F zU;9aWrG;cm2<_71+9nrcsr?G!y2K9#NHHXt*;Bq>!UN9)_0WG$nAJ^WS5Flw0hdQo_1K{F+^(35PC}l};LfT?yYxD1NPu`;J7pPl>fiV0*Xg*2 zaYtAgl{ctoJk2i3{i?k9O5RP{FGu(#X+DP+Cqr7{(UluNR9Ws_7}oo^#a-fr0hQeE zHytYWreLlg8sOxXp0z>0fhXXmUyOtVzyKG59Pg!qu|}N7UB-UuotU{c7nq6X@8_nMFCyk`hKG z(K_5_RxxTBP82Zeb$zwMYQ5=VG5YJ0B-T~6)yUDri+nba(LQMlvwg?-7Zp>{m&Q#b zI?JJi#}e(!iN_=yL1Br35g*C9>|B;#gQef4LUNZ%(|#F3+_uTyyO*OK3N34AiWLIr zgvE>gI9WP>tMbEzNH{ahKp(K69f#Q9b~`4-j>MEkCWM_{dWI@z_EUO0Hy4X4qddP8 zZrQ~n_pSE{qK2?McB=03<9)ExTq%5W7%KB-rs@*EM>EXIF8Y!WoaX&%K7X27ktrgz z0x#(xyTRb96^!KqGOv*yc%SvR&-_@GWpeFcr_iTMoL;JX{BIvPwNmt?i!YfC*k0rE v(^MRN{-Rpp=Ssh7C4-dY|1%9G{38GnMfQyU_mb%`lo0??)m3RwvWfUVuGJ81 diff --git a/agdb_web_next/public/images/rust.png b/agdb_web_next/public/images/rust.png deleted file mode 100644 index 98df9663ce8acdf563df77095ac385459077c91c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14517 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 R8}ZjE0H*Z-TB~9A>|YPXM<4(I diff --git a/agdb_web_next/public/images/stackoverflow.png b/agdb_web_next/public/images/stackoverflow.png deleted file mode 100644 index ea748b759f671ada1438ca854af0b7caf656eecd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6491 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 diff --git a/agdb_web_next/public/images/studio.png b/agdb_web_next/public/images/studio.png deleted file mode 100644 index 2e6534c8a7c03501a8b7ad2a9d57cf52d7f022a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8234 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 KM1_*&oBsvS%`&zC diff --git a/agdb_web_next/public/images/ts.png b/agdb_web_next/public/images/ts.png deleted file mode 100644 index a3c8547db27f5f95c17cec9b5bc4a10fd831bdab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4301 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 pZE`iMfuJJ7#W!9<8@u*{|`5J>NNlW diff --git a/agdb_web_next/public/images/x.png b/agdb_web_next/public/images/x.png deleted file mode 100644 index 83550e54862998e7b79143f7976182223bc92a05..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1727 zcma)6eN>WH9EKo3OZTFon=t}0)XHY&QWnfW5GbrfEj4XsYPzMFs5A4UFavD??`t!y z%nz(=eJpi06PIZ;F*9{*>Y2xwM@tx%9m76mtzBB%-@Wg-_r2$NpXd2KzkAQQ#hW(@ z>}*|ZQ7Dw1NXV0buO5tt1RR*vf8QQPq0mLifq|Pvfq~St^gW5myAx0-4>%8I3vX^- zRJ19S50~)Q*89iTZ_ElIc1dozMtGzYZTVQd{V#m53$n;r(9!(IAANDZb=->Fir>nC zUZMA9rAabihv^NrUU6+tvX@MbO0%awUzZeC{$&;)9p3a!7>ki8y%5*8JoiH$L?^7j zbI;LqYaz>QKHYl$u`8=bJKgu^))@vS*LCkP(_wxahowz6oqApzc+t&MH>oSd#i(Dv z=Ej~qr;gY!V6Bdimps+c;u?lK((z45jYA(KCxvTrY39bxeMg$2&NmFQUoODxOIg~R z8MRZf)5gY)#tpJd2#ck0wLvAtiz>TVuQbX4(aMVG1n=|})wU#L9RH@!(DdnoUqe$R zR9r^;@Ut%e{-y=K=Buysc8~Nr-gvVxIyt4F8GR=Y*}mtiF?ww5;+B@wuVyG|*DwnM zObCsMRF!S^Kuzzm1T$lePR4E0$-&RMOc-@dq?ZAOm*3#QjYI7Fqa(~83-(7nokQ=x zp8j2lcdsWn7hK#10T1=Y`d0sRt`s0PX~IY;IKm<8Kyy7#W&;qPAqwW>jc5mm;?#?} zNJ62oS`m*Emi_yqk)Etm-ViF}-WPYP){ac&{)~|Xq&^z=u9jS2y=Vp6_jvqo{ACVk zo1Qy&)2?NDe(STx(+T;baE zAbVD^^!Jb$Wtd%~l$M_}F7gRg4$bdwgJ$P5C1UkTq}+A2-{tZbHM7FIbKmZ*)LDw^ z1$vkZvAN2U=LOgH6=>H;W{;2Si5paEjldK1A<0I!K@Br{)|Yle#UfT8hat%rxoZR7){=KM)XV1^OC}g}@X;+RWpc z!Fc9+KLv%>mBg_qOy@Wj;bLZMstalR*F*FPD)@o7a(xw)^H;Cv2PPC}1bPlg2Wr8! zi|@8PAJ{S`KO;DCKfqC!nq{fy+uH&Ew+!oI2cY@6pYoG_s-Wz9GFd^fn?LX_8bd*O znbipwT4Q1XNF|7rG0x1xOBxunicjX*ytNTr`uYq5&si^;>CJ@4^MXdNTrAN45GYJ9 zr|!(bGK43J3_B30AN!FttiFZ+)ROtHqYF=^z6orV;n;@i6&W)BGWZZx8RbSJh{P>p z!naB6a|q3-MG& zB52E^u;DV;Tu9&rCZs&g1q(z6DQJ#xo@|{8(s48HIhazMTa)}a`WgX&YhMLZ`{^#& zb52JotNw#Vi9PdPCdr>&FSFq)dNJlM5X2eGJwbAp?X1(ukg9F!Rk_nX2;3YJ12Jael`}g zNu68@64Yf{9+m07&zIZ!%xdl5MS;?XFD)lGJ24ZzybUVfO6o*EodGHd8z-H>GN&%2 zu5`Sj@9`XrlV!KBS0#aPu&&RS70Zt6B%Pp67~8jP&H0&QZ-nQ`#Cfaze&ya-*4^Dq z41eIww&)c&ki7fVR3W*aZsSg1&KRTy6&c9->EVoMHHM^$(q8t`?s$6bSZQB_d Date: Mon, 29 Jul 2024 18:09:52 +0200 Subject: [PATCH 2/6] pipeline fix --- .github/workflows/agdb_web.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/agdb_web.yaml b/.github/workflows/agdb_web.yaml index 499db1964..768ea0ebb 100644 --- a/.github/workflows/agdb_web.yaml +++ b/.github/workflows/agdb_web.yaml @@ -28,7 +28,6 @@ jobs: steps: - uses: actions/checkout@v4 - run: npm ci - - run: npx nuxt prepare - run: npm run lint agdb_web_coverage: @@ -41,7 +40,6 @@ jobs: steps: - uses: actions/checkout@v4 - run: npm ci - - run: npx nuxt prepare - run: npm run test - uses: actions/upload-artifact@v3 if: always() From 741ddfd488f7667589ad944ef9b24d388326207a Mon Sep 17 00:00:00 2001 From: Jana Vlachova Date: Tue, 6 Aug 2024 17:18:57 +0200 Subject: [PATCH 3/6] playwright config --- agdb_web/playwright.config.ts | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/agdb_web/playwright.config.ts b/agdb_web/playwright.config.ts index aa9d5972a..3a678316a 100644 --- a/agdb_web/playwright.config.ts +++ b/agdb_web/playwright.config.ts @@ -11,6 +11,15 @@ import { defineConfig, devices } from "@playwright/test"; */ export default defineConfig({ testDir: "./e2e", + /* Maximum time one test can run for. */ + timeout: 30 * 1000, + expect: { + /** + * Maximum time expect() should wait for the condition to be met. + * For example in `await expect(locator).toHaveText();` + */ + timeout: 5000, + }, /* Run tests in files in parallel */ fullyParallel: true, /* Fail the build on CI if you accidentally left test.only in the source code. */ @@ -24,10 +33,13 @@ export default defineConfig({ /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ use: { /* Base URL to use in actions like `await page.goto('/')`. */ - // baseURL: 'http://127.0.0.1:3000', + baseURL: "http://localhost:5001", /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */ trace: "on-first-retry", + + /* Only on CI systems run the tests headless */ + headless: !!process.env.CI, }, /* Configure projects for major browsers */ @@ -48,14 +60,14 @@ export default defineConfig({ }, /* Test against mobile viewports. */ - // { - // name: 'Mobile Chrome', - // use: { ...devices['Pixel 5'] }, - // }, - // { - // name: 'Mobile Safari', - // use: { ...devices['iPhone 12'] }, - // }, + { + name: "Mobile Chrome", + use: { ...devices["Pixel 5"] }, + }, + { + name: "Mobile Safari", + use: { ...devices["iPhone 12"] }, + }, /* Test against branded browsers. */ // { @@ -71,7 +83,7 @@ export default defineConfig({ /* Run your local dev server before starting the tests */ webServer: { command: "npm run start", - url: "http://127.0.0.1:5001", + url: "http://localhost:5001", reuseExistingServer: !process.env.CI, }, }); From a41be8c4684ca0030b9fa03691659f82e03940f0 Mon Sep 17 00:00:00 2001 From: Jana Vlachova Date: Tue, 6 Aug 2024 17:27:27 +0200 Subject: [PATCH 4/6] format --- .github/workflows/agdb_web.yaml | 1 - agdb_web/playwright.config.ts | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/agdb_web.yaml b/.github/workflows/agdb_web.yaml index 188f53cab..3610b904a 100644 --- a/.github/workflows/agdb_web.yaml +++ b/.github/workflows/agdb_web.yaml @@ -59,7 +59,6 @@ jobs: - uses: actions/checkout@v4 - run: npm ci - run: npx playwright install --with-deps - - run: npm run build - run: npm run test:e2e - uses: actions/upload-artifact@v4 if: always() diff --git a/agdb_web/playwright.config.ts b/agdb_web/playwright.config.ts index 3a678316a..9716d1258 100644 --- a/agdb_web/playwright.config.ts +++ b/agdb_web/playwright.config.ts @@ -37,7 +37,7 @@ export default defineConfig({ /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */ trace: "on-first-retry", - + /* Only on CI systems run the tests headless */ headless: !!process.env.CI, }, From 97560143c488e3c3ea488edd5bd3c6835165ee6e Mon Sep 17 00:00:00 2001 From: Jana Vlachova Date: Tue, 6 Aug 2024 17:29:53 +0200 Subject: [PATCH 5/6] pipeline fix --- .github/workflows/agdb_web.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/agdb_web.yaml b/.github/workflows/agdb_web.yaml index 3610b904a..188f53cab 100644 --- a/.github/workflows/agdb_web.yaml +++ b/.github/workflows/agdb_web.yaml @@ -59,6 +59,7 @@ jobs: - uses: actions/checkout@v4 - run: npm ci - run: npx playwright install --with-deps + - run: npm run build - run: npm run test:e2e - uses: actions/upload-artifact@v4 if: always() From d54f51ade3bea82c96c937f846e2590ba8913991 Mon Sep 17 00:00:00 2001 From: Jana Vlachova Date: Tue, 6 Aug 2024 17:35:49 +0200 Subject: [PATCH 6/6] playwright config --- agdb_web/playwright.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agdb_web/playwright.config.ts b/agdb_web/playwright.config.ts index 9716d1258..ca168b98f 100644 --- a/agdb_web/playwright.config.ts +++ b/agdb_web/playwright.config.ts @@ -82,7 +82,7 @@ export default defineConfig({ /* Run your local dev server before starting the tests */ webServer: { - command: "npm run start", + command: "npm run dev", url: "http://localhost:5001", reuseExistingServer: !process.env.CI, },