From 6788948d624bd22d2904d6e890b56f0cfd2f9b42 Mon Sep 17 00:00:00 2001 From: Facinorous Date: Mon, 26 Dec 2022 11:13:04 -0500 Subject: [PATCH] first commit --- .editorconfig | 18 + .github/workflows/deploy.yml | 37 + .gitignore | 19 + .prettierrc | 4 + .vscode/extensions.json | 4 + .vscode/launch.json | 11 + .vscode/settings.json | 5 + CNAME | 1 + astro.config.mjs | 17 + package.json | 36 + pnpm-lock.yaml | 4905 +++++++++++++++++ public/android-chrome-192x192.png | Bin 0 -> 22840 bytes public/android-chrome-384x384.png | Bin 0 -> 62143 bytes public/apple-touch-icon.png | Bin 0 -> 20755 bytes public/browserconfig.xml | 9 + public/favicon-16x16.png | Bin 0 -> 1250 bytes public/favicon-32x32.png | Bin 0 -> 2164 bytes public/favicon.ico | Bin 0 -> 15086 bytes public/favicon.svg | 1 + public/make-scrollable-code-focusable.js | 3 + public/mstile-150x150.png | Bin 0 -> 12118 bytes public/safari-pinned-tab.svg | 46 + public/site.webmanifest | 19 + readme.md | 173 + src/components/Content/Changelog.astro | 32 + src/components/Content/InlineNav.astro | 53 + src/components/Footer/AvatarList.astro | 182 + src/components/Footer/Footer.astro | 19 + src/components/HeadCommon.astro | 51 + src/components/HeadSEO.astro | 48 + src/components/Header/AstroLogo.astro | 64 + src/components/Header/Header.astro | 157 + src/components/Header/LanguageSelect.css | 47 + src/components/Header/LanguageSelect.tsx | 49 + src/components/Header/Search.css | 76 + src/components/Header/Search.tsx | 97 + src/components/Header/SidebarToggle.tsx | 44 + src/components/Header/SkipToContent.astro | 28 + src/components/Header/ThemeToggleButton.css | 37 + src/components/Header/ThemeToggleButton.tsx | 82 + src/components/LeftSidebar/LeftSidebar.astro | 227 + src/components/PageContent/PageContent.astro | 56 + src/components/RightSidebar/MoreMenu.astro | 100 + .../RightSidebar/RightSidebar.astro | 35 + .../RightSidebar/TableOfContents.tsx | 56 + src/config.ts | 78 + src/env.d.ts | 1 + src/languages.ts | 10 + src/layouts/MainLayout.astro | 168 + src/pages/en/configs/whitelabel.md | 18 + src/pages/en/features/adminpanel.md | 7 + src/pages/en/features/configgen.md | 7 + src/pages/en/features/filemanager.md | 8 + src/pages/en/features/users.md | 7 + src/pages/en/index.md | 28 + .../en/installation/development/source.md | 14 + .../en/installation/production/docker.md | 14 + .../en/installation/production/source.md | 13 + src/pages/en/more/changelog.mdx | 9 + src/pages/en/more/troubleshooting.md | 14 + src/pages/index.astro | 5 + src/styles/index.css | 401 ++ src/styles/theme.css | 129 + tailwind.config.cjs | 8 + tsconfig.json | 7 + 65 files changed, 7794 insertions(+) create mode 100644 .editorconfig create mode 100644 .github/workflows/deploy.yml create mode 100644 .gitignore create mode 100644 .prettierrc create mode 100644 .vscode/extensions.json create mode 100644 .vscode/launch.json create mode 100644 .vscode/settings.json create mode 100644 CNAME create mode 100644 astro.config.mjs create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 public/android-chrome-192x192.png create mode 100644 public/android-chrome-384x384.png create mode 100644 public/apple-touch-icon.png create mode 100644 public/browserconfig.xml create mode 100644 public/favicon-16x16.png create mode 100644 public/favicon-32x32.png create mode 100644 public/favicon.ico create mode 100644 public/favicon.svg create mode 100644 public/make-scrollable-code-focusable.js create mode 100644 public/mstile-150x150.png create mode 100644 public/safari-pinned-tab.svg create mode 100644 public/site.webmanifest create mode 100644 readme.md create mode 100644 src/components/Content/Changelog.astro create mode 100644 src/components/Content/InlineNav.astro create mode 100644 src/components/Footer/AvatarList.astro create mode 100644 src/components/Footer/Footer.astro create mode 100644 src/components/HeadCommon.astro create mode 100644 src/components/HeadSEO.astro create mode 100644 src/components/Header/AstroLogo.astro create mode 100644 src/components/Header/Header.astro create mode 100644 src/components/Header/LanguageSelect.css create mode 100644 src/components/Header/LanguageSelect.tsx create mode 100644 src/components/Header/Search.css create mode 100644 src/components/Header/Search.tsx create mode 100644 src/components/Header/SidebarToggle.tsx create mode 100644 src/components/Header/SkipToContent.astro create mode 100644 src/components/Header/ThemeToggleButton.css create mode 100644 src/components/Header/ThemeToggleButton.tsx create mode 100644 src/components/LeftSidebar/LeftSidebar.astro create mode 100644 src/components/PageContent/PageContent.astro create mode 100644 src/components/RightSidebar/MoreMenu.astro create mode 100644 src/components/RightSidebar/RightSidebar.astro create mode 100644 src/components/RightSidebar/TableOfContents.tsx create mode 100644 src/config.ts create mode 100644 src/env.d.ts create mode 100644 src/languages.ts create mode 100644 src/layouts/MainLayout.astro create mode 100644 src/pages/en/configs/whitelabel.md create mode 100644 src/pages/en/features/adminpanel.md create mode 100644 src/pages/en/features/configgen.md create mode 100644 src/pages/en/features/filemanager.md create mode 100644 src/pages/en/features/users.md create mode 100644 src/pages/en/index.md create mode 100644 src/pages/en/installation/development/source.md create mode 100644 src/pages/en/installation/production/docker.md create mode 100644 src/pages/en/installation/production/source.md create mode 100644 src/pages/en/more/changelog.mdx create mode 100644 src/pages/en/more/troubleshooting.md create mode 100644 src/pages/index.astro create mode 100644 src/styles/index.css create mode 100644 src/styles/theme.css create mode 100644 tailwind.config.cjs create mode 100644 tsconfig.json diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..49ad60f --- /dev/null +++ b/.editorconfig @@ -0,0 +1,18 @@ +# EditorConfig is awesome: https://EditorConfig.org + +# top-most EditorConfig file +root = true + +[*] +indent_style = space +indent_size = 4 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[*.{yaml,yml,md}] +indent_size = 2 + +[*.md] +trim_trailing_whitespace = false diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..6f1e290 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,37 @@ +name: Github Pages Astro CI + +on: + schedule: + - cron: '20 0 * * *' + # Trigger the workflow every time you push to the `main` branch + # Using a different branch name? Replace `main` with your branch’s name + push: + branches: [ master ] + # Allows you to run this workflow manually from the Actions tab on GitHub. + workflow_dispatch: + +# Allow this job to clone the repo and create a page deployment +permissions: + contents: read + pages: write + id-token: write + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout your repository using git + uses: actions/checkout@v2 + - name: Install, build, and upload your site + uses: withastro/action@v0 + + deploy: + needs: build + runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v1 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..02f6e50 --- /dev/null +++ b/.gitignore @@ -0,0 +1,19 @@ +# build output +dist/ + +# dependencies +node_modules/ + +# logs +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* + + +# environment variables +.env +.env.production + +# macOS-specific files +.DS_Store diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..08d6d29 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,4 @@ +{ + "tabWidth": 4, + "printWidth": 120 +} diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..22a1505 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,4 @@ +{ + "recommendations": ["astro-build.astro-vscode"], + "unwantedRecommendations": [] +} diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..d642209 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,11 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "command": "./node_modules/.bin/astro dev", + "name": "Development server", + "request": "launch", + "type": "node-terminal" + } + ] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..83277f7 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,5 @@ +{ + "files.exclude": { + "**/node_modules": true + } +} \ No newline at end of file diff --git a/CNAME b/CNAME new file mode 100644 index 0000000..d9efae2 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +gethomepage.dev diff --git a/astro.config.mjs b/astro.config.mjs new file mode 100644 index 0000000..7c4fc1e --- /dev/null +++ b/astro.config.mjs @@ -0,0 +1,17 @@ +import { defineConfig } from "astro/config"; +import preact from "@astrojs/preact"; +import react from "@astrojs/react"; + +// https://astro.build/config +import mdx from "@astrojs/mdx"; + +// https://astro.build/config +export default defineConfig({ + integrations: [ + // Enable Preact to support Preact JSX components. + preact(), + // Enable React for the Algolia search component. + react(), mdx()], + site: "https://Facinorous-420.github.io", + base: "/dick-docs" +}); \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..199514e --- /dev/null +++ b/package.json @@ -0,0 +1,36 @@ +{ + "name": "@example/docs", + "type": "module", + "version": "0.0.1", + "private": true, + "scripts": { + "dev": "astro dev", + "start": "astro dev", + "check": "astro check && tsc", + "build": "astro build", + "preview": "astro preview", + "astro": "astro" + }, + "dependencies": { + "@algolia/client-search": "^4.13.1", + "@astrojs/mdx": "^0.11.4", + "@astrojs/preact": "^1.2.0", + "@astrojs/react": "^1.2.0", + "@astrojs/tailwind": "^2.0.2", + "@docsearch/css": "^3.1.0", + "@docsearch/react": "^3.1.0", + "@torchlight-api/torchlight-cli": "^0.1.7", + "@types/node": "^18.0.0", + "@types/react": "^17.0.45", + "@types/react-dom": "^18.0.0", + "astro": "^1.4.7", + "hast-util-from-parse5": "^7.1.0", + "marked": "^4.1.1", + "parse5": "^7.1.1", + "preact": "^10.7.3", + "react": "^18.1.0", + "react-dom": "^18.1.0", + "tailwindcss": "^3.0.24", + "unist-util-map": "^3.1.2" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..0420b93 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,4905 @@ +lockfileVersion: 5.4 + +specifiers: + '@algolia/client-search': ^4.13.1 + '@astrojs/mdx': ^0.11.4 + '@astrojs/preact': ^1.2.0 + '@astrojs/react': ^1.2.0 + '@astrojs/tailwind': ^2.0.2 + '@docsearch/css': ^3.1.0 + '@docsearch/react': ^3.1.0 + '@torchlight-api/torchlight-cli': ^0.1.7 + '@types/node': ^18.0.0 + '@types/react': ^17.0.45 + '@types/react-dom': ^18.0.0 + astro: ^1.4.7 + hast-util-from-parse5: ^7.1.0 + marked: ^4.1.1 + parse5: ^7.1.1 + preact: ^10.7.3 + react: ^18.1.0 + react-dom: ^18.1.0 + tailwindcss: ^3.0.24 + unist-util-map: ^3.1.2 + +dependencies: + '@algolia/client-search': 4.14.2 + '@astrojs/mdx': 0.11.4 + '@astrojs/preact': 1.2.0_preact@10.11.1 + '@astrojs/react': 1.2.0_biqbaboplfbrettd7655fr4n2y + '@astrojs/tailwind': 2.0.2_tailwindcss@3.1.8 + '@docsearch/css': 3.2.1 + '@docsearch/react': 3.2.1_gp2f66hjvprqsmo7rewhrpia4e + '@torchlight-api/torchlight-cli': 0.1.7 + '@types/node': 18.8.4 + '@types/react': 17.0.50 + '@types/react-dom': 18.0.6 + astro: 1.4.7 + hast-util-from-parse5: 7.1.0 + marked: 4.1.1 + parse5: 7.1.1 + preact: 10.11.1 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + tailwindcss: 3.1.8 + unist-util-map: 3.1.2 + +packages: + + /@algolia/autocomplete-core/1.7.1: + resolution: {integrity: sha512-eiZw+fxMzNQn01S8dA/hcCpoWCOCwcIIEUtHHdzN5TGB3IpzLbuhqFeTfh2OUhhgkE8Uo17+wH+QJ/wYyQmmzg==} + dependencies: + '@algolia/autocomplete-shared': 1.7.1 + dev: false + + /@algolia/autocomplete-preset-algolia/1.7.1_qs6lk5nhygj2o3hj4sf6xnr724: + resolution: {integrity: sha512-pJwmIxeJCymU1M6cGujnaIYcY3QPOVYZOXhFkWVM7IxKzy272BwCvMFMyc5NpG/QmiObBxjo7myd060OeTNJXg==} + peerDependencies: + '@algolia/client-search': ^4.9.1 + algoliasearch: ^4.9.1 + dependencies: + '@algolia/autocomplete-shared': 1.7.1 + '@algolia/client-search': 4.14.2 + algoliasearch: 4.14.2 + dev: false + + /@algolia/autocomplete-shared/1.7.1: + resolution: {integrity: sha512-eTmGVqY3GeyBTT8IWiB2K5EuURAqhnumfktAEoHxfDY2o7vg2rSnO16ZtIG0fMgt3py28Vwgq42/bVEuaQV7pg==} + dev: false + + /@algolia/cache-browser-local-storage/4.14.2: + resolution: {integrity: sha512-FRweBkK/ywO+GKYfAWbrepewQsPTIEirhi1BdykX9mxvBPtGNKccYAxvGdDCumU1jL4r3cayio4psfzKMejBlA==} + dependencies: + '@algolia/cache-common': 4.14.2 + dev: false + + /@algolia/cache-common/4.14.2: + resolution: {integrity: sha512-SbvAlG9VqNanCErr44q6lEKD2qoK4XtFNx9Qn8FK26ePCI8I9yU7pYB+eM/cZdS9SzQCRJBbHUumVr4bsQ4uxg==} + dev: false + + /@algolia/cache-in-memory/4.14.2: + resolution: {integrity: sha512-HrOukWoop9XB/VFojPv1R5SVXowgI56T9pmezd/djh2JnVN/vXswhXV51RKy4nCpqxyHt/aGFSq2qkDvj6KiuQ==} + dependencies: + '@algolia/cache-common': 4.14.2 + dev: false + + /@algolia/client-account/4.14.2: + resolution: {integrity: sha512-WHtriQqGyibbb/Rx71YY43T0cXqyelEU0lB2QMBRXvD2X0iyeGl4qMxocgEIcbHyK7uqE7hKgjT8aBrHqhgc1w==} + dependencies: + '@algolia/client-common': 4.14.2 + '@algolia/client-search': 4.14.2 + '@algolia/transporter': 4.14.2 + dev: false + + /@algolia/client-analytics/4.14.2: + resolution: {integrity: sha512-yBvBv2mw+HX5a+aeR0dkvUbFZsiC4FKSnfqk9rrfX+QrlNOKEhCG0tJzjiOggRW4EcNqRmaTULIYvIzQVL2KYQ==} + dependencies: + '@algolia/client-common': 4.14.2 + '@algolia/client-search': 4.14.2 + '@algolia/requester-common': 4.14.2 + '@algolia/transporter': 4.14.2 + dev: false + + /@algolia/client-common/4.14.2: + resolution: {integrity: sha512-43o4fslNLcktgtDMVaT5XwlzsDPzlqvqesRi4MjQz2x4/Sxm7zYg5LRYFol1BIhG6EwxKvSUq8HcC/KxJu3J0Q==} + dependencies: + '@algolia/requester-common': 4.14.2 + '@algolia/transporter': 4.14.2 + dev: false + + /@algolia/client-personalization/4.14.2: + resolution: {integrity: sha512-ACCoLi0cL8CBZ1W/2juehSltrw2iqsQBnfiu/Rbl9W2yE6o2ZUb97+sqN/jBqYNQBS+o0ekTMKNkQjHHAcEXNw==} + dependencies: + '@algolia/client-common': 4.14.2 + '@algolia/requester-common': 4.14.2 + '@algolia/transporter': 4.14.2 + dev: false + + /@algolia/client-search/4.14.2: + resolution: {integrity: sha512-L5zScdOmcZ6NGiVbLKTvP02UbxZ0njd5Vq9nJAmPFtjffUSOGEp11BmD2oMJ5QvARgx2XbX4KzTTNS5ECYIMWw==} + dependencies: + '@algolia/client-common': 4.14.2 + '@algolia/requester-common': 4.14.2 + '@algolia/transporter': 4.14.2 + dev: false + + /@algolia/logger-common/4.14.2: + resolution: {integrity: sha512-/JGlYvdV++IcMHBnVFsqEisTiOeEr6cUJtpjz8zc0A9c31JrtLm318Njc72p14Pnkw3A/5lHHh+QxpJ6WFTmsA==} + dev: false + + /@algolia/logger-console/4.14.2: + resolution: {integrity: sha512-8S2PlpdshbkwlLCSAB5f8c91xyc84VM9Ar9EdfE9UmX+NrKNYnWR1maXXVDQQoto07G1Ol/tYFnFVhUZq0xV/g==} + dependencies: + '@algolia/logger-common': 4.14.2 + dev: false + + /@algolia/requester-browser-xhr/4.14.2: + resolution: {integrity: sha512-CEh//xYz/WfxHFh7pcMjQNWgpl4wFB85lUMRyVwaDPibNzQRVcV33YS+63fShFWc2+42YEipFGH2iPzlpszmDw==} + dependencies: + '@algolia/requester-common': 4.14.2 + dev: false + + /@algolia/requester-common/4.14.2: + resolution: {integrity: sha512-73YQsBOKa5fvVV3My7iZHu1sUqmjjfs9TteFWwPwDmnad7T0VTCopttcsM3OjLxZFtBnX61Xxl2T2gmG2O4ehg==} + dev: false + + /@algolia/requester-node-http/4.14.2: + resolution: {integrity: sha512-oDbb02kd1o5GTEld4pETlPZLY0e+gOSWjWMJHWTgDXbv9rm/o2cF7japO6Vj1ENnrqWvLBmW1OzV9g6FUFhFXg==} + dependencies: + '@algolia/requester-common': 4.14.2 + dev: false + + /@algolia/transporter/4.14.2: + resolution: {integrity: sha512-t89dfQb2T9MFQHidjHcfhh6iGMNwvuKUvojAj+JsrHAGbuSy7yE4BylhLX6R0Q1xYRoC4Vvv+O5qIw/LdnQfsQ==} + dependencies: + '@algolia/cache-common': 4.14.2 + '@algolia/logger-common': 4.14.2 + '@algolia/requester-common': 4.14.2 + dev: false + + /@ampproject/remapping/2.2.0: + resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==} + engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/gen-mapping': 0.1.1 + '@jridgewell/trace-mapping': 0.3.16 + dev: false + + /@astrojs/compiler/0.23.5: + resolution: {integrity: sha512-vBMPy9ok4iLapSyCCT1qsZ9dK7LkVFl9mObtLEmWiec9myGHS9h2kQY2xzPeFNJiWXUf9O6tSyQpQTy5As/p3g==} + dev: false + + /@astrojs/compiler/0.26.1: + resolution: {integrity: sha512-GoRi4qB05u+bVcSlR9nu9HJfSUGFBcoUUb+WFimKSm9e/KPTy0STOMb/Q0mLIcloavF4KvEqAnd9ukX62ewoaA==} + dev: false + + /@astrojs/language-server/0.26.2: + resolution: {integrity: sha512-9nkfdd6CMXLDIJojnwbYu5XrYfOI+g63JlktOlpFCwFjFNpm1u0e/+pXXmj6Zs+PkSTo0kV1UM77dRKRS5OC1Q==} + hasBin: true + dependencies: + '@vscode/emmet-helper': 2.8.4 + events: 3.3.0 + prettier: 2.7.1 + prettier-plugin-astro: 0.5.5 + source-map: 0.7.4 + vscode-css-languageservice: 6.1.1 + vscode-html-languageservice: 5.0.2 + vscode-languageserver: 8.0.2 + vscode-languageserver-protocol: 3.17.2 + vscode-languageserver-textdocument: 1.0.7 + vscode-languageserver-types: 3.17.2 + vscode-uri: 3.0.6 + dev: false + + /@astrojs/markdown-remark/1.1.3: + resolution: {integrity: sha512-6MDuQXbrp2fZBYBIqD+0jvSqYAukiMTte6oLNHiEYsLf3KIMlVAZj6dDgUJakgL7cQ4fmzWb0HUqzVpxAsasLw==} + dependencies: + '@astrojs/micromark-extension-mdx-jsx': 1.0.3 + '@astrojs/prism': 1.0.1 + acorn: 8.8.0 + acorn-jsx: 5.3.2_acorn@8.8.0 + github-slugger: 1.4.0 + hast-util-to-html: 8.0.3 + import-meta-resolve: 2.1.0 + mdast-util-from-markdown: 1.2.0 + mdast-util-mdx-expression: 1.3.1 + mdast-util-mdx-jsx: 1.2.0 + micromark-extension-mdx-expression: 1.0.3 + micromark-extension-mdx-md: 1.0.0 + micromark-util-combine-extensions: 1.0.0 + rehype-raw: 6.1.1 + rehype-stringify: 9.0.3 + remark-gfm: 3.0.1 + remark-parse: 10.0.1 + remark-rehype: 10.1.0 + remark-smartypants: 2.0.0 + shiki: 0.11.1 + unified: 10.1.2 + unist-util-map: 3.1.2 + unist-util-visit: 4.1.1 + vfile: 5.3.5 + transitivePeerDependencies: + - supports-color + dev: false + + /@astrojs/mdx/0.11.4: + resolution: {integrity: sha512-b86Fzd87OCuYUGk7O59mwq0URqLdH40wUJC5UCkFmSquIrk8QNrZ7tdjriBfF+Wq3+2UT5JO4ahxIuP6N3cczQ==} + engines: {node: ^14.18.0 || >=16.12.0} + dependencies: + '@astrojs/prism': 1.0.1 + '@mdx-js/mdx': 2.1.5 + '@mdx-js/rollup': 2.1.5 + acorn: 8.8.0 + es-module-lexer: 0.10.5 + estree-util-visit: 1.2.0 + github-slugger: 1.4.0 + gray-matter: 4.0.3 + kleur: 4.1.5 + rehype-raw: 6.1.1 + remark-frontmatter: 4.0.1 + remark-gfm: 3.0.1 + remark-smartypants: 2.0.0 + shiki: 0.11.1 + unist-util-visit: 4.1.1 + vfile: 5.3.5 + transitivePeerDependencies: + - rollup + - supports-color + dev: false + + /@astrojs/micromark-extension-mdx-jsx/1.0.3: + resolution: {integrity: sha512-O15+i2DGG0qb1R/1SYbFXgOKDGbYdV8iJMtuboVb1S9YFQfMOJxaCMco0bhXQI7PmZcQ4pZWIjT5oZ64dXUtRA==} + dependencies: + '@types/acorn': 4.0.6 + estree-util-is-identifier-name: 2.0.1 + micromark-factory-mdx-expression: 1.0.6 + micromark-factory-space: 1.0.0 + micromark-util-character: 1.1.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + vfile-message: 3.1.2 + dev: false + + /@astrojs/preact/1.2.0_preact@10.11.1: + resolution: {integrity: sha512-Vm8rkBIE3cNlxhFoUO2Rsv5RxSP7x7Oi9J6qz8+91lwAIjdm6oyDOrrBmdGqsONJ1MqnjPG4EPmIZJGuFtz2SQ==} + engines: {node: ^14.18.0 || >=16.12.0} + peerDependencies: + preact: ^10.6.5 + dependencies: + '@babel/core': 7.19.3 + '@babel/plugin-transform-react-jsx': 7.19.0_@babel+core@7.19.3 + '@preact/signals': 1.1.1_preact@10.11.1 + babel-plugin-module-resolver: 4.1.0 + preact: 10.11.1 + preact-render-to-string: 5.2.5_preact@10.11.1 + transitivePeerDependencies: + - supports-color + dev: false + + /@astrojs/prism/1.0.1: + resolution: {integrity: sha512-HxEFslvbv+cfOs51q/C7aMVFuW3EAGg0d1xXU/0e/QeScDzfrp5Ra4SOb8mV082SgENVjtVvet4zR84t3at4VQ==} + engines: {node: ^14.18.0 || >=16.12.0} + dependencies: + prismjs: 1.29.0 + dev: false + + /@astrojs/react/1.2.0_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-UREteXiIaI7GDsPBgddtZpKAAUod+l/Baq+McY7gNs5w0aqDmHBzwoBZURPLklJXGAjZ/YBvrVtpiJrahEardA==} + engines: {node: ^14.18.0 || >=16.12.0} + peerDependencies: + react: ^17.0.2 || ^18.0.0 + react-dom: ^17.0.2 || ^18.0.0 + dependencies: + '@babel/core': 7.19.3 + '@babel/plugin-transform-react-jsx': 7.19.0_@babel+core@7.19.3 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@astrojs/tailwind/2.0.2_tailwindcss@3.1.8: + resolution: {integrity: sha512-SDQYqrOLwrRdDzjoSs6Ha2YQzWJlzWnPTZM5t0aWoHukm3JPQg/omDTpiz/XqT4vupYMOsBQZ9WBuNyWVtMrVg==} + peerDependencies: + tailwindcss: ^3.0.24 + dependencies: + '@proload/core': 0.3.3 + autoprefixer: 10.4.12_postcss@8.4.17 + postcss: 8.4.17 + tailwindcss: 3.1.8 + dev: false + + /@astrojs/telemetry/1.0.1: + resolution: {integrity: sha512-SJVfZHp00f8VZsT1fsx1+6acJGUNt/84xZytV5znPzzNE8RXjlE0rv03llgTsEeUHYZc6uJah91jNojS7RldFg==} + engines: {node: ^14.18.0 || >=16.12.0} + dependencies: + ci-info: 3.5.0 + debug: 4.3.4 + dlv: 1.1.3 + dset: 3.1.2 + is-docker: 3.0.0 + is-wsl: 2.2.0 + node-fetch: 3.2.10 + which-pm-runs: 1.1.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@astrojs/webapi/1.1.0: + resolution: {integrity: sha512-yLSksFKv9kRbI3WWPuRvbBjS+J5ZNmZHacJ6Io8XQleKIHHHcw7RoNcrLK0s+9iwVPhqMYIzja6HJuvnO93oFw==} + dependencies: + global-agent: 3.0.0 + node-fetch: 3.2.10 + dev: false + + /@babel/code-frame/7.18.6: + resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/highlight': 7.18.6 + dev: false + + /@babel/compat-data/7.19.4: + resolution: {integrity: sha512-CHIGpJcUQ5lU9KrPHTjBMhVwQG6CQjxfg36fGXl3qk/Gik1WwWachaXFuo0uCWJT/mStOKtcbFJCaVLihC1CMw==} + engines: {node: '>=6.9.0'} + dev: false + + /@babel/core/7.19.3: + resolution: {integrity: sha512-WneDJxdsjEvyKtXKsaBGbDeiyOjR5vYq4HcShxnIbG0qixpoHjI3MqeZM9NDvsojNCEBItQE4juOo/bU6e72gQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@ampproject/remapping': 2.2.0 + '@babel/code-frame': 7.18.6 + '@babel/generator': 7.19.5 + '@babel/helper-compilation-targets': 7.19.3_@babel+core@7.19.3 + '@babel/helper-module-transforms': 7.19.0 + '@babel/helpers': 7.19.4 + '@babel/parser': 7.19.4 + '@babel/template': 7.18.10 + '@babel/traverse': 7.19.4 + '@babel/types': 7.19.4 + convert-source-map: 1.9.0 + debug: 4.3.4 + gensync: 1.0.0-beta.2 + json5: 2.2.1 + semver: 6.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@babel/generator/7.19.5: + resolution: {integrity: sha512-DxbNz9Lz4aMZ99qPpO1raTbcrI1ZeYh+9NR9qhfkQIbFtVEqotHojEBxHzmxhVONkGt6VyrqVQcgpefMy9pqcg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.19.4 + '@jridgewell/gen-mapping': 0.3.2 + jsesc: 2.5.2 + dev: false + + /@babel/helper-annotate-as-pure/7.18.6: + resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.19.4 + dev: false + + /@babel/helper-compilation-targets/7.19.3_@babel+core@7.19.3: + resolution: {integrity: sha512-65ESqLGyGmLvgR0mst5AdW1FkNlj9rQsCKduzEoEPhBCDFGXvz2jW6bXFG6i0/MrV2s7hhXjjb2yAzcPuQlLwg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/compat-data': 7.19.4 + '@babel/core': 7.19.3 + '@babel/helper-validator-option': 7.18.6 + browserslist: 4.21.4 + semver: 6.3.0 + dev: false + + /@babel/helper-environment-visitor/7.18.9: + resolution: {integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==} + engines: {node: '>=6.9.0'} + dev: false + + /@babel/helper-function-name/7.19.0: + resolution: {integrity: sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/template': 7.18.10 + '@babel/types': 7.19.4 + dev: false + + /@babel/helper-hoist-variables/7.18.6: + resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.19.4 + dev: false + + /@babel/helper-module-imports/7.18.6: + resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.19.4 + dev: false + + /@babel/helper-module-transforms/7.19.0: + resolution: {integrity: sha512-3HBZ377Fe14RbLIA+ac3sY4PTgpxHVkFrESaWhoI5PuyXPBBX8+C34qblV9G89ZtycGJCmCI/Ut+VUDK4bltNQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-environment-visitor': 7.18.9 + '@babel/helper-module-imports': 7.18.6 + '@babel/helper-simple-access': 7.19.4 + '@babel/helper-split-export-declaration': 7.18.6 + '@babel/helper-validator-identifier': 7.19.1 + '@babel/template': 7.18.10 + '@babel/traverse': 7.19.4 + '@babel/types': 7.19.4 + transitivePeerDependencies: + - supports-color + dev: false + + /@babel/helper-plugin-utils/7.19.0: + resolution: {integrity: sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==} + engines: {node: '>=6.9.0'} + dev: false + + /@babel/helper-simple-access/7.19.4: + resolution: {integrity: sha512-f9Xq6WqBFqaDfbCzn2w85hwklswz5qsKlh7f08w4Y9yhJHpnNC0QemtSkK5YyOY8kPGvyiwdzZksGUhnGdaUIg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.19.4 + dev: false + + /@babel/helper-split-export-declaration/7.18.6: + resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.19.4 + dev: false + + /@babel/helper-string-parser/7.19.4: + resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==} + engines: {node: '>=6.9.0'} + dev: false + + /@babel/helper-validator-identifier/7.19.1: + resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==} + engines: {node: '>=6.9.0'} + dev: false + + /@babel/helper-validator-option/7.18.6: + resolution: {integrity: sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==} + engines: {node: '>=6.9.0'} + dev: false + + /@babel/helpers/7.19.4: + resolution: {integrity: sha512-G+z3aOx2nfDHwX/kyVii5fJq+bgscg89/dJNWpYeKeBv3v9xX8EIabmx1k6u9LS04H7nROFVRVK+e3k0VHp+sw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/template': 7.18.10 + '@babel/traverse': 7.19.4 + '@babel/types': 7.19.4 + transitivePeerDependencies: + - supports-color + dev: false + + /@babel/highlight/7.18.6: + resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': 7.19.1 + chalk: 2.4.2 + js-tokens: 4.0.0 + dev: false + + /@babel/parser/7.19.4: + resolution: {integrity: sha512-qpVT7gtuOLjWeDTKLkJ6sryqLliBaFpAtGeqw5cs5giLldvh+Ch0plqnUMKoVAUS6ZEueQQiZV+p5pxtPitEsA==} + engines: {node: '>=6.0.0'} + hasBin: true + dependencies: + '@babel/types': 7.19.4 + dev: false + + /@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.19.3: + resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.19.3 + '@babel/helper-plugin-utils': 7.19.0 + dev: false + + /@babel/plugin-transform-react-jsx/7.19.0_@babel+core@7.19.3: + resolution: {integrity: sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.19.3 + '@babel/helper-annotate-as-pure': 7.18.6 + '@babel/helper-module-imports': 7.18.6 + '@babel/helper-plugin-utils': 7.19.0 + '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.19.3 + '@babel/types': 7.19.4 + dev: false + + /@babel/template/7.18.10: + resolution: {integrity: sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.18.6 + '@babel/parser': 7.19.4 + '@babel/types': 7.19.4 + dev: false + + /@babel/traverse/7.19.4: + resolution: {integrity: sha512-w3K1i+V5u2aJUOXBFFC5pveFLmtq1s3qcdDNC2qRI6WPBQIDaKFqXxDEqDO/h1dQ3HjsZoZMyIy6jGLq0xtw+g==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.18.6 + '@babel/generator': 7.19.5 + '@babel/helper-environment-visitor': 7.18.9 + '@babel/helper-function-name': 7.19.0 + '@babel/helper-hoist-variables': 7.18.6 + '@babel/helper-split-export-declaration': 7.18.6 + '@babel/parser': 7.19.4 + '@babel/types': 7.19.4 + debug: 4.3.4 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + dev: false + + /@babel/types/7.19.4: + resolution: {integrity: sha512-M5LK7nAeS6+9j7hAq+b3fQs+pNfUtTGq+yFFfHnauFA8zQtLRfmuipmsKDKKLuyG+wC8ABW43A153YNawNTEtw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': 7.19.4 + '@babel/helper-validator-identifier': 7.19.1 + to-fast-properties: 2.0.0 + dev: false + + /@docsearch/css/3.2.1: + resolution: {integrity: sha512-gaP6TxxwQC+K8D6TRx5WULUWKrcbzECOPA2KCVMuI+6C7dNiGUk5yXXzVhc5sld79XKYLnO9DRTI4mjXDYkh+g==} + dev: false + + /@docsearch/react/3.2.1_gp2f66hjvprqsmo7rewhrpia4e: + resolution: {integrity: sha512-EzTQ/y82s14IQC5XVestiK/kFFMe2aagoYFuTAIfIb/e+4FU7kSMKonRtLwsCiLQHmjvNQq+HO+33giJ5YVtaQ==} + peerDependencies: + '@types/react': '>= 16.8.0 < 19.0.0' + react: '>= 16.8.0 < 19.0.0' + react-dom: '>= 16.8.0 < 19.0.0' + peerDependenciesMeta: + '@types/react': + optional: true + react: + optional: true + react-dom: + optional: true + dependencies: + '@algolia/autocomplete-core': 1.7.1 + '@algolia/autocomplete-preset-algolia': 1.7.1_qs6lk5nhygj2o3hj4sf6xnr724 + '@docsearch/css': 3.2.1 + '@types/react': 17.0.50 + algoliasearch: 4.14.2 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + transitivePeerDependencies: + - '@algolia/client-search' + dev: false + + /@emmetio/abbreviation/2.2.3: + resolution: {integrity: sha512-87pltuCPt99aL+y9xS6GPZ+Wmmyhll2WXH73gG/xpGcQ84DRnptBsI2r0BeIQ0EB/SQTOe2ANPqFqj3Rj5FOGA==} + dependencies: + '@emmetio/scanner': 1.0.0 + dev: false + + /@emmetio/css-abbreviation/2.1.4: + resolution: {integrity: sha512-qk9L60Y+uRtM5CPbB0y+QNl/1XKE09mSO+AhhSauIfr2YOx/ta3NJw2d8RtCFxgzHeRqFRr8jgyzThbu+MZ4Uw==} + dependencies: + '@emmetio/scanner': 1.0.0 + dev: false + + /@emmetio/scanner/1.0.0: + resolution: {integrity: sha512-8HqW8EVqjnCmWXVpqAOZf+EGESdkR27odcMMMGefgKXtar00SoYNSryGv//TELI4T3QFsECo78p+0lmalk/CFA==} + dev: false + + /@esbuild/android-arm/0.15.10: + resolution: {integrity: sha512-FNONeQPy/ox+5NBkcSbYJxoXj9GWu8gVGJTVmUyoOCKQFDTrHVKgNSzChdNt0I8Aj/iKcsDf2r9BFwv+FSNUXg==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: false + optional: true + + /@esbuild/linux-loong64/0.14.54: + resolution: {integrity: sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@esbuild/linux-loong64/0.15.10: + resolution: {integrity: sha512-w0Ou3Z83LOYEkwaui2M8VwIp+nLi/NA60lBLMvaJ+vXVMcsARYdEzLNE7RSm4+lSg4zq4d7fAVuzk7PNQ5JFgg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@jridgewell/gen-mapping/0.1.1: + resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==} + engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/set-array': 1.1.2 + '@jridgewell/sourcemap-codec': 1.4.14 + dev: false + + /@jridgewell/gen-mapping/0.3.2: + resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==} + engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/set-array': 1.1.2 + '@jridgewell/sourcemap-codec': 1.4.14 + '@jridgewell/trace-mapping': 0.3.16 + dev: false + + /@jridgewell/resolve-uri/3.1.0: + resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} + engines: {node: '>=6.0.0'} + dev: false + + /@jridgewell/set-array/1.1.2: + resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} + engines: {node: '>=6.0.0'} + dev: false + + /@jridgewell/sourcemap-codec/1.4.14: + resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} + dev: false + + /@jridgewell/trace-mapping/0.3.16: + resolution: {integrity: sha512-LCQ+NeThyJ4k1W2d+vIKdxuSt9R3pQSZ4P92m7EakaYuXcVWbHuT5bjNcqLd4Rdgi6xYWYDvBJZJLZSLanjDcA==} + dependencies: + '@jridgewell/resolve-uri': 3.1.0 + '@jridgewell/sourcemap-codec': 1.4.14 + dev: false + + /@ljharb/has-package-exports-patterns/0.0.2: + resolution: {integrity: sha512-4/RWEeXDO6bocPONheFe6gX/oQdP/bEpv0oL4HqjPP5DCenBSt0mHgahppY49N0CpsaqffdwPq+TlX9CYOq2Dw==} + dev: false + + /@mdx-js/mdx/2.1.5: + resolution: {integrity: sha512-zEG0lt+Bl/r5U6e0TOS7qDbsXICtemfAPquxWFsMbdzrvlWaqMGemLl+sjVpqlyaaiCiGVQBSGdCk0t1qXjkQg==} + dependencies: + '@types/estree-jsx': 1.0.0 + '@types/mdx': 2.0.2 + estree-util-build-jsx: 2.2.0 + estree-util-is-identifier-name: 2.0.1 + estree-util-to-js: 1.1.0 + estree-walker: 3.0.1 + hast-util-to-estree: 2.1.0 + markdown-extensions: 1.1.1 + periscopic: 3.0.4 + remark-mdx: 2.1.5 + remark-parse: 10.0.1 + remark-rehype: 10.1.0 + unified: 10.1.2 + unist-util-position-from-estree: 1.1.1 + unist-util-stringify-position: 3.0.2 + unist-util-visit: 4.1.1 + vfile: 5.3.5 + transitivePeerDependencies: + - supports-color + dev: false + + /@mdx-js/rollup/2.1.5: + resolution: {integrity: sha512-l90rSiwnEf6PnjH8uRXjZ1W0rR8p1fp1YIiDuA3uF7SOfxMQ98uymaIwI6BsX+8BC2dcWij7Racwp++JkvdOLQ==} + peerDependencies: + rollup: '>=2' + dependencies: + '@mdx-js/mdx': 2.1.5 + '@rollup/pluginutils': 4.2.1 + source-map: 0.7.4 + vfile: 5.3.5 + transitivePeerDependencies: + - supports-color + dev: false + + /@nodelib/fs.scandir/2.1.5: + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + dev: false + + /@nodelib/fs.stat/2.0.5: + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + dev: false + + /@nodelib/fs.walk/1.2.8: + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.13.0 + dev: false + + /@pkgr/utils/2.3.1: + resolution: {integrity: sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + dependencies: + cross-spawn: 7.0.3 + is-glob: 4.0.3 + open: 8.4.0 + picocolors: 1.0.0 + tiny-glob: 0.2.9 + tslib: 2.4.0 + dev: false + + /@polka/url/1.0.0-next.21: + resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==} + dev: false + + /@preact/signals-core/1.2.1: + resolution: {integrity: sha512-aqzRMNFU1hoQyP4Kb1ldJrUTCnA9vqPDa7qHEQzHJ3upnBOcC2pjmvjAuTqGuY4AVTtUkCQV0FvOCuIQQ2hSdA==} + dev: false + + /@preact/signals/1.1.1_preact@10.11.1: + resolution: {integrity: sha512-I1DhYo2d1t9qDkEq1jYDVTQdBGmo4NlqatNEtulsS/87kVdwhZluP6TTDS4/5sc2h86TlBF6UA6LO+tDpIt/Gw==} + peerDependencies: + preact: 10.x + dependencies: + '@preact/signals-core': 1.2.1 + preact: 10.11.1 + dev: false + + /@proload/core/0.3.3: + resolution: {integrity: sha512-7dAFWsIK84C90AMl24+N/ProHKm4iw0akcnoKjRvbfHifJZBLhaDsDus1QJmhG12lXj4e/uB/8mB/0aduCW+NQ==} + dependencies: + deepmerge: 4.2.2 + escalade: 3.1.1 + dev: false + + /@proload/plugin-tsm/0.2.1_@proload+core@0.3.3: + resolution: {integrity: sha512-Ex1sL2BxU+g8MHdAdq9SZKz+pU34o8Zcl9PHWo2WaG9hrnlZme607PU6gnpoAYsDBpHX327+eu60wWUk+d/b+A==} + peerDependencies: + '@proload/core': ^0.3.2 + dependencies: + '@proload/core': 0.3.3 + tsm: 2.2.2 + dev: false + + /@rollup/pluginutils/4.2.1: + resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} + engines: {node: '>= 8.0.0'} + dependencies: + estree-walker: 2.0.2 + picomatch: 2.3.1 + dev: false + + /@torchlight-api/torchlight-cli/0.1.7: + resolution: {integrity: sha512-sHph49Nx/VfzwDsb43v6AQIDZQa/YQ1LtGKTmN/rEBJoW0ctMXUQUJ1c75rNQ/1n2rYLbQLf7s008/jgLvkEDg==} + hasBin: true + dependencies: + axios: 0.21.4 + chalk: 4.1.2 + cheerio: 1.0.0-rc.12 + chokidar: 3.5.3 + commander: 8.3.0 + fs-extra: 10.1.0 + inquirer: 8.2.4 + lodash.chunk: 4.2.0 + lodash.get: 4.4.2 + md5: 2.3.0 + transitivePeerDependencies: + - debug + dev: false + + /@types/acorn/4.0.6: + resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} + dependencies: + '@types/estree': 1.0.0 + dev: false + + /@types/babel__core/7.1.19: + resolution: {integrity: sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==} + dependencies: + '@babel/parser': 7.19.4 + '@babel/types': 7.19.4 + '@types/babel__generator': 7.6.4 + '@types/babel__template': 7.4.1 + '@types/babel__traverse': 7.18.2 + dev: false + + /@types/babel__generator/7.6.4: + resolution: {integrity: sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==} + dependencies: + '@babel/types': 7.19.4 + dev: false + + /@types/babel__template/7.4.1: + resolution: {integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==} + dependencies: + '@babel/parser': 7.19.4 + '@babel/types': 7.19.4 + dev: false + + /@types/babel__traverse/7.18.2: + resolution: {integrity: sha512-FcFaxOr2V5KZCviw1TnutEMVUVsGt4D2hP1TAfXZAMKuHYW3xQhe3jTxNPWutgCJ3/X1c5yX8ZoGVEItxKbwBg==} + dependencies: + '@babel/types': 7.19.4 + dev: false + + /@types/debug/4.1.7: + resolution: {integrity: sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==} + dependencies: + '@types/ms': 0.7.31 + dev: false + + /@types/estree-jsx/0.0.1: + resolution: {integrity: sha512-gcLAYiMfQklDCPjQegGn0TBAn9it05ISEsEhlKQUddIk7o2XDokOcTN7HBO8tznM0D9dGezvHEfRZBfZf6me0A==} + dependencies: + '@types/estree': 1.0.0 + dev: false + + /@types/estree-jsx/1.0.0: + resolution: {integrity: sha512-3qvGd0z8F2ENTGr/GG1yViqfiKmRfrXVx5sJyHGFu3z7m5g5utCQtGp/g29JnjflhtQJBv1WDQukHiT58xPcYQ==} + dependencies: + '@types/estree': 1.0.0 + dev: false + + /@types/estree/1.0.0: + resolution: {integrity: sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==} + dev: false + + /@types/hast/2.3.4: + resolution: {integrity: sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==} + dependencies: + '@types/unist': 2.0.6 + dev: false + + /@types/html-escaper/3.0.0: + resolution: {integrity: sha512-OcJcvP3Yk8mjYwf/IdXZtTE1tb/u0WF0qa29ER07ZHCYUBZXSN29Z1mBS+/96+kNMGTFUAbSz9X+pHmHpZrTCw==} + dev: false + + /@types/json5/0.0.30: + resolution: {integrity: sha512-sqm9g7mHlPY/43fcSNrCYfOeX9zkTTK+euO5E6+CVijSMm5tTjkVdwdqRkY3ljjIAf8679vps5jKUoJBCLsMDA==} + dev: false + + /@types/mdast/3.0.10: + resolution: {integrity: sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==} + dependencies: + '@types/unist': 2.0.6 + dev: false + + /@types/mdx/2.0.2: + resolution: {integrity: sha512-mJGfgj4aWpiKb8C0nnJJchs1sHBHn0HugkVfqqyQi7Wn6mBRksLeQsPOFvih/Pu8L1vlDzfe/LidhVHBeUk3aQ==} + dev: false + + /@types/ms/0.7.31: + resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==} + dev: false + + /@types/nlcst/1.0.0: + resolution: {integrity: sha512-3TGCfOcy8R8mMQ4CNSNOe3PG66HttvjcLzCoOpvXvDtfWOTi+uT/rxeOKm/qEwbM4SNe1O/PjdiBK2YcTjU4OQ==} + dependencies: + '@types/unist': 2.0.6 + dev: false + + /@types/node/18.8.4: + resolution: {integrity: sha512-WdlVphvfR/GJCLEMbNA8lJ0lhFNBj4SW3O+O5/cEGw9oYrv0al9zTwuQsq+myDUXgNx2jgBynoVgZ2MMJ6pbow==} + dev: false + + /@types/parse5/6.0.3: + resolution: {integrity: sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==} + dev: false + + /@types/prop-types/15.7.5: + resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} + dev: false + + /@types/react-dom/18.0.6: + resolution: {integrity: sha512-/5OFZgfIPSwy+YuIBP/FgJnQnsxhZhjjrnxudMddeblOouIodEQ75X14Rr4wGSG/bknL+Omy9iWlLo1u/9GzAA==} + dependencies: + '@types/react': 17.0.50 + dev: false + + /@types/react/17.0.50: + resolution: {integrity: sha512-ZCBHzpDb5skMnc1zFXAXnL3l1FAdi+xZvwxK+PkglMmBrwjpp9nKaWuEvrGnSifCJmBFGxZOOFuwC6KH/s0NuA==} + dependencies: + '@types/prop-types': 15.7.5 + '@types/scheduler': 0.16.2 + csstype: 3.1.1 + dev: false + + /@types/resolve/1.20.2: + resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} + dev: false + + /@types/scheduler/0.16.2: + resolution: {integrity: sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==} + dev: false + + /@types/unist/2.0.6: + resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==} + dev: false + + /@types/yargs-parser/21.0.0: + resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} + dev: false + + /@vscode/emmet-helper/2.8.4: + resolution: {integrity: sha512-lUki5QLS47bz/U8IlG9VQ+1lfxMtxMZENmU5nu4Z71eOD5j9FK0SmYGL5NiVJg9WBWeAU0VxRADMY2Qpq7BfVg==} + dependencies: + emmet: 2.3.6 + jsonc-parser: 2.3.1 + vscode-languageserver-textdocument: 1.0.7 + vscode-languageserver-types: 3.17.2 + vscode-nls: 5.2.0 + vscode-uri: 2.1.2 + dev: false + + /acorn-jsx/5.3.2_acorn@8.8.0: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + acorn: 8.8.0 + dev: false + + /acorn-node/1.8.2: + resolution: {integrity: sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==} + dependencies: + acorn: 7.4.1 + acorn-walk: 7.2.0 + xtend: 4.0.2 + dev: false + + /acorn-walk/7.2.0: + resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} + engines: {node: '>=0.4.0'} + dev: false + + /acorn/7.4.1: + resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} + engines: {node: '>=0.4.0'} + hasBin: true + dev: false + + /acorn/8.8.0: + resolution: {integrity: sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==} + engines: {node: '>=0.4.0'} + hasBin: true + dev: false + + /algoliasearch/4.14.2: + resolution: {integrity: sha512-ngbEQonGEmf8dyEh5f+uOIihv4176dgbuOZspiuhmTTBRBuzWu3KCGHre6uHj5YyuC7pNvQGzB6ZNJyZi0z+Sg==} + dependencies: + '@algolia/cache-browser-local-storage': 4.14.2 + '@algolia/cache-common': 4.14.2 + '@algolia/cache-in-memory': 4.14.2 + '@algolia/client-account': 4.14.2 + '@algolia/client-analytics': 4.14.2 + '@algolia/client-common': 4.14.2 + '@algolia/client-personalization': 4.14.2 + '@algolia/client-search': 4.14.2 + '@algolia/logger-common': 4.14.2 + '@algolia/logger-console': 4.14.2 + '@algolia/requester-browser-xhr': 4.14.2 + '@algolia/requester-common': 4.14.2 + '@algolia/requester-node-http': 4.14.2 + '@algolia/transporter': 4.14.2 + dev: false + + /ansi-align/3.0.1: + resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} + dependencies: + string-width: 4.2.3 + dev: false + + /ansi-escapes/4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + dependencies: + type-fest: 0.21.3 + dev: false + + /ansi-regex/5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + dev: false + + /ansi-regex/6.0.1: + resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + engines: {node: '>=12'} + dev: false + + /ansi-styles/3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + dependencies: + color-convert: 1.9.3 + dev: false + + /ansi-styles/4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + dependencies: + color-convert: 2.0.1 + dev: false + + /ansi-styles/6.2.0: + resolution: {integrity: sha512-3MWBO/XxbkDtc/qpECaUwDM0DQ++ujBjdjs0ElZvChUoPv/P7GOnl3x+R2RF2My5UJHEW5R87q556MiR8U3PLw==} + engines: {node: '>=12'} + dev: false + + /anymatch/3.1.2: + resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} + engines: {node: '>= 8'} + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + dev: false + + /arg/5.0.2: + resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} + dev: false + + /argparse/1.0.10: + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} + dependencies: + sprintf-js: 1.0.3 + dev: false + + /array-iterate/1.1.4: + resolution: {integrity: sha512-sNRaPGh9nnmdC8Zf+pT3UqP8rnWj5Hf9wiFGsX3wUQ2yVSIhO2ShFwCoceIPpB41QF6i2OEmrHmCo36xronCVA==} + dev: false + + /ast-types/0.14.2: + resolution: {integrity: sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==} + engines: {node: '>=4'} + dependencies: + tslib: 2.4.0 + dev: false + + /astring/1.8.3: + resolution: {integrity: sha512-sRpyiNrx2dEYIMmUXprS8nlpRg2Drs8m9ElX9vVEXaCB4XEAJhKfs7IcX0IwShjuOAjLR6wzIrgoptz1n19i1A==} + hasBin: true + dev: false + + /astro/1.4.7: + resolution: {integrity: sha512-Vit4megdh1rLdET5+HwQTdiXOjWQNzPNxRbpp08qn/0xw7pxrYD34TqLl7j8lxwrF+ky9WohdQGo7fkBF6P3SQ==} + engines: {node: ^14.18.0 || >=16.12.0, npm: '>=6.14.0'} + hasBin: true + dependencies: + '@astrojs/compiler': 0.26.1 + '@astrojs/language-server': 0.26.2 + '@astrojs/markdown-remark': 1.1.3 + '@astrojs/telemetry': 1.0.1 + '@astrojs/webapi': 1.1.0 + '@babel/core': 7.19.3 + '@babel/generator': 7.19.5 + '@babel/parser': 7.19.4 + '@babel/plugin-transform-react-jsx': 7.19.0_@babel+core@7.19.3 + '@babel/traverse': 7.19.4 + '@babel/types': 7.19.4 + '@proload/core': 0.3.3 + '@proload/plugin-tsm': 0.2.1_@proload+core@0.3.3 + '@types/babel__core': 7.1.19 + '@types/html-escaper': 3.0.0 + '@types/yargs-parser': 21.0.0 + boxen: 6.2.1 + ci-info: 3.5.0 + common-ancestor-path: 1.0.1 + cookie: 0.5.0 + debug: 4.3.4 + diff: 5.1.0 + eol: 0.9.1 + es-module-lexer: 0.10.5 + esbuild: 0.14.54 + execa: 6.1.0 + fast-glob: 3.2.12 + github-slugger: 1.4.0 + gray-matter: 4.0.3 + html-entities: 2.3.3 + html-escaper: 3.0.3 + kleur: 4.1.5 + magic-string: 0.25.9 + mime: 3.0.0 + ora: 6.1.2 + path-browserify: 1.0.1 + path-to-regexp: 6.2.1 + postcss: 8.4.17 + postcss-load-config: 3.1.4_postcss@8.4.17 + preferred-pm: 3.0.3 + prompts: 2.4.2 + recast: 0.20.5 + rehype: 12.0.1 + resolve: 1.22.1 + rollup: 2.78.1 + semver: 7.3.8 + shiki: 0.11.1 + sirv: 2.0.2 + slash: 4.0.0 + string-width: 5.1.2 + strip-ansi: 7.0.1 + supports-esm: 1.0.0 + tsconfig-resolver: 3.0.1 + typescript: 4.8.4 + unist-util-visit: 4.1.1 + vfile: 5.3.5 + vite: 3.1.7 + yargs-parser: 21.1.1 + zod: 3.19.1 + transitivePeerDependencies: + - less + - sass + - stylus + - supports-color + - terser + - ts-node + dev: false + + /autoprefixer/10.4.12_postcss@8.4.17: + resolution: {integrity: sha512-WrCGV9/b97Pa+jtwf5UGaRjgQIg7OK3D06GnoYoZNcG1Xb8Gt3EfuKjlhh9i/VtT16g6PYjZ69jdJ2g8FxSC4Q==} + engines: {node: ^10 || ^12 || >=14} + hasBin: true + peerDependencies: + postcss: ^8.1.0 + dependencies: + browserslist: 4.21.4 + caniuse-lite: 1.0.30001418 + fraction.js: 4.2.0 + normalize-range: 0.1.2 + picocolors: 1.0.0 + postcss: 8.4.17 + postcss-value-parser: 4.2.0 + dev: false + + /axios/0.21.4: + resolution: {integrity: sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==} + dependencies: + follow-redirects: 1.15.2 + transitivePeerDependencies: + - debug + dev: false + + /babel-plugin-module-resolver/4.1.0: + resolution: {integrity: sha512-MlX10UDheRr3lb3P0WcaIdtCSRlxdQsB1sBqL7W0raF070bGl1HQQq5K3T2vf2XAYie+ww+5AKC/WrkjRO2knA==} + engines: {node: '>= 8.0.0'} + dependencies: + find-babel-config: 1.2.0 + glob: 7.2.3 + pkg-up: 3.1.0 + reselect: 4.1.6 + resolve: 1.22.1 + dev: false + + /bail/2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} + dev: false + + /balanced-match/1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + dev: false + + /base64-js/1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + dev: false + + /binary-extensions/2.2.0: + resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} + engines: {node: '>=8'} + dev: false + + /bl/4.1.0: + resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} + dependencies: + buffer: 5.7.1 + inherits: 2.0.4 + readable-stream: 3.6.0 + dev: false + + /bl/5.0.0: + resolution: {integrity: sha512-8vxFNZ0pflFfi0WXA3WQXlj6CaMEwsmh63I1CNp0q+wWv8sD0ARx1KovSQd0l2GkwrMIOyedq0EF1FxI+RCZLQ==} + dependencies: + buffer: 6.0.3 + inherits: 2.0.4 + readable-stream: 3.6.0 + dev: false + + /boolbase/1.0.0: + resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + dev: false + + /boolean/3.2.0: + resolution: {integrity: sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==} + dev: false + + /boxen/6.2.1: + resolution: {integrity: sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + ansi-align: 3.0.1 + camelcase: 6.3.0 + chalk: 4.1.2 + cli-boxes: 3.0.0 + string-width: 5.1.2 + type-fest: 2.19.0 + widest-line: 4.0.1 + wrap-ansi: 8.0.1 + dev: false + + /brace-expansion/1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + dev: false + + /braces/3.0.2: + resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} + engines: {node: '>=8'} + dependencies: + fill-range: 7.0.1 + dev: false + + /browserslist/4.21.4: + resolution: {integrity: sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + dependencies: + caniuse-lite: 1.0.30001418 + electron-to-chromium: 1.4.279 + node-releases: 2.0.6 + update-browserslist-db: 1.0.10_browserslist@4.21.4 + dev: false + + /buffer/5.7.1: + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + dev: false + + /buffer/6.0.3: + resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + dev: false + + /camelcase-css/2.0.1: + resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} + engines: {node: '>= 6'} + dev: false + + /camelcase/6.3.0: + resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} + engines: {node: '>=10'} + dev: false + + /caniuse-lite/1.0.30001418: + resolution: {integrity: sha512-oIs7+JL3K9JRQ3jPZjlH6qyYDp+nBTCais7hjh0s+fuBwufc7uZ7hPYMXrDOJhV360KGMTcczMRObk0/iMqZRg==} + dev: false + + /ccount/2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + dev: false + + /chalk/2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + dev: false + + /chalk/4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + dev: false + + /chalk/5.1.1: + resolution: {integrity: sha512-OItMegkSDU3P7OJRWBbNRsQsL8SzgwlIGXSZRVfHCLBYrDgzYDuozwDMwvEDpiZdjr50tdOTbTzuubirtEozsg==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + dev: false + + /character-entities-html4/2.1.0: + resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} + dev: false + + /character-entities-legacy/3.0.0: + resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} + dev: false + + /character-entities/2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + dev: false + + /character-reference-invalid/2.0.1: + resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} + dev: false + + /chardet/0.7.0: + resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} + dev: false + + /charenc/0.0.2: + resolution: {integrity: sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==} + dev: false + + /cheerio-select/2.1.0: + resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==} + dependencies: + boolbase: 1.0.0 + css-select: 5.1.0 + css-what: 6.1.0 + domelementtype: 2.3.0 + domhandler: 5.0.3 + domutils: 3.0.1 + dev: false + + /cheerio/1.0.0-rc.12: + resolution: {integrity: sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==} + engines: {node: '>= 6'} + dependencies: + cheerio-select: 2.1.0 + dom-serializer: 2.0.0 + domhandler: 5.0.3 + domutils: 3.0.1 + htmlparser2: 8.0.1 + parse5: 7.1.1 + parse5-htmlparser2-tree-adapter: 7.0.0 + dev: false + + /chokidar/3.5.3: + resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} + engines: {node: '>= 8.10.0'} + dependencies: + anymatch: 3.1.2 + braces: 3.0.2 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.2 + dev: false + + /ci-info/3.5.0: + resolution: {integrity: sha512-yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw==} + dev: false + + /cli-boxes/3.0.0: + resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} + engines: {node: '>=10'} + dev: false + + /cli-cursor/3.1.0: + resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} + engines: {node: '>=8'} + dependencies: + restore-cursor: 3.1.0 + dev: false + + /cli-cursor/4.0.0: + resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + restore-cursor: 4.0.0 + dev: false + + /cli-spinners/2.7.0: + resolution: {integrity: sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==} + engines: {node: '>=6'} + dev: false + + /cli-width/3.0.0: + resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==} + engines: {node: '>= 10'} + dev: false + + /clone/1.0.4: + resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} + engines: {node: '>=0.8'} + dev: false + + /color-convert/1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + dependencies: + color-name: 1.1.3 + dev: false + + /color-convert/2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + dependencies: + color-name: 1.1.4 + dev: false + + /color-name/1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + dev: false + + /color-name/1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + dev: false + + /comma-separated-tokens/2.0.2: + resolution: {integrity: sha512-G5yTt3KQN4Yn7Yk4ed73hlZ1evrFKXeUW3086p3PRFNp7m2vIjI6Pg+Kgb+oyzhd9F2qdcoj67+y3SdxL5XWsg==} + dev: false + + /commander/8.3.0: + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} + dev: false + + /common-ancestor-path/1.0.1: + resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==} + dev: false + + /concat-map/0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + dev: false + + /convert-source-map/1.9.0: + resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} + dev: false + + /cookie/0.5.0: + resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} + engines: {node: '>= 0.6'} + dev: false + + /cross-spawn/7.0.3: + resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + engines: {node: '>= 8'} + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + dev: false + + /crypt/0.0.2: + resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==} + dev: false + + /css-select/5.1.0: + resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} + dependencies: + boolbase: 1.0.0 + css-what: 6.1.0 + domhandler: 5.0.3 + domutils: 3.0.1 + nth-check: 2.1.1 + dev: false + + /css-what/6.1.0: + resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} + engines: {node: '>= 6'} + dev: false + + /cssesc/3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + dev: false + + /csstype/3.1.1: + resolution: {integrity: sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==} + dev: false + + /data-uri-to-buffer/4.0.0: + resolution: {integrity: sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA==} + engines: {node: '>= 12'} + dev: false + + /debug/4.3.4: + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + dependencies: + ms: 2.1.2 + dev: false + + /decode-named-character-reference/1.0.2: + resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} + dependencies: + character-entities: 2.0.2 + dev: false + + /deepmerge/4.2.2: + resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} + engines: {node: '>=0.10.0'} + dev: false + + /defaults/1.0.4: + resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} + dependencies: + clone: 1.0.4 + dev: false + + /define-lazy-prop/2.0.0: + resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} + engines: {node: '>=8'} + dev: false + + /define-properties/1.1.4: + resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==} + engines: {node: '>= 0.4'} + dependencies: + has-property-descriptors: 1.0.0 + object-keys: 1.1.1 + dev: false + + /defined/1.0.1: + resolution: {integrity: sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==} + dev: false + + /dequal/2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + dev: false + + /detect-node/2.1.0: + resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} + dev: false + + /detective/5.2.1: + resolution: {integrity: sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==} + engines: {node: '>=0.8.0'} + hasBin: true + dependencies: + acorn-node: 1.8.2 + defined: 1.0.1 + minimist: 1.2.7 + dev: false + + /didyoumean/1.2.2: + resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + dev: false + + /diff/5.1.0: + resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} + engines: {node: '>=0.3.1'} + dev: false + + /dlv/1.1.3: + resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} + dev: false + + /dom-serializer/2.0.0: + resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + entities: 4.4.0 + dev: false + + /domelementtype/2.3.0: + resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} + dev: false + + /domhandler/5.0.3: + resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} + engines: {node: '>= 4'} + dependencies: + domelementtype: 2.3.0 + dev: false + + /domutils/3.0.1: + resolution: {integrity: sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==} + dependencies: + dom-serializer: 2.0.0 + domelementtype: 2.3.0 + domhandler: 5.0.3 + dev: false + + /dset/3.1.2: + resolution: {integrity: sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q==} + engines: {node: '>=4'} + dev: false + + /eastasianwidth/0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + dev: false + + /electron-to-chromium/1.4.279: + resolution: {integrity: sha512-xs7vEuSZ84+JsHSTFqqG0TE3i8EAivHomRQZhhcRvsmnjsh5C2KdhwNKf4ZRYtzq75wojpFyqb62m32Oam57wA==} + dev: false + + /emmet/2.3.6: + resolution: {integrity: sha512-pLS4PBPDdxuUAmw7Me7+TcHbykTsBKN/S9XJbUOMFQrNv9MoshzyMFK/R57JBm94/6HSL4vHnDeEmxlC82NQ4A==} + dependencies: + '@emmetio/abbreviation': 2.2.3 + '@emmetio/css-abbreviation': 2.1.4 + dev: false + + /emoji-regex/8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + dev: false + + /emoji-regex/9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + dev: false + + /entities/4.4.0: + resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==} + engines: {node: '>=0.12'} + dev: false + + /eol/0.9.1: + resolution: {integrity: sha512-Ds/TEoZjwggRoz/Q2O7SE3i4Jm66mqTDfmdHdq/7DKVk3bro9Q8h6WdXKdPqFLMoqxrDK5SVRzHVPOS6uuGtrg==} + dev: false + + /es-module-lexer/0.10.5: + resolution: {integrity: sha512-+7IwY/kiGAacQfY+YBhKMvEmyAJnw5grTUgjG85Pe7vcUI/6b7pZjZG8nQ7+48YhzEAEqrEgD2dCz/JIK+AYvw==} + dev: false + + /es6-error/4.1.1: + resolution: {integrity: sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==} + dev: false + + /esbuild-android-64/0.14.54: + resolution: {integrity: sha512-Tz2++Aqqz0rJ7kYBfz+iqyE3QMycD4vk7LBRyWaAVFgFtQ/O8EJOnVmTOiDWYZ/uYzB4kvP+bqejYdVKzE5lAQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: false + optional: true + + /esbuild-android-64/0.15.10: + resolution: {integrity: sha512-UI7krF8OYO1N7JYTgLT9ML5j4+45ra3amLZKx7LO3lmLt1Ibn8t3aZbX5Pu4BjWiqDuJ3m/hsvhPhK/5Y/YpnA==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: false + optional: true + + /esbuild-android-arm64/0.14.54: + resolution: {integrity: sha512-F9E+/QDi9sSkLaClO8SOV6etqPd+5DgJje1F9lOWoNncDdOBL2YF59IhsWATSt0TLZbYCf3pNlTHvVV5VfHdvg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: false + optional: true + + /esbuild-android-arm64/0.15.10: + resolution: {integrity: sha512-EOt55D6xBk5O05AK8brXUbZmoFj4chM8u3riGflLa6ziEoVvNjRdD7Cnp82NHQGfSHgYR06XsPI8/sMuA/cUwg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: false + optional: true + + /esbuild-darwin-64/0.14.54: + resolution: {integrity: sha512-jtdKWV3nBviOd5v4hOpkVmpxsBy90CGzebpbO9beiqUYVMBtSc0AL9zGftFuBon7PNDcdvNCEuQqw2x0wP9yug==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /esbuild-darwin-64/0.15.10: + resolution: {integrity: sha512-hbDJugTicqIm+WKZgp208d7FcXcaK8j2c0l+fqSJ3d2AzQAfjEYDRM3Z2oMeqSJ9uFxyj/muSACLdix7oTstRA==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /esbuild-darwin-arm64/0.14.54: + resolution: {integrity: sha512-OPafJHD2oUPyvJMrsCvDGkRrVCar5aVyHfWGQzY1dWnzErjrDuSETxwA2HSsyg2jORLY8yBfzc1MIpUkXlctmw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /esbuild-darwin-arm64/0.15.10: + resolution: {integrity: sha512-M1t5+Kj4IgSbYmunf2BB6EKLkWUq+XlqaFRiGOk8bmBapu9bCDrxjf4kUnWn59Dka3I27EiuHBKd1rSO4osLFQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /esbuild-freebsd-64/0.14.54: + resolution: {integrity: sha512-OKwd4gmwHqOTp4mOGZKe/XUlbDJ4Q9TjX0hMPIDBUWWu/kwhBAudJdBoxnjNf9ocIB6GN6CPowYpR/hRCbSYAg==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: false + optional: true + + /esbuild-freebsd-64/0.15.10: + resolution: {integrity: sha512-KMBFMa7C8oc97nqDdoZwtDBX7gfpolkk6Bcmj6YFMrtCMVgoU/x2DI1p74DmYl7CSS6Ppa3xgemrLrr5IjIn0w==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: false + optional: true + + /esbuild-freebsd-arm64/0.14.54: + resolution: {integrity: sha512-sFwueGr7OvIFiQT6WeG0jRLjkjdqWWSrfbVwZp8iMP+8UHEHRBvlaxL6IuKNDwAozNUmbb8nIMXa7oAOARGs1Q==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: false + optional: true + + /esbuild-freebsd-arm64/0.15.10: + resolution: {integrity: sha512-m2KNbuCX13yQqLlbSojFMHpewbn8wW5uDS6DxRpmaZKzyq8Dbsku6hHvh2U+BcLwWY4mpgXzFUoENEf7IcioGg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-32/0.14.54: + resolution: {integrity: sha512-1ZuY+JDI//WmklKlBgJnglpUL1owm2OX+8E1syCD6UAxcMM/XoWd76OHSjl/0MR0LisSAXDqgjT3uJqT67O3qw==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-32/0.15.10: + resolution: {integrity: sha512-guXrwSYFAvNkuQ39FNeV4sNkNms1bLlA5vF1H0cazZBOLdLFIny6BhT+TUbK/hdByMQhtWQ5jI9VAmPKbVPu1w==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-64/0.14.54: + resolution: {integrity: sha512-EgjAgH5HwTbtNsTqQOXWApBaPVdDn7XcK+/PtJwZLT1UmpLoznPd8c5CxqsH2dQK3j05YsB3L17T8vE7cp4cCg==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-64/0.15.10: + resolution: {integrity: sha512-jd8XfaSJeucMpD63YNMO1JCrdJhckHWcMv6O233bL4l6ogQKQOxBYSRP/XLWP+6kVTu0obXovuckJDcA0DKtQA==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-arm/0.14.54: + resolution: {integrity: sha512-qqz/SjemQhVMTnvcLGoLOdFpCYbz4v4fUo+TfsWG+1aOu70/80RV6bgNpR2JCrppV2moUQkww+6bWxXRL9YMGw==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-arm/0.15.10: + resolution: {integrity: sha512-6N8vThLL/Lysy9y4Ex8XoLQAlbZKUyExCWyayGi2KgTBelKpPgj6RZnUaKri0dHNPGgReJriKVU6+KDGQwn10A==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-arm64/0.14.54: + resolution: {integrity: sha512-WL71L+0Rwv+Gv/HTmxTEmpv0UgmxYa5ftZILVi2QmZBgX3q7+tDeOQNqGtdXSdsL8TQi1vIaVFHUPDe0O0kdig==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-arm64/0.15.10: + resolution: {integrity: sha512-GByBi4fgkvZFTHFDYNftu1DQ1GzR23jws0oWyCfhnI7eMOe+wgwWrc78dbNk709Ivdr/evefm2PJiUBMiusS1A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-mips64le/0.14.54: + resolution: {integrity: sha512-qTHGQB8D1etd0u1+sB6p0ikLKRVuCWhYQhAHRPkO+OF3I/iSlTKNNS0Lh2Oc0g0UFGguaFZZiPJdJey3AGpAlw==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-mips64le/0.15.10: + resolution: {integrity: sha512-BxP+LbaGVGIdQNJUNF7qpYjEGWb0YyHVSKqYKrn+pTwH/SiHUxFyJYSP3pqkku61olQiSBnSmWZ+YUpj78Tw7Q==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-ppc64le/0.14.54: + resolution: {integrity: sha512-j3OMlzHiqwZBDPRCDFKcx595XVfOfOnv68Ax3U4UKZ3MTYQB5Yz3X1mn5GnodEVYzhtZgxEBidLWeIs8FDSfrQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-ppc64le/0.15.10: + resolution: {integrity: sha512-LoSQCd6498PmninNgqd/BR7z3Bsk/mabImBWuQ4wQgmQEeanzWd5BQU2aNi9mBURCLgyheuZS6Xhrw5luw3OkQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-riscv64/0.14.54: + resolution: {integrity: sha512-y7Vt7Wl9dkOGZjxQZnDAqqn+XOqFD7IMWiewY5SPlNlzMX39ocPQlOaoxvT4FllA5viyV26/QzHtvTjVNOxHZg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-riscv64/0.15.10: + resolution: {integrity: sha512-Lrl9Cr2YROvPV4wmZ1/g48httE8z/5SCiXIyebiB5N8VT7pX3t6meI7TQVHw/wQpqP/AF4SksDuFImPTM7Z32Q==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-s390x/0.14.54: + resolution: {integrity: sha512-zaHpW9dziAsi7lRcyV4r8dhfG1qBidQWUXweUjnw+lliChJqQr+6XD71K41oEIC3Mx1KStovEmlzm+MkGZHnHA==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-linux-s390x/0.15.10: + resolution: {integrity: sha512-ReP+6q3eLVVP2lpRrvl5EodKX7EZ1bS1/z5j6hsluAlZP5aHhk6ghT6Cq3IANvvDdscMMCB4QEbI+AjtvoOFpA==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /esbuild-netbsd-64/0.14.54: + resolution: {integrity: sha512-PR01lmIMnfJTgeU9VJTDY9ZerDWVFIUzAtJuDHwwceppW7cQWjBBqP48NdeRtoP04/AtO9a7w3viI+PIDr6d+w==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: false + optional: true + + /esbuild-netbsd-64/0.15.10: + resolution: {integrity: sha512-iGDYtJCMCqldMskQ4eIV+QSS/CuT7xyy9i2/FjpKvxAuCzrESZXiA1L64YNj6/afuzfBe9i8m/uDkFHy257hTw==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: false + optional: true + + /esbuild-openbsd-64/0.14.54: + resolution: {integrity: sha512-Qyk7ikT2o7Wu76UsvvDS5q0amJvmRzDyVlL0qf5VLsLchjCa1+IAvd8kTBgUxD7VBUUVgItLkk609ZHUc1oCaw==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: false + optional: true + + /esbuild-openbsd-64/0.15.10: + resolution: {integrity: sha512-ftMMIwHWrnrYnvuJQRJs/Smlcb28F9ICGde/P3FUTCgDDM0N7WA0o9uOR38f5Xe2/OhNCgkjNeb7QeaE3cyWkQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: false + optional: true + + /esbuild-sunos-64/0.14.54: + resolution: {integrity: sha512-28GZ24KmMSeKi5ueWzMcco6EBHStL3B6ubM7M51RmPwXQGLe0teBGJocmWhgwccA1GeFXqxzILIxXpHbl9Q/Kw==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: false + optional: true + + /esbuild-sunos-64/0.15.10: + resolution: {integrity: sha512-mf7hBL9Uo2gcy2r3rUFMjVpTaGpFJJE5QTDDqUFf1632FxteYANffDZmKbqX0PfeQ2XjUDE604IcE7OJeoHiyg==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: false + optional: true + + /esbuild-windows-32/0.14.54: + resolution: {integrity: sha512-T+rdZW19ql9MjS7pixmZYVObd9G7kcaZo+sETqNH4RCkuuYSuv9AGHUVnPoP9hhuE1WM1ZimHz1CIBHBboLU7w==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /esbuild-windows-32/0.15.10: + resolution: {integrity: sha512-ttFVo+Cg8b5+qHmZHbEc8Vl17kCleHhLzgT8X04y8zudEApo0PxPg9Mz8Z2cKH1bCYlve1XL8LkyXGFjtUYeGg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /esbuild-windows-64/0.14.54: + resolution: {integrity: sha512-AoHTRBUuYwXtZhjXZbA1pGfTo8cJo3vZIcWGLiUcTNgHpJJMC1rVA44ZereBHMJtotyN71S8Qw0npiCIkW96cQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /esbuild-windows-64/0.15.10: + resolution: {integrity: sha512-2H0gdsyHi5x+8lbng3hLbxDWR7mKHWh5BXZGKVG830KUmXOOWFE2YKJ4tHRkejRduOGDrBvHBriYsGtmTv3ntA==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /esbuild-windows-arm64/0.14.54: + resolution: {integrity: sha512-M0kuUvXhot1zOISQGXwWn6YtS+Y/1RT9WrVIOywZnJHo3jCDyewAc79aKNQWFCQm+xNHVTq9h8dZKvygoXQQRg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /esbuild-windows-arm64/0.15.10: + resolution: {integrity: sha512-S+th4F+F8VLsHLR0zrUcG+Et4hx0RKgK1eyHc08kztmLOES8BWwMiaGdoW9hiXuzznXQ0I/Fg904MNbr11Nktw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /esbuild/0.14.54: + resolution: {integrity: sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/linux-loong64': 0.14.54 + esbuild-android-64: 0.14.54 + esbuild-android-arm64: 0.14.54 + esbuild-darwin-64: 0.14.54 + esbuild-darwin-arm64: 0.14.54 + esbuild-freebsd-64: 0.14.54 + esbuild-freebsd-arm64: 0.14.54 + esbuild-linux-32: 0.14.54 + esbuild-linux-64: 0.14.54 + esbuild-linux-arm: 0.14.54 + esbuild-linux-arm64: 0.14.54 + esbuild-linux-mips64le: 0.14.54 + esbuild-linux-ppc64le: 0.14.54 + esbuild-linux-riscv64: 0.14.54 + esbuild-linux-s390x: 0.14.54 + esbuild-netbsd-64: 0.14.54 + esbuild-openbsd-64: 0.14.54 + esbuild-sunos-64: 0.14.54 + esbuild-windows-32: 0.14.54 + esbuild-windows-64: 0.14.54 + esbuild-windows-arm64: 0.14.54 + dev: false + + /esbuild/0.15.10: + resolution: {integrity: sha512-N7wBhfJ/E5fzn/SpNgX+oW2RLRjwaL8Y0ezqNqhjD6w0H2p0rDuEz2FKZqpqLnO8DCaWumKe8dsC/ljvVSSxng==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/android-arm': 0.15.10 + '@esbuild/linux-loong64': 0.15.10 + esbuild-android-64: 0.15.10 + esbuild-android-arm64: 0.15.10 + esbuild-darwin-64: 0.15.10 + esbuild-darwin-arm64: 0.15.10 + esbuild-freebsd-64: 0.15.10 + esbuild-freebsd-arm64: 0.15.10 + esbuild-linux-32: 0.15.10 + esbuild-linux-64: 0.15.10 + esbuild-linux-arm: 0.15.10 + esbuild-linux-arm64: 0.15.10 + esbuild-linux-mips64le: 0.15.10 + esbuild-linux-ppc64le: 0.15.10 + esbuild-linux-riscv64: 0.15.10 + esbuild-linux-s390x: 0.15.10 + esbuild-netbsd-64: 0.15.10 + esbuild-openbsd-64: 0.15.10 + esbuild-sunos-64: 0.15.10 + esbuild-windows-32: 0.15.10 + esbuild-windows-64: 0.15.10 + esbuild-windows-arm64: 0.15.10 + dev: false + + /escalade/3.1.1: + resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} + engines: {node: '>=6'} + dev: false + + /escape-string-regexp/1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + dev: false + + /escape-string-regexp/4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + dev: false + + /escape-string-regexp/5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + dev: false + + /esprima/4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + dev: false + + /estree-util-attach-comments/2.1.0: + resolution: {integrity: sha512-rJz6I4L0GaXYtHpoMScgDIwM0/Vwbu5shbMeER596rB2D1EWF6+Gj0e0UKzJPZrpoOc87+Q2kgVFHfjAymIqmw==} + dependencies: + '@types/estree': 1.0.0 + dev: false + + /estree-util-build-jsx/2.2.0: + resolution: {integrity: sha512-apsfRxF9uLrqosApvHVtYZjISPvTJ+lBiIydpC+9wE6cF6ssbhnjyQLqaIjgzGxvC2Hbmec1M7g91PoBayYoQQ==} + dependencies: + '@types/estree-jsx': 1.0.0 + estree-util-is-identifier-name: 2.0.1 + estree-walker: 3.0.1 + dev: false + + /estree-util-is-identifier-name/2.0.1: + resolution: {integrity: sha512-rxZj1GkQhY4x1j/CSnybK9cGuMFQYFPLq0iNyopqf14aOVLFtMv7Esika+ObJWPWiOHuMOAHz3YkWoLYYRnzWQ==} + dev: false + + /estree-util-to-js/1.1.0: + resolution: {integrity: sha512-490lbfCcpLk+ofK6HCgqDfYs4KAfq6QVvDw3+Bm1YoKRgiOjKiKYGAVQE1uwh7zVxBgWhqp4FDtp5SqunpUk1A==} + dependencies: + '@types/estree-jsx': 1.0.0 + astring: 1.8.3 + source-map: 0.7.4 + dev: false + + /estree-util-visit/1.2.0: + resolution: {integrity: sha512-wdsoqhWueuJKsh5hqLw3j8lwFqNStm92VcwtAOAny8g/KS/l5Y8RISjR4k5W6skCj3Nirag/WUCMS0Nfy3sgsg==} + dependencies: + '@types/estree-jsx': 1.0.0 + '@types/unist': 2.0.6 + dev: false + + /estree-walker/2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + dev: false + + /estree-walker/3.0.1: + resolution: {integrity: sha512-woY0RUD87WzMBUiZLx8NsYr23N5BKsOMZHhu2hoNRVh6NXGfoiT1KOL8G3UHlJAnEDGmfa5ubNA/AacfG+Kb0g==} + dev: false + + /events/3.3.0: + resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} + engines: {node: '>=0.8.x'} + dev: false + + /execa/6.1.0: + resolution: {integrity: sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + cross-spawn: 7.0.3 + get-stream: 6.0.1 + human-signals: 3.0.1 + 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 + dev: false + + /extend-shallow/2.0.1: + resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} + engines: {node: '>=0.10.0'} + dependencies: + is-extendable: 0.1.1 + dev: false + + /extend/3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + dev: false + + /external-editor/3.1.0: + resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} + engines: {node: '>=4'} + dependencies: + chardet: 0.7.0 + iconv-lite: 0.4.24 + tmp: 0.0.33 + dev: false + + /fast-glob/3.2.12: + resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} + engines: {node: '>=8.6.0'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.5 + dev: false + + /fastq/1.13.0: + resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==} + dependencies: + reusify: 1.0.4 + dev: false + + /fault/2.0.1: + resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} + dependencies: + format: 0.2.2 + dev: false + + /fetch-blob/3.2.0: + resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} + engines: {node: ^12.20 || >= 14.13} + dependencies: + node-domexception: 1.0.0 + web-streams-polyfill: 3.2.1 + dev: false + + /figures/3.2.0: + resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} + engines: {node: '>=8'} + dependencies: + escape-string-regexp: 1.0.5 + dev: false + + /fill-range/7.0.1: + resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} + engines: {node: '>=8'} + dependencies: + to-regex-range: 5.0.1 + dev: false + + /find-babel-config/1.2.0: + resolution: {integrity: sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA==} + engines: {node: '>=4.0.0'} + dependencies: + json5: 0.5.1 + path-exists: 3.0.0 + dev: false + + /find-up/3.0.0: + resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} + engines: {node: '>=6'} + dependencies: + locate-path: 3.0.0 + dev: false + + /find-up/4.1.0: + resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} + engines: {node: '>=8'} + dependencies: + locate-path: 5.0.0 + path-exists: 4.0.0 + dev: false + + /find-up/5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + dev: false + + /find-yarn-workspace-root2/1.2.16: + resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} + dependencies: + micromatch: 4.0.5 + pkg-dir: 4.2.0 + dev: false + + /follow-redirects/1.15.2: + resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + dev: false + + /format/0.2.2: + resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} + engines: {node: '>=0.4.x'} + dev: false + + /formdata-polyfill/4.0.10: + resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==} + engines: {node: '>=12.20.0'} + dependencies: + fetch-blob: 3.2.0 + dev: false + + /fraction.js/4.2.0: + resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} + dev: false + + /fs-extra/10.1.0: + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} + dependencies: + graceful-fs: 4.2.10 + jsonfile: 6.1.0 + universalify: 2.0.0 + dev: false + + /fs.realpath/1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + dev: false + + /fsevents/2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /function-bind/1.1.1: + resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} + dev: false + + /gensync/1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + dev: false + + /get-intrinsic/1.1.3: + resolution: {integrity: sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==} + dependencies: + function-bind: 1.1.1 + has: 1.0.3 + has-symbols: 1.0.3 + dev: false + + /get-stream/6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + dev: false + + /github-slugger/1.4.0: + resolution: {integrity: sha512-w0dzqw/nt51xMVmlaV1+JRzN+oCa1KfcgGEWhxUG16wbdA+Xnt/yoFO8Z8x/V82ZcZ0wy6ln9QDup5avbhiDhQ==} + dev: false + + /glob-parent/5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + dependencies: + is-glob: 4.0.3 + dev: false + + /glob-parent/6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + dependencies: + is-glob: 4.0.3 + dev: false + + /glob/7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: false + + /global-agent/3.0.0: + resolution: {integrity: sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==} + engines: {node: '>=10.0'} + dependencies: + boolean: 3.2.0 + es6-error: 4.1.1 + matcher: 3.0.0 + roarr: 2.15.4 + semver: 7.3.8 + serialize-error: 7.0.1 + dev: false + + /globals/11.12.0: + resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} + engines: {node: '>=4'} + dev: false + + /globalthis/1.0.3: + resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} + engines: {node: '>= 0.4'} + dependencies: + define-properties: 1.1.4 + dev: false + + /globalyzer/0.1.0: + resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==} + dev: false + + /globrex/0.1.2: + resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} + dev: false + + /graceful-fs/4.2.10: + resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} + dev: false + + /gray-matter/4.0.3: + resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} + engines: {node: '>=6.0'} + dependencies: + js-yaml: 3.14.1 + kind-of: 6.0.3 + section-matter: 1.0.0 + strip-bom-string: 1.0.0 + dev: false + + /has-flag/3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + dev: false + + /has-flag/4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + dev: false + + /has-package-exports/1.3.0: + resolution: {integrity: sha512-e9OeXPQnmPhYoJ63lXC4wWe34TxEGZDZ3OQX9XRqp2VwsfLl3bQBy7VehLnd34g3ef8CmYlBLGqEMKXuz8YazQ==} + dependencies: + '@ljharb/has-package-exports-patterns': 0.0.2 + dev: false + + /has-property-descriptors/1.0.0: + resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} + dependencies: + get-intrinsic: 1.1.3 + dev: false + + /has-symbols/1.0.3: + resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} + engines: {node: '>= 0.4'} + dev: false + + /has/1.0.3: + resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} + engines: {node: '>= 0.4.0'} + dependencies: + function-bind: 1.1.1 + dev: false + + /hast-to-hyperscript/10.0.1: + resolution: {integrity: sha512-dhIVGoKCQVewFi+vz3Vt567E4ejMppS1haBRL6TEmeLeJVB1i/FJIIg/e6s1Bwn0g5qtYojHEKvyGA+OZuyifw==} + dependencies: + '@types/unist': 2.0.6 + comma-separated-tokens: 2.0.2 + property-information: 6.1.1 + space-separated-tokens: 2.0.1 + style-to-object: 0.3.0 + unist-util-is: 5.1.1 + web-namespaces: 2.0.1 + dev: false + + /hast-util-from-parse5/7.1.0: + resolution: {integrity: sha512-m8yhANIAccpU4K6+121KpPP55sSl9/samzQSQGpb0mTExcNh2WlvjtMwSWFhg6uqD4Rr6Nfa8N6TMypQM51rzQ==} + dependencies: + '@types/hast': 2.3.4 + '@types/parse5': 6.0.3 + '@types/unist': 2.0.6 + hastscript: 7.1.0 + property-information: 6.1.1 + vfile: 5.3.5 + vfile-location: 4.0.1 + web-namespaces: 2.0.1 + dev: false + + /hast-util-is-element/2.1.2: + resolution: {integrity: sha512-thjnlGAnwP8ef/GSO1Q8BfVk2gundnc2peGQqEg2kUt/IqesiGg/5mSwN2fE7nLzy61pg88NG6xV+UrGOrx9EA==} + dependencies: + '@types/hast': 2.3.4 + '@types/unist': 2.0.6 + dev: false + + /hast-util-parse-selector/3.1.0: + resolution: {integrity: sha512-AyjlI2pTAZEOeu7GeBPZhROx0RHBnydkQIXlhnFzDi0qfXTmGUWoCYZtomHbrdrheV4VFUlPcfJ6LMF5T6sQzg==} + dependencies: + '@types/hast': 2.3.4 + dev: false + + /hast-util-raw/7.2.2: + resolution: {integrity: sha512-0x3BhhdlBcqRIKyc095lBSDvmQNMY3Eulj2PLsT5XCyKYrxssI5yr3P4Kv/PBo1s/DMkZy2voGkMXECnFCZRLQ==} + dependencies: + '@types/hast': 2.3.4 + '@types/parse5': 6.0.3 + hast-util-from-parse5: 7.1.0 + hast-util-to-parse5: 7.0.0 + html-void-elements: 2.0.1 + parse5: 6.0.1 + unist-util-position: 4.0.3 + unist-util-visit: 4.1.1 + vfile: 5.3.5 + web-namespaces: 2.0.1 + zwitch: 2.0.2 + dev: false + + /hast-util-to-estree/2.1.0: + resolution: {integrity: sha512-Vwch1etMRmm89xGgz+voWXvVHba2iiMdGMKmaMfYt35rbVtFDq8JNwwAIvi8zHMkO6Gvqo9oTMwJTmzVRfXh4g==} + dependencies: + '@types/estree': 1.0.0 + '@types/estree-jsx': 1.0.0 + '@types/hast': 2.3.4 + '@types/unist': 2.0.6 + comma-separated-tokens: 2.0.2 + estree-util-attach-comments: 2.1.0 + estree-util-is-identifier-name: 2.0.1 + hast-util-whitespace: 2.0.0 + mdast-util-mdx-expression: 1.3.1 + mdast-util-mdxjs-esm: 1.3.0 + property-information: 6.1.1 + space-separated-tokens: 2.0.1 + style-to-object: 0.3.0 + unist-util-position: 4.0.3 + zwitch: 2.0.2 + transitivePeerDependencies: + - supports-color + dev: false + + /hast-util-to-html/8.0.3: + resolution: {integrity: sha512-/D/E5ymdPYhHpPkuTHOUkSatxr4w1ZKrZsG0Zv/3C2SRVT0JFJG53VS45AMrBtYk0wp5A7ksEhiC8QaOZM95+A==} + dependencies: + '@types/hast': 2.3.4 + ccount: 2.0.1 + comma-separated-tokens: 2.0.2 + hast-util-is-element: 2.1.2 + hast-util-whitespace: 2.0.0 + html-void-elements: 2.0.1 + property-information: 6.1.1 + space-separated-tokens: 2.0.1 + stringify-entities: 4.0.3 + unist-util-is: 5.1.1 + dev: false + + /hast-util-to-parse5/7.0.0: + resolution: {integrity: sha512-YHiS6aTaZ3N0Q3nxaY/Tj98D6kM8QX5Q8xqgg8G45zR7PvWnPGPP0vcKCgb/moIydEJ/QWczVrX0JODCVeoV7A==} + dependencies: + '@types/hast': 2.3.4 + '@types/parse5': 6.0.3 + hast-to-hyperscript: 10.0.1 + property-information: 6.1.1 + web-namespaces: 2.0.1 + zwitch: 2.0.2 + dev: false + + /hast-util-whitespace/2.0.0: + resolution: {integrity: sha512-Pkw+xBHuV6xFeJprJe2BBEoDV+AvQySaz3pPDRUs5PNZEMQjpXJJueqrpcHIXxnWTcAGi/UOCgVShlkY6kLoqg==} + dev: false + + /hastscript/7.1.0: + resolution: {integrity: sha512-uBjaTTLN0MkCZxY/R2fWUOcu7FRtUVzKRO5P/RAfgsu3yFiMB1JWCO4AjeVkgHxAira1f2UecHK5WfS9QurlWA==} + dependencies: + '@types/hast': 2.3.4 + comma-separated-tokens: 2.0.2 + hast-util-parse-selector: 3.1.0 + property-information: 6.1.1 + space-separated-tokens: 2.0.1 + dev: false + + /html-entities/2.3.3: + resolution: {integrity: sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==} + dev: false + + /html-escaper/3.0.3: + resolution: {integrity: sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==} + dev: false + + /html-void-elements/2.0.1: + resolution: {integrity: sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==} + dev: false + + /htmlparser2/8.0.1: + resolution: {integrity: sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==} + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + domutils: 3.0.1 + entities: 4.4.0 + dev: false + + /human-signals/3.0.1: + resolution: {integrity: sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==} + engines: {node: '>=12.20.0'} + dev: false + + /iconv-lite/0.4.24: + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + engines: {node: '>=0.10.0'} + dependencies: + safer-buffer: 2.1.2 + dev: false + + /ieee754/1.2.1: + resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + dev: false + + /import-meta-resolve/2.1.0: + resolution: {integrity: sha512-yG9pxkWJVTy4cmRsNWE3ztFdtFuYIV8G4N+cbCkO8b+qngkLyIUhxQFuZ0qJm67+0nUOxjMPT7nfksPKza1v2g==} + dev: false + + /inflight/1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + dev: false + + /inherits/2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + dev: false + + /inline-style-parser/0.1.1: + resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==} + dev: false + + /inquirer/8.2.4: + resolution: {integrity: sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==} + engines: {node: '>=12.0.0'} + dependencies: + ansi-escapes: 4.3.2 + chalk: 4.1.2 + cli-cursor: 3.1.0 + cli-width: 3.0.0 + external-editor: 3.1.0 + figures: 3.2.0 + lodash: 4.17.21 + mute-stream: 0.0.8 + ora: 5.4.1 + run-async: 2.4.1 + rxjs: 7.5.7 + string-width: 4.2.3 + strip-ansi: 6.0.1 + through: 2.3.8 + wrap-ansi: 7.0.0 + dev: false + + /is-alphabetical/2.0.1: + resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} + dev: false + + /is-alphanumerical/2.0.1: + resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} + dependencies: + is-alphabetical: 2.0.1 + is-decimal: 2.0.1 + dev: false + + /is-binary-path/2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + dependencies: + binary-extensions: 2.2.0 + dev: false + + /is-buffer/1.1.6: + resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} + dev: false + + /is-buffer/2.0.5: + resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} + engines: {node: '>=4'} + dev: false + + /is-core-module/2.10.0: + resolution: {integrity: sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==} + dependencies: + has: 1.0.3 + dev: false + + /is-decimal/2.0.1: + resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} + dev: false + + /is-docker/2.2.1: + resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} + engines: {node: '>=8'} + hasBin: true + dev: false + + /is-docker/3.0.0: + resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + hasBin: true + dev: false + + /is-extendable/0.1.1: + resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} + engines: {node: '>=0.10.0'} + dev: false + + /is-extglob/2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + dev: false + + /is-fullwidth-code-point/3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + dev: false + + /is-glob/4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + dependencies: + is-extglob: 2.1.1 + dev: false + + /is-hexadecimal/2.0.1: + resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} + dev: false + + /is-interactive/1.0.0: + resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} + engines: {node: '>=8'} + dev: false + + /is-interactive/2.0.0: + resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==} + engines: {node: '>=12'} + dev: false + + /is-number/7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + dev: false + + /is-plain-obj/4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + dev: false + + /is-reference/3.0.0: + resolution: {integrity: sha512-Eo1W3wUoHWoCoVM4GVl/a+K0IgiqE5aIo4kJABFyMum1ZORlPkC+UC357sSQUL5w5QCE5kCC9upl75b7+7CY/Q==} + dependencies: + '@types/estree': 1.0.0 + dev: false + + /is-stream/3.0.0: + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: false + + /is-unicode-supported/0.1.0: + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} + dev: false + + /is-unicode-supported/1.3.0: + resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==} + engines: {node: '>=12'} + dev: false + + /is-wsl/2.2.0: + resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} + engines: {node: '>=8'} + dependencies: + is-docker: 2.2.1 + dev: false + + /isexe/2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + dev: false + + /js-tokens/4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + dev: false + + /js-yaml/3.14.1: + resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} + hasBin: true + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + dev: false + + /jsesc/2.5.2: + resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} + engines: {node: '>=4'} + hasBin: true + dev: false + + /json-stringify-safe/5.0.1: + resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} + dev: false + + /json5/0.5.1: + resolution: {integrity: sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==} + hasBin: true + dev: false + + /json5/2.2.1: + resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==} + engines: {node: '>=6'} + hasBin: true + dev: false + + /jsonc-parser/2.3.1: + resolution: {integrity: sha512-H8jvkz1O50L3dMZCsLqiuB2tA7muqbSg1AtGEkN0leAqGjsUzDJir3Zwr02BhqdcITPg3ei3mZ+HjMocAknhhg==} + dev: false + + /jsonc-parser/3.2.0: + resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} + dev: false + + /jsonfile/6.1.0: + resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + dependencies: + universalify: 2.0.0 + optionalDependencies: + graceful-fs: 4.2.10 + dev: false + + /kind-of/6.0.3: + resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} + engines: {node: '>=0.10.0'} + dev: false + + /kleur/3.0.3: + resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} + engines: {node: '>=6'} + dev: false + + /kleur/4.1.5: + resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} + engines: {node: '>=6'} + dev: false + + /lilconfig/2.0.6: + resolution: {integrity: sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==} + engines: {node: '>=10'} + dev: false + + /load-yaml-file/0.2.0: + resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} + engines: {node: '>=6'} + dependencies: + graceful-fs: 4.2.10 + js-yaml: 3.14.1 + pify: 4.0.1 + strip-bom: 3.0.0 + dev: false + + /locate-path/3.0.0: + resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} + engines: {node: '>=6'} + dependencies: + p-locate: 3.0.0 + path-exists: 3.0.0 + dev: false + + /locate-path/5.0.0: + resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} + engines: {node: '>=8'} + dependencies: + p-locate: 4.1.0 + dev: false + + /locate-path/6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + dependencies: + p-locate: 5.0.0 + dev: false + + /lodash.chunk/4.2.0: + resolution: {integrity: sha512-ZzydJKfUHJwHa+hF5X66zLFCBrWn5GeF28OHEr4WVWtNDXlQ/IjWKPBiikqKo2ne0+v6JgCgJ0GzJp8k8bHC7w==} + dev: false + + /lodash.get/4.4.2: + resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} + dev: false + + /lodash/4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + dev: false + + /log-symbols/4.1.0: + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} + dependencies: + chalk: 4.1.2 + is-unicode-supported: 0.1.0 + dev: false + + /log-symbols/5.1.0: + resolution: {integrity: sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==} + engines: {node: '>=12'} + dependencies: + chalk: 5.1.1 + is-unicode-supported: 1.3.0 + dev: false + + /longest-streak/3.0.1: + resolution: {integrity: sha512-cHlYSUpL2s7Fb3394mYxwTYj8niTaNHUCLr0qdiCXQfSjfuA7CKofpX2uSwEfFDQ0EB7JcnMnm+GjbqqoinYYg==} + dev: false + + /loose-envify/1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + dependencies: + js-tokens: 4.0.0 + dev: false + + /lru-cache/6.0.0: + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} + dependencies: + yallist: 4.0.0 + dev: false + + /magic-string/0.25.9: + resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} + dependencies: + sourcemap-codec: 1.4.8 + dev: false + + /markdown-extensions/1.1.1: + resolution: {integrity: sha512-WWC0ZuMzCyDHYCasEGs4IPvLyTGftYwh6wIEOULOF0HXcqZlhwRzrK0w2VUlxWA98xnvb/jszw4ZSkJ6ADpM6Q==} + engines: {node: '>=0.10.0'} + dev: false + + /markdown-table/3.0.2: + resolution: {integrity: sha512-y8j3a5/DkJCmS5x4dMCQL+OR0+2EAq3DOtio1COSHsmW2BGXnNCK3v12hJt1LrUz5iZH5g0LmuYOjDdI+czghA==} + dev: false + + /marked/4.1.1: + resolution: {integrity: sha512-0cNMnTcUJPxbA6uWmCmjWz4NJRe/0Xfk2NhXCUHjew9qJzFN20krFnsUe7QynwqOwa5m1fZ4UDg0ycKFVC0ccw==} + engines: {node: '>= 12'} + hasBin: true + dev: false + + /matcher/3.0.0: + resolution: {integrity: sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==} + engines: {node: '>=10'} + dependencies: + escape-string-regexp: 4.0.0 + dev: false + + /md5/2.3.0: + resolution: {integrity: sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==} + dependencies: + charenc: 0.0.2 + crypt: 0.0.2 + is-buffer: 1.1.6 + dev: false + + /mdast-util-definitions/5.1.1: + resolution: {integrity: sha512-rQ+Gv7mHttxHOBx2dkF4HWTg+EE+UR78ptQWDylzPKaQuVGdG4HIoY3SrS/pCp80nZ04greFvXbVFHT+uf0JVQ==} + dependencies: + '@types/mdast': 3.0.10 + '@types/unist': 2.0.6 + unist-util-visit: 4.1.1 + dev: false + + /mdast-util-find-and-replace/2.2.1: + resolution: {integrity: sha512-SobxkQXFAdd4b5WmEakmkVoh18icjQRxGy5OWTCzgsLRm1Fu/KCtwD1HIQSsmq5ZRjVH0Ehwg6/Fn3xIUk+nKw==} + dependencies: + escape-string-regexp: 5.0.0 + unist-util-is: 5.1.1 + unist-util-visit-parents: 5.1.1 + dev: false + + /mdast-util-from-markdown/1.2.0: + resolution: {integrity: sha512-iZJyyvKD1+K7QX1b5jXdE7Sc5dtoTry1vzV28UZZe8Z1xVnB/czKntJ7ZAkG0tANqRnBF6p3p7GpU1y19DTf2Q==} + dependencies: + '@types/mdast': 3.0.10 + '@types/unist': 2.0.6 + decode-named-character-reference: 1.0.2 + mdast-util-to-string: 3.1.0 + micromark: 3.1.0 + micromark-util-decode-numeric-character-reference: 1.0.0 + micromark-util-decode-string: 1.0.2 + micromark-util-normalize-identifier: 1.0.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + unist-util-stringify-position: 3.0.2 + uvu: 0.5.6 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-frontmatter/1.0.0: + resolution: {integrity: sha512-7itKvp0arEVNpCktOET/eLFAYaZ+0cNjVtFtIPxgQ5tV+3i+D4SDDTjTzPWl44LT59PC+xdx+glNTawBdF98Mw==} + dependencies: + micromark-extension-frontmatter: 1.0.0 + dev: false + + /mdast-util-gfm-autolink-literal/1.0.2: + resolution: {integrity: sha512-FzopkOd4xTTBeGXhXSBU0OCDDh5lUj2rd+HQqG92Ld+jL4lpUfgX2AT2OHAVP9aEeDKp7G92fuooSZcYJA3cRg==} + dependencies: + '@types/mdast': 3.0.10 + ccount: 2.0.1 + mdast-util-find-and-replace: 2.2.1 + micromark-util-character: 1.1.0 + dev: false + + /mdast-util-gfm-footnote/1.0.1: + resolution: {integrity: sha512-p+PrYlkw9DeCRkTVw1duWqPRHX6Ywh2BNKJQcZbCwAuP/59B0Lk9kakuAd7KbQprVO4GzdW8eS5++A9PUSqIyw==} + dependencies: + '@types/mdast': 3.0.10 + mdast-util-to-markdown: 1.3.0 + micromark-util-normalize-identifier: 1.0.0 + dev: false + + /mdast-util-gfm-strikethrough/1.0.1: + resolution: {integrity: sha512-zKJbEPe+JP6EUv0mZ0tQUyLQOC+FADt0bARldONot/nefuISkaZFlmVK4tU6JgfyZGrky02m/I6PmehgAgZgqg==} + dependencies: + '@types/mdast': 3.0.10 + mdast-util-to-markdown: 1.3.0 + dev: false + + /mdast-util-gfm-table/1.0.6: + resolution: {integrity: sha512-uHR+fqFq3IvB3Rd4+kzXW8dmpxUhvgCQZep6KdjsLK4O6meK5dYZEayLtIxNus1XO3gfjfcIFe8a7L0HZRGgag==} + dependencies: + '@types/mdast': 3.0.10 + markdown-table: 3.0.2 + mdast-util-from-markdown: 1.2.0 + mdast-util-to-markdown: 1.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-gfm-task-list-item/1.0.1: + resolution: {integrity: sha512-KZ4KLmPdABXOsfnM6JHUIjxEvcx2ulk656Z/4Balw071/5qgnhz+H1uGtf2zIGnrnvDC8xR4Fj9uKbjAFGNIeA==} + dependencies: + '@types/mdast': 3.0.10 + mdast-util-to-markdown: 1.3.0 + dev: false + + /mdast-util-gfm/2.0.1: + resolution: {integrity: sha512-42yHBbfWIFisaAfV1eixlabbsa6q7vHeSPY+cg+BBjX51M8xhgMacqH9g6TftB/9+YkcI0ooV4ncfrJslzm/RQ==} + dependencies: + mdast-util-from-markdown: 1.2.0 + mdast-util-gfm-autolink-literal: 1.0.2 + mdast-util-gfm-footnote: 1.0.1 + mdast-util-gfm-strikethrough: 1.0.1 + mdast-util-gfm-table: 1.0.6 + mdast-util-gfm-task-list-item: 1.0.1 + mdast-util-to-markdown: 1.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdx-expression/1.3.1: + resolution: {integrity: sha512-TTb6cKyTA1RD+1su1iStZ5PAv3rFfOUKcoU5EstUpv/IZo63uDX03R8+jXjMEhcobXnNOiG6/ccekvVl4eV1zQ==} + dependencies: + '@types/estree-jsx': 1.0.0 + '@types/hast': 2.3.4 + '@types/mdast': 3.0.10 + mdast-util-from-markdown: 1.2.0 + mdast-util-to-markdown: 1.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdx-jsx/1.2.0: + resolution: {integrity: sha512-5+ot/kfxYd3ChgEMwsMUO71oAfYjyRI3pADEK4I7xTmWLGQ8Y7ghm1CG36zUoUvDPxMlIYwQV/9DYHAUWdG4dA==} + dependencies: + '@types/estree-jsx': 0.0.1 + '@types/mdast': 3.0.10 + mdast-util-to-markdown: 1.3.0 + parse-entities: 4.0.0 + stringify-entities: 4.0.3 + unist-util-remove-position: 4.0.1 + unist-util-stringify-position: 3.0.2 + vfile-message: 3.1.2 + dev: false + + /mdast-util-mdx-jsx/2.1.0: + resolution: {integrity: sha512-KzgzfWMhdteDkrY4mQtyvTU5bc/W4ppxhe9SzelO6QUUiwLAM+Et2Dnjjprik74a336kHdo0zKm7Tp+n6FFeRg==} + dependencies: + '@types/estree-jsx': 1.0.0 + '@types/hast': 2.3.4 + '@types/mdast': 3.0.10 + ccount: 2.0.1 + mdast-util-to-markdown: 1.3.0 + parse-entities: 4.0.0 + stringify-entities: 4.0.3 + unist-util-remove-position: 4.0.1 + unist-util-stringify-position: 3.0.2 + vfile-message: 3.1.2 + dev: false + + /mdast-util-mdx/2.0.0: + resolution: {integrity: sha512-M09lW0CcBT1VrJUaF/PYxemxxHa7SLDHdSn94Q9FhxjCQfuW7nMAWKWimTmA3OyDMSTH981NN1csW1X+HPSluw==} + dependencies: + mdast-util-mdx-expression: 1.3.1 + mdast-util-mdx-jsx: 2.1.0 + mdast-util-mdxjs-esm: 1.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdxjs-esm/1.3.0: + resolution: {integrity: sha512-7N5ihsOkAEGjFotIX9p/YPdl4TqUoMxL4ajNz7PbT89BqsdWJuBC9rvgt6wpbwTZqWWR0jKWqQbwsOWDBUZv4g==} + dependencies: + '@types/estree-jsx': 1.0.0 + '@types/hast': 2.3.4 + '@types/mdast': 3.0.10 + mdast-util-from-markdown: 1.2.0 + mdast-util-to-markdown: 1.3.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-to-hast/12.2.4: + resolution: {integrity: sha512-a21xoxSef1l8VhHxS1Dnyioz6grrJkoaCUgGzMD/7dWHvboYX3VW53esRUfB5tgTyz4Yos1n25SPcj35dJqmAg==} + dependencies: + '@types/hast': 2.3.4 + '@types/mdast': 3.0.10 + mdast-util-definitions: 5.1.1 + micromark-util-sanitize-uri: 1.1.0 + trim-lines: 3.0.1 + unist-builder: 3.0.0 + unist-util-generated: 2.0.0 + unist-util-position: 4.0.3 + unist-util-visit: 4.1.1 + dev: false + + /mdast-util-to-markdown/1.3.0: + resolution: {integrity: sha512-6tUSs4r+KK4JGTTiQ7FfHmVOaDrLQJPmpjD6wPMlHGUVXoG9Vjc3jIeP+uyBWRf8clwB2blM+W7+KrlMYQnftA==} + dependencies: + '@types/mdast': 3.0.10 + '@types/unist': 2.0.6 + longest-streak: 3.0.1 + mdast-util-to-string: 3.1.0 + micromark-util-decode-string: 1.0.2 + unist-util-visit: 4.1.1 + zwitch: 2.0.2 + dev: false + + /mdast-util-to-string/3.1.0: + resolution: {integrity: sha512-n4Vypz/DZgwo0iMHLQL49dJzlp7YtAJP+N07MZHpjPf/5XJuHUWstviF4Mn2jEiR/GNmtnRRqnwsXExk3igfFA==} + dev: false + + /merge-stream/2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + dev: false + + /merge2/1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + dev: false + + /micromark-core-commonmark/1.0.6: + resolution: {integrity: sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA==} + dependencies: + decode-named-character-reference: 1.0.2 + micromark-factory-destination: 1.0.0 + micromark-factory-label: 1.0.2 + micromark-factory-space: 1.0.0 + micromark-factory-title: 1.0.2 + micromark-factory-whitespace: 1.0.0 + micromark-util-character: 1.1.0 + micromark-util-chunked: 1.0.0 + micromark-util-classify-character: 1.0.0 + micromark-util-html-tag-name: 1.1.0 + micromark-util-normalize-identifier: 1.0.0 + micromark-util-resolve-all: 1.0.0 + micromark-util-subtokenize: 1.0.2 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + dev: false + + /micromark-extension-frontmatter/1.0.0: + resolution: {integrity: sha512-EXjmRnupoX6yYuUJSQhrQ9ggK0iQtQlpi6xeJzVD5xscyAI+giqco5fdymayZhJMbIFecjnE2yz85S9NzIgQpg==} + dependencies: + fault: 2.0.1 + micromark-util-character: 1.1.0 + micromark-util-symbol: 1.0.1 + dev: false + + /micromark-extension-gfm-autolink-literal/1.0.3: + resolution: {integrity: sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg==} + dependencies: + micromark-util-character: 1.1.0 + micromark-util-sanitize-uri: 1.1.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + dev: false + + /micromark-extension-gfm-footnote/1.0.4: + resolution: {integrity: sha512-E/fmPmDqLiMUP8mLJ8NbJWJ4bTw6tS+FEQS8CcuDtZpILuOb2kjLqPEeAePF1djXROHXChM/wPJw0iS4kHCcIg==} + dependencies: + micromark-core-commonmark: 1.0.6 + micromark-factory-space: 1.0.0 + micromark-util-character: 1.1.0 + micromark-util-normalize-identifier: 1.0.0 + micromark-util-sanitize-uri: 1.1.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + dev: false + + /micromark-extension-gfm-strikethrough/1.0.4: + resolution: {integrity: sha512-/vjHU/lalmjZCT5xt7CcHVJGq8sYRm80z24qAKXzaHzem/xsDYb2yLL+NNVbYvmpLx3O7SYPuGL5pzusL9CLIQ==} + 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.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + dev: false + + /micromark-extension-gfm-table/1.0.5: + resolution: {integrity: sha512-xAZ8J1X9W9K3JTJTUL7G6wSKhp2ZYHrFk5qJgY/4B33scJzE2kpfRL6oiw/veJTbt7jiM/1rngLlOKPWr1G+vg==} + dependencies: + micromark-factory-space: 1.0.0 + micromark-util-character: 1.1.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + dev: false + + /micromark-extension-gfm-tagfilter/1.0.1: + resolution: {integrity: sha512-Ty6psLAcAjboRa/UKUbbUcwjVAv5plxmpUTy2XC/3nJFL37eHej8jrHrRzkqcpipJliuBH30DTs7+3wqNcQUVA==} + dependencies: + micromark-util-types: 1.0.2 + dev: false + + /micromark-extension-gfm-task-list-item/1.0.3: + resolution: {integrity: sha512-PpysK2S1Q/5VXi72IIapbi/jliaiOFzv7THH4amwXeYXLq3l1uo8/2Be0Ac1rEwK20MQEsGH2ltAZLNY2KI/0Q==} + dependencies: + micromark-factory-space: 1.0.0 + micromark-util-character: 1.1.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + dev: false + + /micromark-extension-gfm/2.0.1: + resolution: {integrity: sha512-p2sGjajLa0iYiGQdT0oelahRYtMWvLjy8J9LOCxzIQsllMCGLbsLW+Nc+N4vi02jcRJvedVJ68cjelKIO6bpDA==} + dependencies: + micromark-extension-gfm-autolink-literal: 1.0.3 + micromark-extension-gfm-footnote: 1.0.4 + micromark-extension-gfm-strikethrough: 1.0.4 + micromark-extension-gfm-table: 1.0.5 + micromark-extension-gfm-tagfilter: 1.0.1 + micromark-extension-gfm-task-list-item: 1.0.3 + micromark-util-combine-extensions: 1.0.0 + micromark-util-types: 1.0.2 + dev: false + + /micromark-extension-mdx-expression/1.0.3: + resolution: {integrity: sha512-TjYtjEMszWze51NJCZmhv7MEBcgYRgb3tJeMAJ+HQCAaZHHRBaDCccqQzGizR/H4ODefP44wRTgOn2vE5I6nZA==} + dependencies: + micromark-factory-mdx-expression: 1.0.6 + micromark-factory-space: 1.0.0 + micromark-util-character: 1.1.0 + micromark-util-events-to-acorn: 1.2.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + dev: false + + /micromark-extension-mdx-jsx/1.0.3: + resolution: {integrity: sha512-VfA369RdqUISF0qGgv2FfV7gGjHDfn9+Qfiv5hEwpyr1xscRj/CiVRkU7rywGFCO7JwJ5L0e7CJz60lY52+qOA==} + dependencies: + '@types/acorn': 4.0.6 + estree-util-is-identifier-name: 2.0.1 + micromark-factory-mdx-expression: 1.0.6 + micromark-factory-space: 1.0.0 + micromark-util-character: 1.1.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + vfile-message: 3.1.2 + dev: false + + /micromark-extension-mdx-md/1.0.0: + resolution: {integrity: sha512-xaRAMoSkKdqZXDAoSgp20Azm0aRQKGOl0RrS81yGu8Hr/JhMsBmfs4wR7m9kgVUIO36cMUQjNyiyDKPrsv8gOw==} + dependencies: + micromark-util-types: 1.0.2 + dev: false + + /micromark-extension-mdxjs-esm/1.0.3: + resolution: {integrity: sha512-2N13ol4KMoxb85rdDwTAC6uzs8lMX0zeqpcyx7FhS7PxXomOnLactu8WI8iBNXW8AVyea3KIJd/1CKnUmwrK9A==} + dependencies: + micromark-core-commonmark: 1.0.6 + micromark-util-character: 1.1.0 + micromark-util-events-to-acorn: 1.2.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + unist-util-position-from-estree: 1.1.1 + uvu: 0.5.6 + vfile-message: 3.1.2 + dev: false + + /micromark-extension-mdxjs/1.0.0: + resolution: {integrity: sha512-TZZRZgeHvtgm+IhtgC2+uDMR7h8eTKF0QUX9YsgoL9+bADBpBY6SiLvWqnBlLbCEevITmTqmEuY3FoxMKVs1rQ==} + dependencies: + acorn: 8.8.0 + acorn-jsx: 5.3.2_acorn@8.8.0 + micromark-extension-mdx-expression: 1.0.3 + micromark-extension-mdx-jsx: 1.0.3 + micromark-extension-mdx-md: 1.0.0 + micromark-extension-mdxjs-esm: 1.0.3 + micromark-util-combine-extensions: 1.0.0 + micromark-util-types: 1.0.2 + dev: false + + /micromark-factory-destination/1.0.0: + resolution: {integrity: sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw==} + dependencies: + micromark-util-character: 1.1.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + dev: false + + /micromark-factory-label/1.0.2: + resolution: {integrity: sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg==} + dependencies: + micromark-util-character: 1.1.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + dev: false + + /micromark-factory-mdx-expression/1.0.6: + resolution: {integrity: sha512-WRQIc78FV7KrCfjsEf/sETopbYjElh3xAmNpLkd1ODPqxEngP42eVRGbiPEQWpRV27LzqW+XVTvQAMIIRLPnNA==} + dependencies: + micromark-factory-space: 1.0.0 + micromark-util-character: 1.1.0 + micromark-util-events-to-acorn: 1.2.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + unist-util-position-from-estree: 1.1.1 + uvu: 0.5.6 + vfile-message: 3.1.2 + dev: false + + /micromark-factory-space/1.0.0: + resolution: {integrity: sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew==} + dependencies: + micromark-util-character: 1.1.0 + micromark-util-types: 1.0.2 + dev: false + + /micromark-factory-title/1.0.2: + resolution: {integrity: sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A==} + dependencies: + micromark-factory-space: 1.0.0 + micromark-util-character: 1.1.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + dev: false + + /micromark-factory-whitespace/1.0.0: + resolution: {integrity: sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A==} + dependencies: + micromark-factory-space: 1.0.0 + micromark-util-character: 1.1.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + dev: false + + /micromark-util-character/1.1.0: + resolution: {integrity: sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg==} + dependencies: + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + dev: false + + /micromark-util-chunked/1.0.0: + resolution: {integrity: sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g==} + dependencies: + micromark-util-symbol: 1.0.1 + dev: false + + /micromark-util-classify-character/1.0.0: + resolution: {integrity: sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA==} + dependencies: + micromark-util-character: 1.1.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + dev: false + + /micromark-util-combine-extensions/1.0.0: + resolution: {integrity: sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA==} + dependencies: + micromark-util-chunked: 1.0.0 + micromark-util-types: 1.0.2 + dev: false + + /micromark-util-decode-numeric-character-reference/1.0.0: + resolution: {integrity: sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w==} + dependencies: + micromark-util-symbol: 1.0.1 + dev: false + + /micromark-util-decode-string/1.0.2: + resolution: {integrity: sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q==} + dependencies: + decode-named-character-reference: 1.0.2 + micromark-util-character: 1.1.0 + micromark-util-decode-numeric-character-reference: 1.0.0 + micromark-util-symbol: 1.0.1 + dev: false + + /micromark-util-encode/1.0.1: + resolution: {integrity: sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA==} + dev: false + + /micromark-util-events-to-acorn/1.2.0: + resolution: {integrity: sha512-WWp3bf7xT9MppNuw3yPjpnOxa8cj5ACivEzXJKu0WwnjBYfzaBvIAT9KfeyI0Qkll+bfQtfftSwdgTH6QhTOKw==} + dependencies: + '@types/acorn': 4.0.6 + '@types/estree': 1.0.0 + estree-util-visit: 1.2.0 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + vfile-location: 4.0.1 + vfile-message: 3.1.2 + dev: false + + /micromark-util-html-tag-name/1.1.0: + resolution: {integrity: sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA==} + dev: false + + /micromark-util-normalize-identifier/1.0.0: + resolution: {integrity: sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg==} + dependencies: + micromark-util-symbol: 1.0.1 + dev: false + + /micromark-util-resolve-all/1.0.0: + resolution: {integrity: sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw==} + dependencies: + micromark-util-types: 1.0.2 + dev: false + + /micromark-util-sanitize-uri/1.1.0: + resolution: {integrity: sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg==} + dependencies: + micromark-util-character: 1.1.0 + micromark-util-encode: 1.0.1 + micromark-util-symbol: 1.0.1 + dev: false + + /micromark-util-subtokenize/1.0.2: + resolution: {integrity: sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA==} + dependencies: + micromark-util-chunked: 1.0.0 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + dev: false + + /micromark-util-symbol/1.0.1: + resolution: {integrity: sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ==} + dev: false + + /micromark-util-types/1.0.2: + resolution: {integrity: sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w==} + dev: false + + /micromark/3.1.0: + resolution: {integrity: sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA==} + dependencies: + '@types/debug': 4.1.7 + debug: 4.3.4 + decode-named-character-reference: 1.0.2 + micromark-core-commonmark: 1.0.6 + micromark-factory-space: 1.0.0 + micromark-util-character: 1.1.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.1 + micromark-util-normalize-identifier: 1.0.0 + micromark-util-resolve-all: 1.0.0 + micromark-util-sanitize-uri: 1.1.0 + micromark-util-subtokenize: 1.0.2 + micromark-util-symbol: 1.0.1 + micromark-util-types: 1.0.2 + uvu: 0.5.6 + transitivePeerDependencies: + - supports-color + dev: false + + /micromatch/4.0.5: + resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} + engines: {node: '>=8.6'} + dependencies: + braces: 3.0.2 + picomatch: 2.3.1 + dev: false + + /mime/3.0.0: + resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} + engines: {node: '>=10.0.0'} + hasBin: true + dev: false + + /mimic-fn/2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + dev: false + + /mimic-fn/4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} + dev: false + + /minimatch/3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + dependencies: + brace-expansion: 1.1.11 + dev: false + + /minimist/1.2.7: + resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==} + dev: false + + /mri/1.2.0: + resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} + engines: {node: '>=4'} + dev: false + + /mrmime/1.0.1: + resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==} + engines: {node: '>=10'} + dev: false + + /ms/2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + dev: false + + /mute-stream/0.0.8: + resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} + dev: false + + /nanoid/3.3.4: + resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + dev: false + + /nlcst-to-string/2.0.4: + resolution: {integrity: sha512-3x3jwTd6UPG7vi5k4GEzvxJ5rDA7hVUIRNHPblKuMVP9Z3xmlsd9cgLcpAMkc5uPOBna82EeshROFhsPkbnTZg==} + dev: false + + /nlcst-to-string/3.1.0: + resolution: {integrity: sha512-Y8HQWKw/zrHTCnu2zcFBN1dV6vN0NUG7s5fkEj380G8tF3R+vA2KG+tDl2QoHVQCTHGHVXwoni2RQkDSFQb1PA==} + dependencies: + '@types/nlcst': 1.0.0 + dev: false + + /node-domexception/1.0.0: + resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} + engines: {node: '>=10.5.0'} + dev: false + + /node-fetch/3.2.10: + resolution: {integrity: sha512-MhuzNwdURnZ1Cp4XTazr69K0BTizsBroX7Zx3UgDSVcZYKF/6p0CBe4EUb/hLqmzVhl0UpYfgRljQ4yxE+iCxA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + data-uri-to-buffer: 4.0.0 + fetch-blob: 3.2.0 + formdata-polyfill: 4.0.10 + dev: false + + /node-releases/2.0.6: + resolution: {integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==} + dev: false + + /normalize-path/3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + dev: false + + /normalize-range/0.1.2: + resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} + engines: {node: '>=0.10.0'} + dev: false + + /npm-run-path/5.1.0: + resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + path-key: 4.0.0 + dev: false + + /nth-check/2.1.1: + resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + dependencies: + boolbase: 1.0.0 + dev: false + + /object-hash/3.0.0: + resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} + engines: {node: '>= 6'} + dev: false + + /object-keys/1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + dev: false + + /once/1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + dependencies: + wrappy: 1.0.2 + dev: false + + /onetime/5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} + dependencies: + mimic-fn: 2.1.0 + dev: false + + /onetime/6.0.0: + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} + dependencies: + mimic-fn: 4.0.0 + dev: false + + /open/8.4.0: + resolution: {integrity: sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==} + engines: {node: '>=12'} + dependencies: + define-lazy-prop: 2.0.0 + is-docker: 2.2.1 + is-wsl: 2.2.0 + dev: false + + /ora/5.4.1: + resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} + engines: {node: '>=10'} + dependencies: + bl: 4.1.0 + chalk: 4.1.2 + cli-cursor: 3.1.0 + cli-spinners: 2.7.0 + is-interactive: 1.0.0 + is-unicode-supported: 0.1.0 + log-symbols: 4.1.0 + strip-ansi: 6.0.1 + wcwidth: 1.0.1 + dev: false + + /ora/6.1.2: + resolution: {integrity: sha512-EJQ3NiP5Xo94wJXIzAyOtSb0QEIAUu7m8t6UZ9krbz0vAJqr92JpcK/lEXg91q6B9pEGqrykkd2EQplnifDSBw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + bl: 5.0.0 + chalk: 5.1.1 + cli-cursor: 4.0.0 + cli-spinners: 2.7.0 + is-interactive: 2.0.0 + is-unicode-supported: 1.3.0 + log-symbols: 5.1.0 + strip-ansi: 7.0.1 + wcwidth: 1.0.1 + dev: false + + /os-tmpdir/1.0.2: + resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} + engines: {node: '>=0.10.0'} + dev: false + + /p-limit/2.3.0: + resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} + engines: {node: '>=6'} + dependencies: + p-try: 2.2.0 + dev: false + + /p-limit/3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + dependencies: + yocto-queue: 0.1.0 + dev: false + + /p-locate/3.0.0: + resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} + engines: {node: '>=6'} + dependencies: + p-limit: 2.3.0 + dev: false + + /p-locate/4.1.0: + resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} + engines: {node: '>=8'} + dependencies: + p-limit: 2.3.0 + dev: false + + /p-locate/5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + dependencies: + p-limit: 3.1.0 + dev: false + + /p-try/2.2.0: + resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} + engines: {node: '>=6'} + dev: false + + /parse-entities/4.0.0: + resolution: {integrity: sha512-5nk9Fn03x3rEhGaX1FU6IDwG/k+GxLXlFAkgrbM1asuAFl3BhdQWvASaIsmwWypRNcZKHPYnIuOSfIWEyEQnPQ==} + dependencies: + '@types/unist': 2.0.6 + character-entities: 2.0.2 + character-entities-legacy: 3.0.0 + character-reference-invalid: 2.0.1 + decode-named-character-reference: 1.0.2 + is-alphanumerical: 2.0.1 + is-decimal: 2.0.1 + is-hexadecimal: 2.0.1 + dev: false + + /parse-latin/5.0.0: + resolution: {integrity: sha512-Ht+4/+AUySMS5HKGAiQpBmkFsHSoGrj6Y83flLCa5OIBdtsVkO3UD4OtboJ0O0vZiOznH02x8qlwg9KLUVXuNg==} + dependencies: + nlcst-to-string: 2.0.4 + unist-util-modify-children: 2.0.0 + unist-util-visit-children: 1.1.4 + dev: false + + /parse5-htmlparser2-tree-adapter/7.0.0: + resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==} + dependencies: + domhandler: 5.0.3 + parse5: 7.1.1 + dev: false + + /parse5/6.0.1: + resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} + dev: false + + /parse5/7.1.1: + resolution: {integrity: sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg==} + dependencies: + entities: 4.4.0 + dev: false + + /path-browserify/1.0.1: + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + dev: false + + /path-exists/3.0.0: + resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} + engines: {node: '>=4'} + dev: false + + /path-exists/4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + dev: false + + /path-is-absolute/1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + dev: false + + /path-key/3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + dev: false + + /path-key/4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + dev: false + + /path-parse/1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + dev: false + + /path-to-regexp/6.2.1: + resolution: {integrity: sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==} + dev: false + + /periscopic/3.0.4: + resolution: {integrity: sha512-SFx68DxCv0Iyo6APZuw/AKewkkThGwssmU0QWtTlvov3VAtPX+QJ4CadwSaz8nrT5jPIuxdvJWB4PnD2KNDxQg==} + dependencies: + estree-walker: 3.0.1 + is-reference: 3.0.0 + dev: false + + /picocolors/1.0.0: + resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + dev: false + + /picomatch/2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + dev: false + + /pify/2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} + dev: false + + /pify/4.0.1: + resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} + engines: {node: '>=6'} + dev: false + + /pkg-dir/4.2.0: + resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} + engines: {node: '>=8'} + dependencies: + find-up: 4.1.0 + dev: false + + /pkg-up/3.1.0: + resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==} + engines: {node: '>=8'} + dependencies: + find-up: 3.0.0 + dev: false + + /postcss-import/14.1.0_postcss@8.4.17: + resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==} + engines: {node: '>=10.0.0'} + peerDependencies: + postcss: ^8.0.0 + dependencies: + postcss: 8.4.17 + postcss-value-parser: 4.2.0 + read-cache: 1.0.0 + resolve: 1.22.1 + dev: false + + /postcss-js/4.0.0_postcss@8.4.17: + resolution: {integrity: sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==} + engines: {node: ^12 || ^14 || >= 16} + peerDependencies: + postcss: ^8.3.3 + dependencies: + camelcase-css: 2.0.1 + postcss: 8.4.17 + dev: false + + /postcss-load-config/3.1.4_postcss@8.4.17: + resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} + engines: {node: '>= 10'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + dependencies: + lilconfig: 2.0.6 + postcss: 8.4.17 + yaml: 1.10.2 + dev: false + + /postcss-nested/5.0.6_postcss@8.4.17: + resolution: {integrity: sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.2.14 + dependencies: + postcss: 8.4.17 + postcss-selector-parser: 6.0.10 + dev: false + + /postcss-selector-parser/6.0.10: + resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} + engines: {node: '>=4'} + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + dev: false + + /postcss-value-parser/4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + dev: false + + /postcss/8.4.17: + resolution: {integrity: sha512-UNxNOLQydcOFi41yHNMcKRZ39NeXlr8AxGuZJsdub8vIb12fHzcq37DTU/QtbI6WLxNg2gF9Z+8qtRwTj1UI1Q==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.4 + picocolors: 1.0.0 + source-map-js: 1.0.2 + dev: false + + /preact-render-to-string/5.2.5_preact@10.11.1: + resolution: {integrity: sha512-rEBn42C3Wh+AjPxXUbDkb6xw0cTJQgxdYlp6ytUR1uBZF647Wn6ykkopMeQlRl7ggX+qnYYjZ4Hs1abZENl7ww==} + peerDependencies: + preact: '>=10' + dependencies: + preact: 10.11.1 + pretty-format: 3.8.0 + dev: false + + /preact/10.11.1: + resolution: {integrity: sha512-1Wz5PCRm6Fg+6BTXWJHhX4wRK9MZbZBHuwBqfZlOdVm2NqPe8/rjYpufvYCwJSGb9layyzB2jTTXfpCTynLqFQ==} + dev: false + + /preferred-pm/3.0.3: + resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==} + engines: {node: '>=10'} + dependencies: + find-up: 5.0.0 + find-yarn-workspace-root2: 1.2.16 + path-exists: 4.0.0 + which-pm: 2.0.0 + dev: false + + /prettier-plugin-astro/0.5.5: + resolution: {integrity: sha512-tEJiPjTB1eVT5Czcbkj9GoRG/oMewOnG9x737p/hJUD5QXJmn7LiYFM2dKkX0i4A1fhhsGfXT+uqsAXcw2r8JQ==} + engines: {node: ^14.15.0 || >=16.0.0, npm: '>=6.14.0'} + dependencies: + '@astrojs/compiler': 0.23.5 + prettier: 2.7.1 + sass-formatter: 0.7.5 + synckit: 0.7.3 + dev: false + + /prettier/2.7.1: + resolution: {integrity: sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==} + engines: {node: '>=10.13.0'} + hasBin: true + dev: false + + /pretty-format/3.8.0: + resolution: {integrity: sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew==} + dev: false + + /prismjs/1.29.0: + resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} + engines: {node: '>=6'} + dev: false + + /prompts/2.4.2: + resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} + engines: {node: '>= 6'} + dependencies: + kleur: 3.0.3 + sisteransi: 1.0.5 + dev: false + + /property-information/6.1.1: + resolution: {integrity: sha512-hrzC564QIl0r0vy4l6MvRLhafmUowhO/O3KgVSoXIbbA2Sz4j8HGpJc6T2cubRVwMwpdiG/vKGfhT4IixmKN9w==} + dev: false + + /queue-microtask/1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + dev: false + + /quick-lru/5.1.1: + resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} + engines: {node: '>=10'} + dev: false + + /react-dom/18.2.0_react@18.2.0: + resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} + peerDependencies: + react: ^18.2.0 + dependencies: + loose-envify: 1.4.0 + react: 18.2.0 + scheduler: 0.23.0 + dev: false + + /react/18.2.0: + resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} + engines: {node: '>=0.10.0'} + dependencies: + loose-envify: 1.4.0 + dev: false + + /read-cache/1.0.0: + resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} + dependencies: + pify: 2.3.0 + dev: false + + /readable-stream/3.6.0: + resolution: {integrity: sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==} + engines: {node: '>= 6'} + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + dev: false + + /readdirp/3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + dependencies: + picomatch: 2.3.1 + dev: false + + /recast/0.20.5: + resolution: {integrity: sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ==} + engines: {node: '>= 4'} + dependencies: + ast-types: 0.14.2 + esprima: 4.0.1 + source-map: 0.6.1 + tslib: 2.4.0 + dev: false + + /rehype-parse/8.0.4: + resolution: {integrity: sha512-MJJKONunHjoTh4kc3dsM1v3C9kGrrxvA3U8PxZlP2SjH8RNUSrb+lF7Y0KVaUDnGH2QZ5vAn7ulkiajM9ifuqg==} + dependencies: + '@types/hast': 2.3.4 + hast-util-from-parse5: 7.1.0 + parse5: 6.0.1 + unified: 10.1.2 + dev: false + + /rehype-raw/6.1.1: + resolution: {integrity: sha512-d6AKtisSRtDRX4aSPsJGTfnzrX2ZkHQLE5kiUuGOeEoLpbEulFF4hj0mLPbsa+7vmguDKOVVEQdHKDSwoaIDsQ==} + dependencies: + '@types/hast': 2.3.4 + hast-util-raw: 7.2.2 + unified: 10.1.2 + dev: false + + /rehype-stringify/9.0.3: + resolution: {integrity: sha512-kWiZ1bgyWlgOxpqD5HnxShKAdXtb2IUljn3hQAhySeak6IOQPPt6DeGnsIh4ixm7yKJWzm8TXFuC/lPfcWHJqw==} + dependencies: + '@types/hast': 2.3.4 + hast-util-to-html: 8.0.3 + unified: 10.1.2 + dev: false + + /rehype/12.0.1: + resolution: {integrity: sha512-ey6kAqwLM3X6QnMDILJthGvG1m1ULROS9NT4uG9IDCuv08SFyLlreSuvOa//DgEvbXx62DS6elGVqusWhRUbgw==} + dependencies: + '@types/hast': 2.3.4 + rehype-parse: 8.0.4 + rehype-stringify: 9.0.3 + unified: 10.1.2 + dev: false + + /remark-frontmatter/4.0.1: + resolution: {integrity: sha512-38fJrB0KnmD3E33a5jZC/5+gGAC2WKNiPw1/fdXJvijBlhA7RCsvJklrYJakS0HedninvaCYW8lQGf9C918GfA==} + dependencies: + '@types/mdast': 3.0.10 + mdast-util-frontmatter: 1.0.0 + micromark-extension-frontmatter: 1.0.0 + unified: 10.1.2 + dev: false + + /remark-gfm/3.0.1: + resolution: {integrity: sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==} + dependencies: + '@types/mdast': 3.0.10 + mdast-util-gfm: 2.0.1 + micromark-extension-gfm: 2.0.1 + unified: 10.1.2 + transitivePeerDependencies: + - supports-color + dev: false + + /remark-mdx/2.1.5: + resolution: {integrity: sha512-A8vw5s+BgOa968Irt8BO7DfWJTE0Fe7Ge3hX8zzDB1DnwMZTNdK6qF2IcFao+/7nzk1vSysKcFp+3ku4vhMpaQ==} + dependencies: + mdast-util-mdx: 2.0.0 + micromark-extension-mdxjs: 1.0.0 + transitivePeerDependencies: + - supports-color + dev: false + + /remark-parse/10.0.1: + resolution: {integrity: sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw==} + dependencies: + '@types/mdast': 3.0.10 + mdast-util-from-markdown: 1.2.0 + unified: 10.1.2 + transitivePeerDependencies: + - supports-color + dev: false + + /remark-rehype/10.1.0: + resolution: {integrity: sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==} + dependencies: + '@types/hast': 2.3.4 + '@types/mdast': 3.0.10 + mdast-util-to-hast: 12.2.4 + unified: 10.1.2 + dev: false + + /remark-smartypants/2.0.0: + resolution: {integrity: sha512-Rc0VDmr/yhnMQIz8n2ACYXlfw/P/XZev884QU1I5u+5DgJls32o97Vc1RbK3pfumLsJomS2yy8eT4Fxj/2MDVA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + retext: 8.1.0 + retext-smartypants: 5.2.0 + unist-util-visit: 4.1.1 + dev: false + + /reselect/4.1.6: + resolution: {integrity: sha512-ZovIuXqto7elwnxyXbBtCPo9YFEr3uJqj2rRbcOOog1bmu2Ag85M4hixSwFWyaBMKXNgvPaJ9OSu9SkBPIeJHQ==} + dev: false + + /resolve/1.22.1: + resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} + hasBin: true + dependencies: + is-core-module: 2.10.0 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + dev: false + + /restore-cursor/3.1.0: + resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} + engines: {node: '>=8'} + dependencies: + onetime: 5.1.2 + signal-exit: 3.0.7 + dev: false + + /restore-cursor/4.0.0: + resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + onetime: 5.1.2 + signal-exit: 3.0.7 + dev: false + + /retext-latin/3.1.0: + resolution: {integrity: sha512-5MrD1tuebzO8ppsja5eEu+ZbBeUNCjoEarn70tkXOS7Bdsdf6tNahsv2bY0Z8VooFF6cw7/6S+d3yI/TMlMVVQ==} + dependencies: + '@types/nlcst': 1.0.0 + parse-latin: 5.0.0 + unherit: 3.0.0 + unified: 10.1.2 + dev: false + + /retext-smartypants/5.2.0: + resolution: {integrity: sha512-Do8oM+SsjrbzT2UNIKgheP0hgUQTDDQYyZaIY3kfq0pdFzoPk+ZClYJ+OERNXveog4xf1pZL4PfRxNoVL7a/jw==} + dependencies: + '@types/nlcst': 1.0.0 + nlcst-to-string: 3.1.0 + unified: 10.1.2 + unist-util-visit: 4.1.1 + dev: false + + /retext-stringify/3.1.0: + resolution: {integrity: sha512-767TLOaoXFXyOnjx/EggXlb37ZD2u4P1n0GJqVdpipqACsQP+20W+BNpMYrlJkq7hxffnFk+jc6mAK9qrbuB8w==} + dependencies: + '@types/nlcst': 1.0.0 + nlcst-to-string: 3.1.0 + unified: 10.1.2 + dev: false + + /retext/8.1.0: + resolution: {integrity: sha512-N9/Kq7YTn6ZpzfiGW45WfEGJqFf1IM1q8OsRa1CGzIebCJBNCANDRmOrholiDRGKo/We7ofKR4SEvcGAWEMD3Q==} + dependencies: + '@types/nlcst': 1.0.0 + retext-latin: 3.1.0 + retext-stringify: 3.1.0 + unified: 10.1.2 + dev: false + + /reusify/1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + dev: false + + /roarr/2.15.4: + resolution: {integrity: sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==} + engines: {node: '>=8.0'} + dependencies: + boolean: 3.2.0 + detect-node: 2.1.0 + globalthis: 1.0.3 + json-stringify-safe: 5.0.1 + semver-compare: 1.0.0 + sprintf-js: 1.1.2 + dev: false + + /rollup/2.78.1: + resolution: {integrity: sha512-VeeCgtGi4P+o9hIg+xz4qQpRl6R401LWEXBmxYKOV4zlF82lyhgh2hTZnheFUbANE8l2A41F458iwj2vEYaXJg==} + engines: {node: '>=10.0.0'} + hasBin: true + optionalDependencies: + fsevents: 2.3.2 + dev: false + + /run-async/2.4.1: + resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} + engines: {node: '>=0.12.0'} + dev: false + + /run-parallel/1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + dependencies: + queue-microtask: 1.2.3 + dev: false + + /rxjs/7.5.7: + resolution: {integrity: sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==} + dependencies: + tslib: 2.4.0 + dev: false + + /s.color/0.0.15: + resolution: {integrity: sha512-AUNrbEUHeKY8XsYr/DYpl+qk5+aM+DChopnWOPEzn8YKzOhv4l2zH6LzZms3tOZP3wwdOyc0RmTciyi46HLIuA==} + dev: false + + /sade/1.8.1: + resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} + engines: {node: '>=6'} + dependencies: + mri: 1.2.0 + dev: false + + /safe-buffer/5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + dev: false + + /safer-buffer/2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + dev: false + + /sass-formatter/0.7.5: + resolution: {integrity: sha512-NKFP8ddjhUYi6A/iD1cEtzkEs91U61kzqe3lY9SVNuvX7LGc88xnEN0mmsWL7Ol//YTi2GL/ol7b9XZ2+hgXuA==} + dependencies: + suf-log: 2.5.3 + dev: false + + /scheduler/0.23.0: + resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} + dependencies: + loose-envify: 1.4.0 + dev: false + + /section-matter/1.0.0: + resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} + engines: {node: '>=4'} + dependencies: + extend-shallow: 2.0.1 + kind-of: 6.0.3 + dev: false + + /semver-compare/1.0.0: + resolution: {integrity: sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==} + dev: false + + /semver/6.3.0: + resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} + hasBin: true + dev: false + + /semver/7.3.8: + resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==} + engines: {node: '>=10'} + hasBin: true + dependencies: + lru-cache: 6.0.0 + dev: false + + /serialize-error/7.0.1: + resolution: {integrity: sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==} + engines: {node: '>=10'} + dependencies: + type-fest: 0.13.1 + dev: false + + /shebang-command/2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + dependencies: + shebang-regex: 3.0.0 + dev: false + + /shebang-regex/3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + dev: false + + /shiki/0.11.1: + resolution: {integrity: sha512-EugY9VASFuDqOexOgXR18ZV+TbFrQHeCpEYaXamO+SZlsnT/2LxuLBX25GGtIrwaEVFXUAbUQ601SWE2rMwWHA==} + dependencies: + jsonc-parser: 3.2.0 + vscode-oniguruma: 1.6.2 + vscode-textmate: 6.0.0 + dev: false + + /signal-exit/3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + dev: false + + /sirv/2.0.2: + resolution: {integrity: sha512-4Qog6aE29nIjAOKe/wowFTxOdmbEZKb+3tsLljaBRzJwtqto0BChD2zzH0LhgCSXiI+V7X+Y45v14wBZQ1TK3w==} + engines: {node: '>= 10'} + dependencies: + '@polka/url': 1.0.0-next.21 + mrmime: 1.0.1 + totalist: 3.0.0 + dev: false + + /sisteransi/1.0.5: + resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + dev: false + + /slash/4.0.0: + resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} + engines: {node: '>=12'} + dev: false + + /source-map-js/1.0.2: + resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} + engines: {node: '>=0.10.0'} + dev: false + + /source-map/0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + dev: false + + /source-map/0.7.4: + resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} + engines: {node: '>= 8'} + dev: false + + /sourcemap-codec/1.4.8: + resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} + dev: false + + /space-separated-tokens/2.0.1: + resolution: {integrity: sha512-ekwEbFp5aqSPKaqeY1PGrlGQxPNaq+Cnx4+bE2D8sciBQrHpbwoBbawqTN2+6jPs9IdWxxiUcN0K2pkczD3zmw==} + dev: false + + /sprintf-js/1.0.3: + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + dev: false + + /sprintf-js/1.1.2: + resolution: {integrity: sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==} + dev: false + + /string-width/4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + dev: false + + /string-width/5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.0.1 + dev: false + + /string_decoder/1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + dependencies: + safe-buffer: 5.2.1 + dev: false + + /stringify-entities/4.0.3: + resolution: {integrity: sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==} + dependencies: + character-entities-html4: 2.1.0 + character-entities-legacy: 3.0.0 + dev: false + + /strip-ansi/6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + dependencies: + ansi-regex: 5.0.1 + dev: false + + /strip-ansi/7.0.1: + resolution: {integrity: sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==} + engines: {node: '>=12'} + dependencies: + ansi-regex: 6.0.1 + dev: false + + /strip-bom-string/1.0.0: + resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} + engines: {node: '>=0.10.0'} + dev: false + + /strip-bom/3.0.0: + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} + dev: false + + /strip-bom/4.0.0: + resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==} + engines: {node: '>=8'} + dev: false + + /strip-final-newline/3.0.0: + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} + dev: false + + /style-to-object/0.3.0: + resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==} + dependencies: + inline-style-parser: 0.1.1 + dev: false + + /suf-log/2.5.3: + resolution: {integrity: sha512-KvC8OPjzdNOe+xQ4XWJV2whQA0aM1kGVczMQ8+dStAO6KfEB140JEVQ9dE76ONZ0/Ylf67ni4tILPJB41U0eow==} + dependencies: + s.color: 0.0.15 + dev: false + + /supports-color/5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + dependencies: + has-flag: 3.0.0 + dev: false + + /supports-color/7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + dependencies: + has-flag: 4.0.0 + dev: false + + /supports-esm/1.0.0: + resolution: {integrity: sha512-96Am8CDqUaC0I2+C/swJ0yEvM8ZnGn4unoers/LSdE4umhX7mELzqyLzx3HnZAluq5PXIsGMKqa7NkqaeHMPcg==} + dependencies: + has-package-exports: 1.3.0 + dev: false + + /supports-preserve-symlinks-flag/1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + dev: false + + /synckit/0.7.3: + resolution: {integrity: sha512-jNroMv7Juy+mJ/CHW5H6TzsLWpa1qck6sCHbkv8YTur+irSq2PjbvmGnm2gy14BUQ6jF33vyR4DPssHqmqsDQw==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + dependencies: + '@pkgr/utils': 2.3.1 + tslib: 2.4.0 + dev: false + + /tailwindcss/3.1.8: + resolution: {integrity: sha512-YSneUCZSFDYMwk+TGq8qYFdCA3yfBRdBlS7txSq0LUmzyeqRe3a8fBQzbz9M3WS/iFT4BNf/nmw9mEzrnSaC0g==} + engines: {node: '>=12.13.0'} + hasBin: true + dependencies: + arg: 5.0.2 + chokidar: 3.5.3 + color-name: 1.1.4 + detective: 5.2.1 + didyoumean: 1.2.2 + dlv: 1.1.3 + fast-glob: 3.2.12 + glob-parent: 6.0.2 + is-glob: 4.0.3 + lilconfig: 2.0.6 + normalize-path: 3.0.0 + object-hash: 3.0.0 + picocolors: 1.0.0 + postcss: 8.4.17 + postcss-import: 14.1.0_postcss@8.4.17 + postcss-js: 4.0.0_postcss@8.4.17 + postcss-load-config: 3.1.4_postcss@8.4.17 + postcss-nested: 5.0.6_postcss@8.4.17 + postcss-selector-parser: 6.0.10 + postcss-value-parser: 4.2.0 + quick-lru: 5.1.1 + resolve: 1.22.1 + transitivePeerDependencies: + - ts-node + dev: false + + /through/2.3.8: + resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} + dev: false + + /tiny-glob/0.2.9: + resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} + dependencies: + globalyzer: 0.1.0 + globrex: 0.1.2 + dev: false + + /tmp/0.0.33: + resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} + engines: {node: '>=0.6.0'} + dependencies: + os-tmpdir: 1.0.2 + dev: false + + /to-fast-properties/2.0.0: + resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} + engines: {node: '>=4'} + dev: false + + /to-regex-range/5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + dependencies: + is-number: 7.0.0 + dev: false + + /totalist/3.0.0: + resolution: {integrity: sha512-eM+pCBxXO/njtF7vdFsHuqb+ElbxqtI4r5EAvk6grfAFyJ6IvWlSkfZ5T9ozC6xWw3Fj1fGoSmrl0gUs46JVIw==} + engines: {node: '>=6'} + dev: false + + /trim-lines/3.0.1: + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + dev: false + + /trough/2.1.0: + resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} + dev: false + + /tsconfig-resolver/3.0.1: + resolution: {integrity: sha512-ZHqlstlQF449v8glscGRXzL6l2dZvASPCdXJRWG4gHEZlUVx2Jtmr+a2zeVG4LCsKhDXKRj5R3h0C/98UcVAQg==} + dependencies: + '@types/json5': 0.0.30 + '@types/resolve': 1.20.2 + json5: 2.2.1 + resolve: 1.22.1 + strip-bom: 4.0.0 + type-fest: 0.13.1 + dev: false + + /tslib/2.4.0: + resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} + dev: false + + /tsm/2.2.2: + resolution: {integrity: sha512-bXkt675NbbqfwRHSSn8kSNEEHvoIUFDM9G6tUENkjEKpAEbrEzieO3PxUiRJylMw8fEGpcf5lSjadzzz12pc2A==} + engines: {node: '>=12'} + hasBin: true + dependencies: + esbuild: 0.14.54 + dev: false + + /type-fest/0.13.1: + resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} + engines: {node: '>=10'} + dev: false + + /type-fest/0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + dev: false + + /type-fest/2.19.0: + resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} + engines: {node: '>=12.20'} + dev: false + + /typescript/4.8.4: + resolution: {integrity: sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==} + engines: {node: '>=4.2.0'} + hasBin: true + dev: false + + /unherit/3.0.0: + resolution: {integrity: sha512-UmvIQZGEc9qdLIQ8mv8/61n6PiMgfbOoASPKHpCvII5srShCQSa6jSjBjlZOR4bxt2XnT6uo6csmPKRi+zQ0Jg==} + dev: false + + /unified/10.1.2: + resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==} + dependencies: + '@types/unist': 2.0.6 + bail: 2.0.2 + extend: 3.0.2 + is-buffer: 2.0.5 + is-plain-obj: 4.1.0 + trough: 2.1.0 + vfile: 5.3.5 + dev: false + + /unist-builder/3.0.0: + resolution: {integrity: sha512-GFxmfEAa0vi9i5sd0R2kcrI9ks0r82NasRq5QHh2ysGngrc6GiqD5CDf1FjPenY4vApmFASBIIlk/jj5J5YbmQ==} + dependencies: + '@types/unist': 2.0.6 + dev: false + + /unist-util-generated/2.0.0: + resolution: {integrity: sha512-TiWE6DVtVe7Ye2QxOVW9kqybs6cZexNwTwSMVgkfjEReqy/xwGpAXb99OxktoWwmL+Z+Epb0Dn8/GNDYP1wnUw==} + dev: false + + /unist-util-is/5.1.1: + resolution: {integrity: sha512-F5CZ68eYzuSvJjGhCLPL3cYx45IxkqXSetCcRgUXtbcm50X2L9oOWQlfUfDdAf+6Pd27YDblBfdtmsThXmwpbQ==} + dev: false + + /unist-util-map/3.1.2: + resolution: {integrity: sha512-WLA2R6x/UaopedG2poaWLShf5LCi+BNa6mMkACdjft23PHou4v85PvZItjbO2XgXvukMP365PlL/DrbuMgr3eg==} + dependencies: + '@types/unist': 2.0.6 + dev: false + + /unist-util-modify-children/2.0.0: + resolution: {integrity: sha512-HGrj7JQo9DwZt8XFsX8UD4gGqOsIlCih9opG6Y+N11XqkBGKzHo8cvDi+MfQQgiZ7zXRUiQREYHhjOBHERTMdg==} + dependencies: + array-iterate: 1.1.4 + dev: false + + /unist-util-position-from-estree/1.1.1: + resolution: {integrity: sha512-xtoY50b5+7IH8tFbkw64gisG9tMSpxDjhX9TmaJJae/XuxQ9R/Kc8Nv1eOsf43Gt4KV/LkriMy9mptDr7XLcaw==} + dependencies: + '@types/unist': 2.0.6 + dev: false + + /unist-util-position/4.0.3: + resolution: {integrity: sha512-p/5EMGIa1qwbXjA+QgcBXaPWjSnZfQ2Sc3yBEEfgPwsEmJd8Qh+DSk3LGnmOM4S1bY2C0AjmMnB8RuEYxpPwXQ==} + dependencies: + '@types/unist': 2.0.6 + dev: false + + /unist-util-remove-position/4.0.1: + resolution: {integrity: sha512-0yDkppiIhDlPrfHELgB+NLQD5mfjup3a8UYclHruTJWmY74je8g+CIFr79x5f6AkmzSwlvKLbs63hC0meOMowQ==} + dependencies: + '@types/unist': 2.0.6 + unist-util-visit: 4.1.1 + dev: false + + /unist-util-stringify-position/3.0.2: + resolution: {integrity: sha512-7A6eiDCs9UtjcwZOcCpM4aPII3bAAGv13E96IkawkOAW0OhH+yRxtY0lzo8KiHpzEMfH7Q+FizUmwp8Iqy5EWg==} + dependencies: + '@types/unist': 2.0.6 + dev: false + + /unist-util-visit-children/1.1.4: + resolution: {integrity: sha512-sA/nXwYRCQVRwZU2/tQWUqJ9JSFM1X3x7JIOsIgSzrFHcfVt6NkzDtKzyxg2cZWkCwGF9CO8x4QNZRJRMK8FeQ==} + dev: false + + /unist-util-visit-parents/5.1.1: + resolution: {integrity: sha512-gks4baapT/kNRaWxuGkl5BIhoanZo7sC/cUT/JToSRNL1dYoXRFl75d++NkjYk4TAu2uv2Px+l8guMajogeuiw==} + dependencies: + '@types/unist': 2.0.6 + unist-util-is: 5.1.1 + dev: false + + /unist-util-visit/4.1.1: + resolution: {integrity: sha512-n9KN3WV9k4h1DxYR1LoajgN93wpEi/7ZplVe02IoB4gH5ctI1AaF2670BLHQYbwj+pY83gFtyeySFiyMHJklrg==} + dependencies: + '@types/unist': 2.0.6 + unist-util-is: 5.1.1 + unist-util-visit-parents: 5.1.1 + dev: false + + /universalify/2.0.0: + resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} + engines: {node: '>= 10.0.0'} + dev: false + + /update-browserslist-db/1.0.10_browserslist@4.21.4: + resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + dependencies: + browserslist: 4.21.4 + escalade: 3.1.1 + picocolors: 1.0.0 + dev: false + + /util-deprecate/1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + dev: false + + /uvu/0.5.6: + resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==} + engines: {node: '>=8'} + hasBin: true + dependencies: + dequal: 2.0.3 + diff: 5.1.0 + kleur: 4.1.5 + sade: 1.8.1 + dev: false + + /vfile-location/4.0.1: + resolution: {integrity: sha512-JDxPlTbZrZCQXogGheBHjbRWjESSPEak770XwWPfw5mTc1v1nWGLB/apzZxsx8a0SJVfF8HK8ql8RD308vXRUw==} + dependencies: + '@types/unist': 2.0.6 + vfile: 5.3.5 + dev: false + + /vfile-message/3.1.2: + resolution: {integrity: sha512-QjSNP6Yxzyycd4SVOtmKKyTsSvClqBPJcd00Z0zuPj3hOIjg0rUPG6DbFGPvUKRgYyaIWLPKpuEclcuvb3H8qA==} + dependencies: + '@types/unist': 2.0.6 + unist-util-stringify-position: 3.0.2 + dev: false + + /vfile/5.3.5: + resolution: {integrity: sha512-U1ho2ga33eZ8y8pkbQLH54uKqGhFJ6GYIHnnG5AhRpAh3OWjkrRHKa/KogbmQn8We+c0KVV3rTOgR9V/WowbXQ==} + dependencies: + '@types/unist': 2.0.6 + is-buffer: 2.0.5 + unist-util-stringify-position: 3.0.2 + vfile-message: 3.1.2 + dev: false + + /vite/3.1.7: + resolution: {integrity: sha512-5vCAmU4S8lyVdFCInu9M54f/g8qbOMakVw5xJ4pjoaDy5wgy9sLLZkGdSLN52dlsBqh0tBqxjaqqa8LgPqwRAA==} + engines: {node: ^14.18.0 || >=16.0.0} + hasBin: true + peerDependencies: + less: '*' + sass: '*' + stylus: '*' + terser: ^5.4.0 + peerDependenciesMeta: + less: + optional: true + sass: + optional: true + stylus: + optional: true + terser: + optional: true + dependencies: + esbuild: 0.15.10 + postcss: 8.4.17 + resolve: 1.22.1 + rollup: 2.78.1 + optionalDependencies: + fsevents: 2.3.2 + dev: false + + /vscode-css-languageservice/6.1.1: + resolution: {integrity: sha512-7d2NCq2plT0njAKmGZ11uof95y2fwbgq8QuToE3kX9uYQfVmejHX2/lFGKbK5AV5+Ja0L80UZoU0QspwqMKMHA==} + dependencies: + vscode-languageserver-textdocument: 1.0.7 + vscode-languageserver-types: 3.17.2 + vscode-nls: 5.2.0 + vscode-uri: 3.0.6 + dev: false + + /vscode-html-languageservice/5.0.2: + resolution: {integrity: sha512-TQmeyE14Ure/w/S+RV2IItuRWmw/i1QaS+om6t70iHCpamuTTWnACQPMSltVGm/DlbdyMquUePJREjd/h3AVkQ==} + dependencies: + vscode-languageserver-textdocument: 1.0.7 + vscode-languageserver-types: 3.17.2 + vscode-nls: 5.2.0 + vscode-uri: 3.0.6 + dev: false + + /vscode-jsonrpc/8.0.2: + resolution: {integrity: sha512-RY7HwI/ydoC1Wwg4gJ3y6LpU9FJRZAUnTYMXthqhFXXu77ErDd/xkREpGuk4MyYkk4a+XDWAMqe0S3KkelYQEQ==} + engines: {node: '>=14.0.0'} + dev: false + + /vscode-languageserver-protocol/3.17.2: + resolution: {integrity: sha512-8kYisQ3z/SQ2kyjlNeQxbkkTNmVFoQCqkmGrzLH6A9ecPlgTbp3wDTnUNqaUxYr4vlAcloxx8zwy7G5WdguYNg==} + dependencies: + vscode-jsonrpc: 8.0.2 + vscode-languageserver-types: 3.17.2 + dev: false + + /vscode-languageserver-textdocument/1.0.7: + resolution: {integrity: sha512-bFJH7UQxlXT8kKeyiyu41r22jCZXG8kuuVVA33OEJn1diWOZK5n8zBSPZFHVBOu8kXZ6h0LIRhf5UnCo61J4Hg==} + dev: false + + /vscode-languageserver-types/3.17.2: + resolution: {integrity: sha512-zHhCWatviizPIq9B7Vh9uvrH6x3sK8itC84HkamnBWoDFJtzBf7SWlpLCZUit72b3os45h6RWQNC9xHRDF8dRA==} + dev: false + + /vscode-languageserver/8.0.2: + resolution: {integrity: sha512-bpEt2ggPxKzsAOZlXmCJ50bV7VrxwCS5BI4+egUmure/oI/t4OlFzi/YNtVvY24A2UDOZAgwFGgnZPwqSJubkA==} + hasBin: true + dependencies: + vscode-languageserver-protocol: 3.17.2 + dev: false + + /vscode-nls/5.2.0: + resolution: {integrity: sha512-RAaHx7B14ZU04EU31pT+rKz2/zSl7xMsfIZuo8pd+KZO6PXtQmpevpq3vxvWNcrGbdmhM/rr5Uw5Mz+NBfhVng==} + dev: false + + /vscode-oniguruma/1.6.2: + resolution: {integrity: sha512-KH8+KKov5eS/9WhofZR8M8dMHWN2gTxjMsG4jd04YhpbPR91fUj7rYQ2/XjeHCJWbg7X++ApRIU9NUwM2vTvLA==} + dev: false + + /vscode-textmate/6.0.0: + resolution: {integrity: sha512-gu73tuZfJgu+mvCSy4UZwd2JXykjK9zAZsfmDeut5dx/1a7FeTk0XwJsSuqQn+cuMCGVbIBfl+s53X4T19DnzQ==} + dev: false + + /vscode-uri/2.1.2: + resolution: {integrity: sha512-8TEXQxlldWAuIODdukIb+TR5s+9Ds40eSJrw+1iDDA9IFORPjMELarNQE3myz5XIkWWpdprmJjm1/SxMlWOC8A==} + dev: false + + /vscode-uri/3.0.6: + resolution: {integrity: sha512-fmL7V1eiDBFRRnu+gfRWTzyPpNIHJTc4mWnFkwBUmO9U3KPgJAmTx7oxi2bl/Rh6HLdU7+4C9wlj0k2E4AdKFQ==} + dev: false + + /wcwidth/1.0.1: + resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} + dependencies: + defaults: 1.0.4 + dev: false + + /web-namespaces/2.0.1: + resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} + dev: false + + /web-streams-polyfill/3.2.1: + resolution: {integrity: sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==} + engines: {node: '>= 8'} + dev: false + + /which-pm-runs/1.1.0: + resolution: {integrity: sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==} + engines: {node: '>=4'} + dev: false + + /which-pm/2.0.0: + resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==} + engines: {node: '>=8.15'} + dependencies: + load-yaml-file: 0.2.0 + path-exists: 4.0.0 + dev: false + + /which/2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + dependencies: + isexe: 2.0.0 + dev: false + + /widest-line/4.0.1: + resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} + engines: {node: '>=12'} + dependencies: + string-width: 5.1.2 + dev: false + + /wrap-ansi/7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + dev: false + + /wrap-ansi/8.0.1: + resolution: {integrity: sha512-QFF+ufAqhoYHvoHdajT/Po7KoXVBPXS2bgjIam5isfWJPfIOnQZ50JtUiVvCv/sjgacf3yRrt2ZKUZ/V4itN4g==} + engines: {node: '>=12'} + dependencies: + ansi-styles: 6.2.0 + string-width: 5.1.2 + strip-ansi: 7.0.1 + dev: false + + /wrappy/1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + dev: false + + /xtend/4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + dev: false + + /yallist/4.0.0: + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + dev: false + + /yaml/1.10.2: + resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} + engines: {node: '>= 6'} + dev: false + + /yargs-parser/21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + dev: false + + /yocto-queue/0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + dev: false + + /zod/3.19.1: + resolution: {integrity: sha512-LYjZsEDhCdYET9ikFu6dVPGp2YH9DegXjdJToSzD9rO6fy4qiRYFoyEYwps88OseJlPyl2NOe2iJuhEhL7IpEA==} + dev: false + + /zwitch/2.0.2: + resolution: {integrity: sha512-JZxotl7SxAJH0j7dN4pxsTV6ZLXoLdGME+PsjkL/DaBrVryK9kTGq06GfKrwcSOqypP+fdXGoCHE36b99fWVoA==} + dev: false diff --git a/public/android-chrome-192x192.png b/public/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..0f3ed42cb63c7c7a897998776fb12c86b8e488aa GIT binary patch literal 22840 zcmV)PK()V#P)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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ʗqeUtPId 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 XNb$WdWCc?Zj{vABXv$Z~T7~@&LKsd; literal 0 HcmV?d00001 diff --git a/public/apple-touch-icon.png b/public/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b7da49092221047838885aa8b74a6b74652eefcf GIT binary patch literal 20755 zcmV)PK()V#P)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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 W7ZG&wLN%2D0000 + + + + + #2b5797 + + + diff --git a/public/favicon-16x16.png b/public/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..55fe830691990940be085cef02a8cff0624ece44 GIT binary patch literal 1250 zcmZ`%Yfuwc6ut^1js(QvDde%RyD_$fh7_5W;fK5m;Vou>DxC=s1UfoU8m5(*PML~z z>VS?7s5}BBkU$dNR6wfo%1{UqBngi|2yaJ0u@$i8CA}$s+8^$m-E+@(zHjfj-|o-R zk-=6+osR+ltk@xeF)-Vh?jvUK$#6e*4kq(dzX(47nr~U|CR)H6Ne+pL03e4BKyDrY z+Yriq4nQ^&fE6wPKKB4{%q;6X>kGi4XVKxDAV?U)jV-QSlla^OK0Csg5|L{vT_tni zMHAXqgVi-Tw+U(DPjfxG(Ec(9vB*=RKB=vxG>+r5B8p5#Y1HHMwbTdo)Yfs_sKpEu z_#8z38}Q9q+yMCyoWd7iOycu!Q&_?lEa3unHTX1KOyi3~s766+8pZXn9LDsJqegW- z_<#hFS5T`pxE@O2sIWWeHmaaD72(AdXmtgp`gd#?${`Np2|CtDyDy}QE9nxUoA{BN z@}LE^aG}Mg+g%?^Xo?D2bvdJ|3>B&HQK&i?rWYNQA_@sjE<+k6R7ET8ffk$Ubn7Wc zsvuvEH#Q^fok$PlH&ff8IWQh$N~PNnJl9invV+zoq=;1?JRQcyp&P%_ev?z0%U!C< zsG?$2C~}o*=u`TCT^hmkGD?$_TwmcLsU%Atx%M3xV)6$wLX&IB4KlLHVQ80>QrAK2 z9>Zo1hJ+vt$k*W}#B?ZZT8A0LE;ZwrvD!sm)L>3>s`IW3Bl`I4#ZIT^6t*!=LEXzHz=IzP*PZMpy-tDrZ+5ze0D?-@fpe4#+>qM z^l%!4*4cr694Boum&+~u<<9LQfgmoLlf;8%Qf%y5p*7*F73YuYNNQDyR&*xpLh#*d zeo?gE(nM|=&v!;y*h7*V4ZRvwPG^DpRZ3pQ>$&GkFBg1f3VJB&zy8=rT7UcJX6f39 z4Ok)&EUxFZT)!5qzDFIjIsJVOKm1aHFEQ0WNyD$q-N~_=0c9*Zdu(u^{$B7$%=vA@>H3Q*7`d~KzBR_F9o3W!NdvJbGJfD}y zPw`34N`VQmm@JmNC(E7X&GGd1VS4$nKKqc#^kFjNtlNwKC%Bx!OTT#K{Q~;AV>lGV z<#6KpF^S(InOPYZ(=VkU{41F$NO~qe8G!G~7T=JLd>zYRsG^3{?By6>hFW?gTiT+w zVFEidTO=^otB+@fwsMf6N!@@_tt2anL%AW9p&nqx@i_mD|LG#Q1z-n71~&L}fBXk; CdpSt} literal 0 HcmV?d00001 diff --git a/public/favicon-32x32.png b/public/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..3aa07c087999a63a7ec6e16f5aa39e687f3e8aef GIT binary patch literal 2164 zcmZ{lX*ARg8^-^PWtw3S8EeMAgl9&!vG3btpO7-v5fW2Iw#0};wnCO<35k$~2+6)= zCs|62JwjO?Lk5pNz8~ImpZorub6w{;*T*}~%EFix!Uq8WfYsE*z~+>QzYAtMy#b-2 zyQg5du4}Ff0B@6_G*`yIrn`xaIRJ!806=6k0Q@&BgF&*>tXw>0zZHwEvD|fYLchpx7 zG@JD^#ggpu48Vmi7RQlW-&sDUM&cP{;4XZCFhVp1N5{u_dsuIc{N(2yj<-VQ6FA#E z35JQ9mKG`apjm8=97990&ShX%EH|7)ge;zeP6gRL$X+09bbl7g$|h+Ksy|HM9N>9d zkA|)Kqr5JVJT0D<>ItXdppAX0lvSSkmE6H&y5{vTq8ljjop)Nc2#d|Kow*P5eS7B% z7+aPbuFh2PecTyK|23rMzQ2FnlXs*ka@=FKvmR zkw258b2>+NIoNnOm;Ysf$esNJo@qft*)xb^(rS4Nn^2h6(d{TV^M+a2EA+L!;Y3*_ zdSUmAKfqrHLr}jaa<`V_S{=cjF=zj%y`W+VYw~Xuj^YoOy+_&PlLk-dh8E{L85*cY z6!bI0*t}YO1)@uT(sKX>85RHYkmheJkKm}J4>mQ`y5AV<=`Y_@O&wSvHY&Z`J`BW&m zuFIVzYWFRVd0fcVRjLAEbazxy52B7-Su|0 zG&FzqeBCitGEehEL4Hr`)ivu{7pCg&*#xs)XaKPjJC_?1j^WQ#;d-B}6A(MV-f-j> zJWtBnb~!EpN+f;a)_$q7ycsf9&TwA&+EbU>;2^GwlBPw)Bw4kEo+lR$aPK8rt4GaL z!9NBg0Ocy^#f`#^hKCoweN};{NeU`k-jvWr7~aM?8vvV?%*{pJm} zKg@Tx{xQ>+-89E`zixB2wW9ncQ(Fv+z7HP_63u4LFO;UGK3dH<4{baNwwK(;21CMK zXSFqh55WKjNf%L2e71)g_}GlL`SQq%&#zI8;I(93pxh?ZI>#6N$UYWy{-{)UVL_2(3(iiYXL zlAYojDz)0$J}y5xL6DfA7T@T4*7+frFt_W_6BM^kWpR>Q_|k{!@*_PCY@MQ*4A5eZ zM#Vq(e#u$-97wj)HMcW;6DLB0M5ZPX~v|fN0DQZ!Ibg7 z8crWp{I?uhG~2ehB^E3LqY?{`*|Z|Ix4XjHW-H;ZaZxc|#=B)A@?RZSi^kO#v2NR& z(p)`<^aqb()&(D5(q~9Ia%gbDAP*v(8*16;^t$8g<08Yr4w(F6hHTb^Upw?3;2)eO zg`|pVx7q%7%SJ9#-#4Gi(i7+6Ib9+8ow&)bRc@T67g#8xACU{6p#uEawr8k z1!XKsSq-VErhvYHM5-Z?_OQCF{|Vgm_we=%`Tqe4TQ>32fPE;|foS6zgdp7Z_w@F~ zBZwgcJi?nmbO(UooP})`@GUzjsb0&ze$yoz03-^PcZYI{a$-`sK%5AJNX2#!kZ3g) o(Kk8P)6w4{(81gnX_9Xy53IpCh}(Kf>8BNdsiB2IrJhUFe-nGqA^-pY literal 0 HcmV?d00001 diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..6e24e2bf310558732fca256830620d27adb256e7 GIT binary patch literal 15086 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 literal 0 HcmV?d00001 diff --git a/public/favicon.svg b/public/favicon.svg new file mode 100644 index 0000000..59c6467 --- /dev/null +++ b/public/favicon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/make-scrollable-code-focusable.js b/public/make-scrollable-code-focusable.js new file mode 100644 index 0000000..511eb61 --- /dev/null +++ b/public/make-scrollable-code-focusable.js @@ -0,0 +1,3 @@ +Array.from(document.getElementsByTagName("pre")).forEach((element) => { + element.setAttribute("tabindex", "0"); +}); \ No newline at end of file diff --git a/public/mstile-150x150.png b/public/mstile-150x150.png new file mode 100644 index 0000000000000000000000000000000000000000..f80ddc0216cb2c8bede45b507ab08fde07441cb7 GIT binary patch literal 12118 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 + + + +Created by potrace 1.14, written by Peter Selinger 2001-2017 + + + + + + + + diff --git a/public/site.webmanifest b/public/site.webmanifest new file mode 100644 index 0000000..a1553eb --- /dev/null +++ b/public/site.webmanifest @@ -0,0 +1,19 @@ +{ + "name": "", + "short_name": "", + "icons": [ + { + "src": "/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/android-chrome-384x384.png", + "sizes": "384x384", + "type": "image/png" + } + ], + "theme_color": "#ffffff", + "background_color": "#ffffff", + "display": "standalone" +} diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..68bed03 --- /dev/null +++ b/readme.md @@ -0,0 +1,173 @@ +# Astro Starter Kit: Docs Site + +```bash +npm create astro@latest -- --template docs +``` + +[![Open in StackBlitz](https://developer.stackblitz.com/img/open_in_stackblitz.svg)](https://stackblitz.com/github/withastro/astro/tree/latest/examples/docs) + +![docs](https://user-images.githubusercontent.com/4677417/186189283-0831b9ab-d6b9-485d-8955-3057e532ab31.png) + + +## Features + +- ✅ **Full Markdown support** +- ✅ **Responsive mobile-friendly design** +- ✅ **Sidebar navigation** +- ✅ **Search (powered by Algolia)** +- ✅ **Multi-language i18n** +- ✅ **Automatic table of contents** +- ✅ **Automatic list of contributors** +- ✅ (and, best of all) **dark mode** + +## Commands Cheatsheet + +All commands are run from the root of the project, from a terminal: + +| Command | Action | +| :--------------------- | :----------------------------------------------- | +| `npm install` | Installs dependencies | +| `npm run dev` | Starts local dev server at `localhost:3000` | +| `npm run build` | Build your production site to `./dist/` | +| `npm run preview` | Preview your build locally, before deploying | +| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` | +| `npm run astro --help` | Get help using the Astro CLI | + +To deploy your site to production, check out our [Deploy an Astro Website](https://docs.astro.build/guides/deploy) guide. + +## New to Astro? + +Welcome! Check out [our documentation](https://docs.astro.build) or jump into our [Discord server](https://astro.build/chat). + +## Customize This Theme + +### Site metadata + +`src/config.ts` contains several data objects that describe metadata about your site like title, description, default language, and Open Graph details. You can customize these to match your project. + +### CSS styling + +The theme's look and feel is controlled by a few key variables that you can customize yourself. You'll find them in the `src/styles/theme.css` CSS file. + +If you've never worked with CSS variables before, give [MDN's guide on CSS variables](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties) a quick read. + +This theme uses a "cool blue" accent color by default. To customize this for your project, change the `--theme-accent` variable to whatever color you'd like: + +```diff +/* src/styles/theme.css */ +:root { + color-scheme: light; +- --theme-accent: hsla(var(--color-blue), 1); ++ --theme-accent: hsla(var(--color-red), 1); /* or: hsla(#FF0000, 1); */ +``` + +## Page metadata + +Astro uses frontmatter in Markdown pages to choose layouts and pass properties to those layouts. If you are using the default layout, you can customize the page in many different ways to optimize SEO and other things. For example, you can use the `title` and `description` properties to set the document title, meta title, meta description, and Open Graph description. + +```markdown +--- +title: Example title +description: Really cool docs example that uses Astro +layout: ../../layouts/MainLayout.astro +--- + +# Page content... +``` + +For more SEO related properties, look at `src/components/HeadSEO.astro` + +### Sidebar navigation + +The sidebar navigation is controlled by the `SIDEBAR` variable in your `src/config.ts` file. You can customize the sidebar by modifying this object. A default, starter navigation has already been created for you. + +```ts +export const SIDEBAR = { + en: [ + { text: "Section Header", header: true }, + { text: "Introduction", link: "en/introduction" }, + { text: "Page 2", link: "en/page-2" }, + { text: "Page 3", link: "en/page-3" }, + + { text: "Another Section", header: true }, + { text: "Page 4", link: "en/page-4" }, + ], +}; +``` + +Note the top-level `en` key: This is needed for multi-language support. You can change it to whatever language you'd like, or add new languages as you go. More details on this below. + +### Multiple Languages support + +The Astro docs template supports multiple langauges out of the box. The default theme only shows `en` documentation, but you can enable multi-language support features by adding a second language to your project. + +To add a new language to your project, you'll want to extend the current `src/pages/[lang]/...` layout: + +```diff + đŸ“‚ src/pages + ┣ đŸ“‚ en + ┃ ┣ đŸ“œ page-1.md + ┃ ┣ đŸ“œ page-2.md + ┃ ┣ đŸ“œ page-3.astro ++ ┣ đŸ“‚ es ++ ┃ ┣ đŸ“œ page-1.md ++ ┃ ┣ đŸ“œ page-2.md ++ ┃ ┣ đŸ“œ page-3.astro +``` + +You'll also need to add the new language name to the `KNOWN_LANGUAGES` map in your `src/config.ts` file. This will enable your new language switcher in the site header. + +```diff +// src/config.ts +export const KNOWN_LANGUAGES = { + English: 'en', ++ Spanish: 'es', +}; +``` + +Last step: you'll need to add a new entry to your sidebar, to create the table of contents for that language. While duplicating every page might not sound ideal to everyone, this extra control allows you to create entirely custom content for every language. + +> Make sure the sidebar `link` value points to the correct language! + +```diff +// src/config.ts +export const SIDEBAR = { + en: [ + { text: 'Section Header', header: true, }, + { text: 'Introduction', link: 'en/introduction' }, + // ... + ], ++ es: [ ++ { text: 'Encabezado de secciĂ³n', header: true, }, ++ { text: 'IntroducciĂ³n', link: 'es/introduction' }, ++ // ... ++ ], +}; + +// ... +``` + +If you plan to use Spanish as the the default language, you just need to modify the redirect path in `src/pages/index.astro`: + +```diff + +``` + +You can also remove the above script and write a landing page in Spanish instead. + +### What if I don't plan to support multiple languages? + +That's totally fine! Not all projects need (or can support) multiple languages. You can continue to use this theme without ever adding a second language. + +If that single language is not English, you can just replace `en` in directory layouts and configurations with the preferred language. + +### Search (Powered by Algolia) + +[Algolia](https://www.algolia.com/) offers a free service to qualified open source projects called [DocSearch](https://docsearch.algolia.com/). If you are accepted to the DocSearch program, provide your API Key & index name in `src/config.ts` and a search box will automatically appear in your site header. + +Note that Aglolia and Astro are not affiliated. We have no say over acceptance to the DocSearch program. + +If you'd prefer to remove Algolia's search and replace it with your own, check out the `src/components/Header.astro` component to see where the component is added. diff --git a/src/components/Content/Changelog.astro b/src/components/Content/Changelog.astro new file mode 100644 index 0000000..d33de12 --- /dev/null +++ b/src/components/Content/Changelog.astro @@ -0,0 +1,32 @@ +--- +import { marked } from 'marked'; + +const releasesResponse = await fetch('https://api.github.com/repos/Facinorous-420/dick/releases'); +console.log(releasesResponse) +const releases = await releasesResponse.json(); +--- + +
    + {releases.map((release) => ( +
  • +

    {release.name} ({new Date(release.created_at).toLocaleDateString()})

    +
    +
  • + ))} +
+ + diff --git a/src/components/Content/InlineNav.astro b/src/components/Content/InlineNav.astro new file mode 100644 index 0000000..05fc5de --- /dev/null +++ b/src/components/Content/InlineNav.astro @@ -0,0 +1,53 @@ +--- +import { SIDEBAR } from "../../config"; + +type Props = { + section: string; + language: string; +}; +const { section, language } = Astro.props as Props; +--- + +
    + { + SIDEBAR[language || "en"][section].map((item) => ( +
  • + {item.links ? ( + {item.text} +
      + {item.links.map((link) => ( +
    • + {link.text} +
    • + ))} +
    + ) : ( + {item.text ?? item.title} + )} +
  • + )) + } +
+ + diff --git a/src/components/Footer/AvatarList.astro b/src/components/Footer/AvatarList.astro new file mode 100644 index 0000000..9844bd0 --- /dev/null +++ b/src/components/Footer/AvatarList.astro @@ -0,0 +1,182 @@ +--- +// fetch all commits for just this page's path +type Props = { + path: string; +}; +const { path } = Astro.props as Props; +const resolvedPath = `${path}`; +const url = `https://api.github.com/repos/benphelps/homepage-docs/commits?path=${resolvedPath}`; +const commitsURL = `https://api.github.com/repos/benphelps/homepage-docs/main/${resolvedPath}`; + +type Commit = { + author: { + id: string; + login: string; + }; +}; + +async function getCommits(url: string) { + try { + const token = import.meta.env.SNOWPACK_PUBLIC_GITHUB_TOKEN ?? "hello"; + if (!token) { + throw new Error( + 'Cannot find "SNOWPACK_PUBLIC_GITHUB_TOKEN" used for escaping rate-limiting.' + ); + } + + const auth = `Basic ${Buffer.from(token, "binary").toString("base64")}`; + + const res = await fetch(url, { + method: "GET", + headers: { + Authorization: auth, + "User-Agent": "astro-docs/1.0", + }, + }); + + const data = await res.json(); + + if (!res.ok) { + throw new Error( + `Request to fetch commits failed. Reason: ${res.statusText} + Message: ${data.message}` + ); + } + + return data as Commit[]; + } catch (e) { + console.warn(`[error] /src/components/AvatarList.astro + ${(e as any)?.message ?? e}`); + return [] as Commit[]; + } +} + +function removeDups(arr: Commit[]) { + const map = new Map(); + + for (let item of arr) { + const author = item.author; + // Deduplicate based on author.id + map.set(author.id, { login: author.login, id: author.id }); + } + + return [...map.values()]; +} + +const data = await getCommits(url); +const unique = removeDups(data); +const recentContributors = unique.slice(0, 3); // only show avatars for the 3 most recent contributors +const additionalContributors = unique.length - recentContributors.length; // list the rest of them as # of extra contributors +--- + + +
+
    + { + recentContributors.map((item) => ( +
  • + + {`Contributor + +
  • + )) + } +
+ { + additionalContributors > 0 && ( + + {`and ${additionalContributors} additional contributor${ + additionalContributors > 1 ? "s" : "" + }.`} + + ) + } + {unique.length === 0 && Contributors} +
+ + diff --git a/src/components/Footer/Footer.astro b/src/components/Footer/Footer.astro new file mode 100644 index 0000000..cdbf24d --- /dev/null +++ b/src/components/Footer/Footer.astro @@ -0,0 +1,19 @@ +--- +import AvatarList from "./AvatarList.astro"; +type Props = { + path: string; +}; +const { path } = Astro.props as Props; +--- + +
+ +
+ + diff --git a/src/components/HeadCommon.astro b/src/components/HeadCommon.astro new file mode 100644 index 0000000..102f5aa --- /dev/null +++ b/src/components/HeadCommon.astro @@ -0,0 +1,51 @@ +--- +import "../styles/theme.css"; +import "../styles/index.css"; +--- + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/components/HeadSEO.astro b/src/components/HeadSEO.astro new file mode 100644 index 0000000..21fa1c2 --- /dev/null +++ b/src/components/HeadSEO.astro @@ -0,0 +1,48 @@ +--- +import { SITE, OPEN_GRAPH, Frontmatter } from "../config"; + +export interface Props { + frontmatter: Frontmatter; + canonicalUrl: URL; +} + +const { frontmatter, canonicalUrl } = Astro.props as Props; +const formattedContentTitle = `${frontmatter.title} - ${SITE.title}`; +const imageSrc = frontmatter.image?.src ?? OPEN_GRAPH.image.src; +const canonicalImageSrc = new URL(imageSrc, Astro.site); +const imageAlt = frontmatter.image?.alt ?? OPEN_GRAPH.image.alt; +--- + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/components/Header/AstroLogo.astro b/src/components/Header/AstroLogo.astro new file mode 100644 index 0000000..22ee2e7 --- /dev/null +++ b/src/components/Header/AstroLogo.astro @@ -0,0 +1,64 @@ +--- +type Props = { + size: number; +}; +const { size } = Astro.props as Props; +--- + + + + + + \ No newline at end of file diff --git a/src/components/Header/Header.astro b/src/components/Header/Header.astro new file mode 100644 index 0000000..267a7ad --- /dev/null +++ b/src/components/Header/Header.astro @@ -0,0 +1,157 @@ +--- +import { getLanguageFromURL, KNOWN_LANGUAGE_CODES } from "../../languages"; +import * as CONFIG from "../../config"; +import ThemeToggleButton from "./ThemeToggleButton"; +import AstroLogo from "./AstroLogo.astro"; +import SkipToContent from "./SkipToContent.astro"; +import SidebarToggle from "./SidebarToggle"; +import LanguageSelect from "./LanguageSelect"; +import Search from "./Search"; + +type Props = { + currentPage: string; +}; + +const { currentPage } = Astro.props as Props; +const lang = getLanguageFromURL(currentPage); +--- + +
+ + +
+ + + + diff --git a/src/components/Header/LanguageSelect.css b/src/components/Header/LanguageSelect.css new file mode 100644 index 0000000..8d101d8 --- /dev/null +++ b/src/components/Header/LanguageSelect.css @@ -0,0 +1,47 @@ +.language-select { + flex-grow: 1; + width: 48px; + box-sizing: border-box; + margin: 0; + padding: 0.33em 0.5em; + overflow: visible; + font-weight: 500; + font-size: 1rem; + font-family: inherit; + line-height: inherit; + background-color: var(--theme-bg); + border-color: var(--theme-text-lighter); + color: var(--theme-text-light); + border-style: solid; + border-width: 1px; + border-radius: 0.25rem; + outline: 0; + cursor: pointer; + transition-timing-function: ease-out; + transition-duration: 0.2s; + transition-property: border-color, color; + -webkit-font-smoothing: antialiased; + padding-left: 30px; + padding-right: 1rem; +} +.language-select-wrapper .language-select:hover, +.language-select-wrapper .language-select:focus { + color: var(--theme-text); + border-color: var(--theme-text-light); +} +.language-select-wrapper { + color: var(--theme-text-light); + position: relative; +} +.language-select-wrapper > svg { + position: absolute; + top: 7px; + left: 10px; + pointer-events: none; +} + +@media (min-width: 50em) { + .language-select { + width: 100%; + } +} diff --git a/src/components/Header/LanguageSelect.tsx b/src/components/Header/LanguageSelect.tsx new file mode 100644 index 0000000..7f5f2e2 --- /dev/null +++ b/src/components/Header/LanguageSelect.tsx @@ -0,0 +1,49 @@ +/** @jsxImportSource react */ +import type { FunctionComponent } from 'react'; +import './LanguageSelect.css'; +import { KNOWN_LANGUAGES, langPathRegex } from '../../languages'; + +const LanguageSelect: FunctionComponent<{ lang: string }> = ({ lang }) => { + return ( +
+ + +
+ ); +}; + +export default LanguageSelect; diff --git a/src/components/Header/Search.css b/src/components/Header/Search.css new file mode 100644 index 0000000..6a8d3f9 --- /dev/null +++ b/src/components/Header/Search.css @@ -0,0 +1,76 @@ +/** Style Algolia */ +:root { + --docsearch-primary-color: var(--theme-accent); + --docsearch-logo-color: var(--theme-text); +} +.search-input { + flex-grow: 1; + box-sizing: border-box; + width: 100%; + margin: 0; + padding: 0.33em 0.5em; + overflow: visible; + font-weight: 500; + font-size: 1rem; + font-family: inherit; + line-height: inherit; + background-color: var(--theme-divider); + border-color: var(--theme-divider); + color: var(--theme-text-light); + border-style: solid; + border-width: 1px; + border-radius: 0.25rem; + outline: 0; + cursor: pointer; + transition-timing-function: ease-out; + transition-duration: 0.2s; + transition-property: border-color, color; + -webkit-font-smoothing: antialiased; +} +.search-input:hover, +.search-input:focus { + color: var(--theme-text); + border-color: var(--theme-text-light); +} +.search-input:hover::placeholder, +.search-input:focus::placeholder { + color: var(--theme-text-light); +} +.search-input::placeholder { + color: var(--theme-text-light); +} +.search-hint { + position: absolute; + top: 7px; + right: 19px; + padding: 3px 5px; + display: none; + display: none; + align-items: center; + justify-content: center; + letter-spacing: 0.125em; + font-size: 13px; + font-family: var(--font-mono); + pointer-events: none; + border-color: var(--theme-text-lighter); + color: var(--theme-text-light); + border-style: solid; + border-width: 1px; + border-radius: 0.25rem; + line-height: 14px; +} + +@media (min-width: 50em) { + .search-hint { + display: flex; + } +} + +/* ------------------------------------------------------------ *\ + DocSearch (Algolia) +\* ------------------------------------------------------------ */ + +.DocSearch-Modal .DocSearch-Hit a { + box-shadow: none; + border: 1px solid var(--theme-accent); +} diff --git a/src/components/Header/Search.tsx b/src/components/Header/Search.tsx new file mode 100644 index 0000000..19ff9fa --- /dev/null +++ b/src/components/Header/Search.tsx @@ -0,0 +1,97 @@ +/** @jsxImportSource react */ +import { useState, useCallback, useRef } from 'react'; +import { ALGOLIA } from '../../config'; +import '@docsearch/css'; +import './Search.css'; + +import { createPortal } from 'react-dom'; +import * as docSearchReact from '@docsearch/react'; + +/** FIXME: This is still kinda nasty, but DocSearch is not ESM ready. */ +const DocSearchModal = + docSearchReact.DocSearchModal || (docSearchReact as any).default.DocSearchModal; +const useDocSearchKeyboardEvents = + docSearchReact.useDocSearchKeyboardEvents || + (docSearchReact as any).default.useDocSearchKeyboardEvents; + +export default function Search() { + const [isOpen, setIsOpen] = useState(false); + const searchButtonRef = useRef(null); + const [initialQuery, setInitialQuery] = useState(''); + + const onOpen = useCallback(() => { + setIsOpen(true); + }, [setIsOpen]); + + const onClose = useCallback(() => { + setIsOpen(false); + }, [setIsOpen]); + + const onInput = useCallback( + (e) => { + setIsOpen(true); + setInitialQuery(e.key); + }, + [setIsOpen, setInitialQuery] + ); + + useDocSearchKeyboardEvents({ + isOpen, + onOpen, + onClose, + onInput, + searchButtonRef, + }); + + return ( + <> + + + {isOpen && + createPortal( + { + return items.map((item) => { + // We transform the absolute URL into a relative URL to + // work better on localhost, preview URLS. + const a = document.createElement('a'); + a.href = item.url; + const hash = a.hash === '#overview' ? '' : a.hash; + return { + ...item, + url: `${a.pathname}${hash}`, + }; + }); + }} + />, + document.body + )} + + ); +} diff --git a/src/components/Header/SidebarToggle.tsx b/src/components/Header/SidebarToggle.tsx new file mode 100644 index 0000000..50a5d93 --- /dev/null +++ b/src/components/Header/SidebarToggle.tsx @@ -0,0 +1,44 @@ +/** @jsxImportSource preact */ +import type { FunctionalComponent } from 'preact'; +import { useState, useEffect } from 'preact/hooks'; + +const MenuToggle: FunctionalComponent = () => { + const [sidebarShown, setSidebarShown] = useState(false); + + useEffect(() => { + const body = document.querySelector('body')!; + if (sidebarShown) { + body.classList.add('mobile-sidebar-toggle'); + } else { + body.classList.remove('mobile-sidebar-toggle'); + } + }, [sidebarShown]); + + return ( + + ); +}; + +export default MenuToggle; diff --git a/src/components/Header/SkipToContent.astro b/src/components/Header/SkipToContent.astro new file mode 100644 index 0000000..a608c5c --- /dev/null +++ b/src/components/Header/SkipToContent.astro @@ -0,0 +1,28 @@ +--- +type Props = {}; +--- + + + + diff --git a/src/components/Header/ThemeToggleButton.css b/src/components/Header/ThemeToggleButton.css new file mode 100644 index 0000000..2c0eacd --- /dev/null +++ b/src/components/Header/ThemeToggleButton.css @@ -0,0 +1,37 @@ +.theme-toggle { + display: inline-flex; + align-items: center; + gap: 0.25em; + padding: 0.33em 0.67em; + border-radius: 99em; + background-color: var(--theme-code-inline-bg); +} + +.theme-toggle > label:focus-within { + outline: 2px solid transparent; + box-shadow: 0 0 0 0.08em var(--theme-accent), 0 0 0 0.12em white; +} + +.theme-toggle > label { + color: var(--theme-code-inline-text); + position: relative; + display: flex; + align-items: center; + justify-content: center; + opacity: 0.5; +} + +.theme-toggle .checked { + color: var(--theme-accent); + opacity: 1; +} + +input[name="theme-toggle"] { + position: absolute; + opacity: 0; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: -1; +} diff --git a/src/components/Header/ThemeToggleButton.tsx b/src/components/Header/ThemeToggleButton.tsx new file mode 100644 index 0000000..b9682aa --- /dev/null +++ b/src/components/Header/ThemeToggleButton.tsx @@ -0,0 +1,82 @@ +import type { FunctionalComponent } from 'preact'; +import { useState, useEffect } from 'preact/hooks'; +import './ThemeToggleButton.css'; + +const themes = ['light', 'dark']; + +const icons = [ + + + , + + + , +]; + +const ThemeToggle: FunctionalComponent = () => { + const [theme, setTheme] = useState(() => { + if (import.meta.env.SSR) { + return undefined; + } + if (typeof localStorage !== undefined && localStorage.getItem('theme')) { + return localStorage.getItem('theme'); + } + if (window.matchMedia('(prefers-color-scheme: dark)').matches) { + return 'dark'; + } + return 'light'; + }); + + useEffect(() => { + const root = document.documentElement; + if (theme === 'light') { + root.classList.remove('theme-dark'); + } else { + root.classList.add('theme-dark'); + } + }, [theme]); + + return ( +
+ {themes.map((t, i) => { + const icon = icons[i]; + const checked = t === theme; + return ( + + ); + })} +
+ ); +}; + +export default ThemeToggle; diff --git a/src/components/LeftSidebar/LeftSidebar.astro b/src/components/LeftSidebar/LeftSidebar.astro new file mode 100644 index 0000000..a714a33 --- /dev/null +++ b/src/components/LeftSidebar/LeftSidebar.astro @@ -0,0 +1,227 @@ +--- +import { getLanguageFromURL } from "../../languages"; +import { SIDEBAR } from "../../config"; +import type { SidebarLink } from "../../config"; + +type Props = { + currentPage: string; +}; + +const { currentPage } = Astro.props as Props; +const currentPageMatch = currentPage.endsWith("/") ? currentPage.slice(1, -1) : currentPage.slice(1); +const langCode = getLanguageFromURL(currentPage); +const sidebar = SIDEBAR[langCode]; +--- + + + + + + + + diff --git a/src/components/PageContent/PageContent.astro b/src/components/PageContent/PageContent.astro new file mode 100644 index 0000000..c1869b9 --- /dev/null +++ b/src/components/PageContent/PageContent.astro @@ -0,0 +1,56 @@ +--- +import type { Frontmatter } from "../../config"; +import MoreMenu from "../RightSidebar/MoreMenu.astro"; +import TableOfContents from "../RightSidebar/TableOfContents"; +import type { MarkdownHeading } from "astro"; + +type Props = { + frontmatter: Frontmatter; + headings: MarkdownHeading[]; + githubEditUrl: string; +}; + +const { frontmatter, headings, githubEditUrl } = Astro.props as Props; +const title = frontmatter.title; +--- + +
+
+

{title}

+ + +
+ +
+ + diff --git a/src/components/RightSidebar/MoreMenu.astro b/src/components/RightSidebar/MoreMenu.astro new file mode 100644 index 0000000..e582333 --- /dev/null +++ b/src/components/RightSidebar/MoreMenu.astro @@ -0,0 +1,100 @@ +--- +import * as CONFIG from "../../config"; + +type Props = { + editHref: string; +}; + +const { editHref } = Astro.props as Props; +const showMoreSection = CONFIG.COMMUNITY_INVITE_URL; +--- + + + + diff --git a/src/components/RightSidebar/RightSidebar.astro b/src/components/RightSidebar/RightSidebar.astro new file mode 100644 index 0000000..e98b039 --- /dev/null +++ b/src/components/RightSidebar/RightSidebar.astro @@ -0,0 +1,35 @@ +--- +import TableOfContents from "./TableOfContents"; +import MoreMenu from "./MoreMenu.astro"; +import type { MarkdownHeading } from "astro"; + +type Props = { + headings: MarkdownHeading[]; + githubEditUrl: string; +}; + +const { headings, githubEditUrl } = Astro.props as Props; +--- + + + + diff --git a/src/components/RightSidebar/TableOfContents.tsx b/src/components/RightSidebar/TableOfContents.tsx new file mode 100644 index 0000000..5c68514 --- /dev/null +++ b/src/components/RightSidebar/TableOfContents.tsx @@ -0,0 +1,56 @@ +import type { FunctionalComponent } from 'preact'; +import { useState, useEffect, useRef } from 'preact/hooks'; +import type { MarkdownHeading } from 'astro'; + +type ItemOffsets = { + id: string; + topOffset: number; +}; + +const TableOfContents: FunctionalComponent<{ headings: MarkdownHeading[] }> = ({ + headings = [], +}) => { + const itemOffsets = useRef([]); + // FIXME: Not sure what this state is doing. It was never set to anything truthy. + const [activeId] = useState(''); + useEffect(() => { + const getItemOffsets = () => { + const titles = document.querySelectorAll('article :is(h1, h2, h3, h4)'); + itemOffsets.current = Array.from(titles).map((title) => ({ + id: title.id, + topOffset: title.getBoundingClientRect().top + window.scrollY, + })); + }; + + getItemOffsets(); + window.addEventListener('resize', getItemOffsets); + + return () => { + window.removeEventListener('resize', getItemOffsets); + }; + }, []); + + return ( + <> +

On this page

+
    +
  • + Overview +
  • + {headings + .filter(({ depth }) => depth > 1 && depth < 4) + .map((heading) => ( +
  • + {heading.text} +
  • + ))} +
+ + ); +}; + +export default TableOfContents; diff --git a/src/config.ts b/src/config.ts new file mode 100644 index 0000000..68597ab --- /dev/null +++ b/src/config.ts @@ -0,0 +1,78 @@ +export const SITE = { + title: 'DICK', + description: 'Directly Integrated Client for Keisters', + defaultLanguage: 'en_US', +}; + +export const OPEN_GRAPH = { + image: { + src: 'https://raw.githubusercontent.com/Facinorous-420/dick/master/src/public/images/profile.png', + alt: 'DICK Logo' + }, +}; + +// This is the type of the frontmatter you put in the docs markdown files. +export type Frontmatter = { + title: string; + description: string; + layout: string; + image?: { src: string; alt: string }; + dir?: 'ltr' | 'rtl'; + ogLocale?: string; + lang?: string; +}; + +export const KNOWN_LANGUAGES = { + English: 'en', +} as const; + +export const KNOWN_LANGUAGE_CODES = Object.values(KNOWN_LANGUAGES); + +export const GITHUB_EDIT_URL = `https://github.com/Facinorous-420/dick-docs/tree/main`; + +export const COMMUNITY_INVITE_URL = `https://discord.gg/xhZxFjEk8E`; + +export const GITHUB_URL = `https://github.com/Facinorous-420/dick`; + +// See "Algolia" section of the README for more information. +export const ALGOLIA = { + indexName: '', + appId: '', + apiKey: '', +}; + +export type SidebarLink = { text: string; link?: string, links?: SidebarLink[] }; + +export type Sidebar = Record< + typeof KNOWN_LANGUAGE_CODES[number], + Record +>; + +export const SIDEBAR: Sidebar = { + en: { + 'Getting Started': [ + { text: 'Home', link: 'dick-docs/en/' }, + { text: 'Production', links: [ + { text: 'Source', link: 'dick-docs/en/installation/production/source' }, + { text: 'Docker', link: 'dick-docs/en/installation/production/docker' }, + ]}, + { text: 'Development', links: [ + { text: 'Source', link: 'dick-docs/en/installation/development/source' } + ]}, + + ], + 'Configuration': [ + { text: 'White Labeling', link: 'dick-docs/en/configs/whitelabel' } + ], + 'Features': [ + { text: 'File Manager', link: 'dick-docs/en/features/filemanager' }, + { text: 'Config Generator', link: 'dick-docs/en/features/configgen' }, + { text: 'Admin Panel', link: 'dick-docs/en/features/adminpanel' }, + { text: 'User Management', link: 'dick-docs/en/features/users' } + ], + 'More': [ + { text: 'Troubleshooting', link: 'dick-docs/en/more/troubleshooting' }, + { text: 'Changelog', link: 'dick-docs/en/more/changelog' } + ], + }, +}; diff --git a/src/env.d.ts b/src/env.d.ts new file mode 100644 index 0000000..f964fe0 --- /dev/null +++ b/src/env.d.ts @@ -0,0 +1 @@ +/// diff --git a/src/languages.ts b/src/languages.ts new file mode 100644 index 0000000..405b692 --- /dev/null +++ b/src/languages.ts @@ -0,0 +1,10 @@ +import { KNOWN_LANGUAGES, KNOWN_LANGUAGE_CODES } from './config'; +export { KNOWN_LANGUAGES, KNOWN_LANGUAGE_CODES }; + +export const langPathRegex = /\/([a-z]{2}-?[A-Z]{0,2})\//; + +export function getLanguageFromURL(pathname: string) { + const langCodeMatch = pathname.match(langPathRegex); + const langCode = langCodeMatch ? langCodeMatch[1] : 'en'; + return langCode as typeof KNOWN_LANGUAGE_CODES[number]; +} diff --git a/src/layouts/MainLayout.astro b/src/layouts/MainLayout.astro new file mode 100644 index 0000000..526131a --- /dev/null +++ b/src/layouts/MainLayout.astro @@ -0,0 +1,168 @@ +--- +import HeadCommon from "../components/HeadCommon.astro"; +import HeadSEO from "../components/HeadSEO.astro"; +import Header from "../components/Header/Header.astro"; +import PageContent from "../components/PageContent/PageContent.astro"; +import LeftSidebar from "../components/LeftSidebar/LeftSidebar.astro"; +import RightSidebar from "../components/RightSidebar/RightSidebar.astro"; +import * as CONFIG from "../config"; +import type { MarkdownHeading } from "astro"; +import Footer from "../components/Footer/Footer.astro"; + +type Props = { + frontmatter: CONFIG.Frontmatter; + headings: MarkdownHeading[]; +}; + +const { frontmatter, headings } = Astro.props as Props; +const canonicalURL = new URL(Astro.url.pathname, Astro.site); +const currentPage = Astro.url.pathname; +const currentFile = `src/pages${currentPage.replace(/\/$/, "")}.md`; +const githubEditUrl = `${CONFIG.GITHUB_EDIT_URL}/${currentFile}`; +--- + + + + + + + {frontmatter.title ? `${frontmatter.title} - ${CONFIG.SITE.title}` : CONFIG.SITE.title} + + + + + + +
+
+ +
+ + + +
+ +
+ + + diff --git a/src/pages/en/configs/whitelabel.md b/src/pages/en/configs/whitelabel.md new file mode 100644 index 0000000..b9ae027 --- /dev/null +++ b/src/pages/en/configs/whitelabel.md @@ -0,0 +1,18 @@ +--- +title: Services +description: Service Configuration +layout: ../../../layouts/MainLayout.astro +--- + +Inside of your dick root folder, you will see `src/constants.ts.example`. Copy this to `constants.ts`
+Inside this file, is some basic configuration you can change for your set up. There are only 5 variables you need to worry about in this file: + +| Variable | Description | +| --------------------------------------------- | :---------------------: | +| `ASS_SECURE = false` | Put this to true if you are running ASS behind a domain with HTTPS,. false if HTTP | +| `ASSDOMAIN = "127.0.0.1:40115"` | Put this to your ASS domain. Can be an ip, or domain for example `https://cdn.mydomain.com` | +| `ASS_LOCATION = "../ass"` | If running DICK seperately, DICK will use this to find your ASS install folder. Leave this alone if using Docker. | +| `PORT = "3000"` | Change this number to the port you wish DICK to run on. Leave this alone if using Docker. | + +> **Note** +> If you want to set a user as admin, currently you must do it via the database file generated at `/src/database/users.json` and change the users role from `user` to `admin`. By default, the first user to login to your dick instance will be admin. diff --git a/src/pages/en/features/adminpanel.md b/src/pages/en/features/adminpanel.md new file mode 100644 index 0000000..045d753 --- /dev/null +++ b/src/pages/en/features/adminpanel.md @@ -0,0 +1,7 @@ +--- +title: Autobrr +description: Autobrr Widget Configuration +layout: ../../../layouts/MainLayout.astro +--- + +*Added in v1.1.0* diff --git a/src/pages/en/features/configgen.md b/src/pages/en/features/configgen.md new file mode 100644 index 0000000..c40dce9 --- /dev/null +++ b/src/pages/en/features/configgen.md @@ -0,0 +1,7 @@ +--- +title: Bazarr +description: Bazarr Widget Configuration +layout: ../../../layouts/MainLayout.astro +--- + +*Not Yet Added* diff --git a/src/pages/en/features/filemanager.md b/src/pages/en/features/filemanager.md new file mode 100644 index 0000000..f4636d1 --- /dev/null +++ b/src/pages/en/features/filemanager.md @@ -0,0 +1,8 @@ +--- +title: Adguard Home +description: Adguard Home Widget Configuration +layout: ../../../layouts/MainLayout.astro +--- + + +*Added in v1.0.0* diff --git a/src/pages/en/features/users.md b/src/pages/en/features/users.md new file mode 100644 index 0000000..b2f6457 --- /dev/null +++ b/src/pages/en/features/users.md @@ -0,0 +1,7 @@ +--- +title: Authentik +description: Authentik Widget Configuration +layout: ../../../layouts/MainLayout.astro +--- + +*Added in v1.1.0* diff --git a/src/pages/en/index.md b/src/pages/en/index.md new file mode 100644 index 0000000..d49bb73 --- /dev/null +++ b/src/pages/en/index.md @@ -0,0 +1,28 @@ +--- +title: Installation +description: Docs intro +layout: ../../layouts/MainLayout.astro +--- + +## About The Project + +Dick was created to be an easy to use front end for Ass as there was no public option to allow users to view their saved images on their server. I decided to learn tailwind and also at the same time build this. I did this all in my spare time, and will keep updating as best as I can while I use it. I'm still learning all this so if anyone has suggestions on how to do things better, I am all ears! I love learning! :) + +**Current Feautres:** +1. General statistics on your file uploads +2. File browser, allows you to see all your uploads on one webpage +3. Deletion of items +4. Copy link of items +5. Customize DICK (completely white label) +6. Register new ASS users +7. hCaptcha on login and register pages You can learn more here. + +## Deploying + +You have a few options for deploying DICK, depending on your needs. + +[Production - Source](/en/installation/production/source) + +[Production - Docker](/en/installation/production/docker) + +[Development - Source](/en/installation/development/source) diff --git a/src/pages/en/installation/development/source.md b/src/pages/en/installation/development/source.md new file mode 100644 index 0000000..72b51ce --- /dev/null +++ b/src/pages/en/installation/development/source.md @@ -0,0 +1,14 @@ +--- +title: Source Installation +description: Install and run homepage from source +layout: ../../../../layouts/MainLayout.astro +--- + + 1. Create a folder, call it whatever you wish + 2. Install, and run ASS https://github.com/tycrek/ass#installation (This will create an `ass` folder) + 3. Go back into the folder you created and clone this repo `git clone https://github.com/Facinorous-420/dick` + 4. Go into the newly created `dick` folder `cd dick` + 5. Go into `/src` and copy `constants.ts.example` to `constants.ts` and edit it as needed + 6. Go back to the root of `dick` and install the dependancies for the frontend, `npm i` + 7. Run `npm run build:dev` to compile the code base in watch mode + 8. In a new terminal, run `npm run serve:dev` to run DICK using nodemon diff --git a/src/pages/en/installation/production/docker.md b/src/pages/en/installation/production/docker.md new file mode 100644 index 0000000..2cc3bca --- /dev/null +++ b/src/pages/en/installation/production/docker.md @@ -0,0 +1,14 @@ +--- +title: Docker Installation +description: Install and run homepage from Docker +layout: ../../../../layouts/MainLayout.astro +--- + + 1. Create a folder, call it whatever you wish + 2. Install, and run ASS https://github.com/tycrek/ass#installation (This will create an `ass` folder) + 3. Go back into the folder you created and clone this repo `git clone https://github.com/Facinorous-420/dick.git` + 4. Go into the newly created `dick` folder `cd dick` + 5. Go into `/src` and copy `constants.ts.example` to `constants.ts` and edit it as needed + 6. Go back to the root of `dick` and edit the `docker-compose.yml` to match your specific needs by changing the port, and voluime location where your ass files are on your system. + 7. Run the docker compose file `docker-compose up -d` this will create a new container named `dick`. + 8. diff --git a/src/pages/en/installation/production/source.md b/src/pages/en/installation/production/source.md new file mode 100644 index 0000000..66d83b5 --- /dev/null +++ b/src/pages/en/installation/production/source.md @@ -0,0 +1,13 @@ +--- +title: Source Installation +description: Install and run homepage from source +layout: ../../../../layouts/MainLayout.astro +--- + + 1. Create a folder, call it whatever you wish + 2. Install, and run ASS https://github.com/tycrek/ass#installation (This will create an `ass` folder) + 3. Go back into the folder you created and clone this repo `git clone https://github.com/Facinorous-420/dick.git` + 4. Go into the newly created `dick` folder `cd dick` + 5. Go into `/src` and copy `constants.ts.example` to `constants.ts` and edit it as needed + 6. Go back to the root of `dick` and install the dependancies for the frontend, `npm i` + 7. Run `npm start` to compile the code base and run DICK diff --git a/src/pages/en/more/changelog.mdx b/src/pages/en/more/changelog.mdx new file mode 100644 index 0000000..6c55367 --- /dev/null +++ b/src/pages/en/more/changelog.mdx @@ -0,0 +1,9 @@ +--- +title: Changelog +description: Changelog +layout: ../../../layouts/MainLayout.astro +--- + +import Changelog from "../../../components/Content/Changelog.astro"; + + \ No newline at end of file diff --git a/src/pages/en/more/troubleshooting.md b/src/pages/en/more/troubleshooting.md new file mode 100644 index 0000000..c88b802 --- /dev/null +++ b/src/pages/en/more/troubleshooting.md @@ -0,0 +1,14 @@ +--- +title: Troubleshooting +description: Basic Troubleshooting +layout: ../../../layouts/MainLayout.astro +--- + +## General Troubleshooting Tips + +- Read this documentation and you should have no issues to troubleshoot. + +## FAQ + +1. **Why is there no FAQ?** + We still need to build this over time. \ No newline at end of file diff --git a/src/pages/index.astro b/src/pages/index.astro new file mode 100644 index 0000000..265027c --- /dev/null +++ b/src/pages/index.astro @@ -0,0 +1,5 @@ + diff --git a/src/styles/index.css b/src/styles/index.css new file mode 100644 index 0000000..6716abe --- /dev/null +++ b/src/styles/index.css @@ -0,0 +1,401 @@ +* { + box-sizing: border-box; + margin: 0; +} + +/* Global focus outline reset */ +*:focus:not(:focus-visible) { + outline: none; +} + +:root { + --user-font-scale: 1rem - 16px; + --max-width: calc(100% - 1rem); +} + +@media (min-width: 50em) { + :root { + --max-width: 46em; + } +} + +html { + scrollbar-color: var(--theme-accent) var(--theme-bg-accent); + scrollbar-width: thin; +} + +body { + display: flex; + flex-direction: column; + min-height: 100vh; + font-family: var(--font-body); + font-size: 1rem; + font-size: clamp(0.9rem, 0.75rem + 0.375vw + var(--user-font-scale), 1rem); + line-height: 1.5; + max-width: 100vw; +} + +nav ul { + list-style: none; + padding: 0; +} + +.content > section > * + * { + margin-top: 1.25rem; +} + +.content > section > :first-child { + margin-top: 0; +} + +/* Typography */ +h1, +h2, +h3, +h4, +h5, +h6 { + margin-bottom: 1rem; + font-weight: bold; + line-height: 1; +} + +h1, +h2 { + max-width: 40ch; +} + +:is(h2, h3):not(:first-child) { + margin-top: 3rem; +} + +:is(h4, h5, h6):not(:first-child) { + margin-top: 2rem; +} + +h1 { + font-size: 2rem; + font-weight: 800; +} + +h2 { + font-size: 1.5rem; + font-weight: 600; +} + +h3 { + font-size: 1.25rem; +} + +h4 { + font-size: 1.15rem; +} + +h5 { + font-size: 1rem; +} + +p { + line-height: 1.65em; +} + +.content ul { + line-height: 1.1em; +} + +p, +.content ul { + color: var(--theme-text-light); +} + +small, +.text_small { + font-size: 0.833rem; +} + +a { + color: var(--theme-text-accent); + font-weight: 400; + text-underline-offset: 0.08em; + align-items: center; + gap: 0.5rem; +} + +article > section :is(ul, ol) > * + * { + margin-top: 0.75rem; +} + +article > section nav :is(ul, ol) > * + * { + margin-top: inherit; +} + +article > section ol { + margin-left: 1rem; +} + +article > section li { + margin-top: 1rem; + font-weight: 400; +} + +article > section li p { + margin-top: 1rem; +} + +article > section li pre { + margin-top: 0.25rem; +} + +article > section :is(ul, ol) { + padding-left: 1em; +} + +article > section nav :is(ul, ol) { + padding-left: inherit; +} + +article > section nav { + margin-top: 1rem; + margin-bottom: 2rem; +} + +article > section ::marker { + color: var(--theme-text-light); +} + +article > section iframe { + width: 100%; + height: auto; + aspect-ratio: 16 / 9; +} + +a > code { + position: relative; + color: var(--theme-text-accent); + background: transparent; + text-underline-offset: var(--padding-block); +} + +a > code::before { + content: ""; + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + display: block; + background: var(--theme-accent); + opacity: var(--theme-accent-opacity); + border-radius: var(--border-radius); +} + +a:hover, +a:focus { + text-decoration: underline; +} + +a:focus { + outline: 2px solid currentColor; + outline-offset: 0.25em; +} + +strong { + font-weight: 600; + color: inherit; +} + +/* Supporting Content */ + +code { + --border-radius: 8px; + --padding-block: 0.2rem; + --padding-inline: 0.33rem; + + font-family: var(--font-mono); + font-size: 0.85em; + color: inherit; + background-color: var(--theme-code-inline-bg); + padding: var(--padding-block) var(--padding-inline); + margin: calc(var(--padding-block) * -1) var(--padding-block / 2); + border-radius: var(--border-radius); + word-break: break-word; +} + +pre.astro-code > code { + all: unset; +} + +pre > code { + font-size: 1em; +} + +table, +pre { + position: relative; + --padding-block: 1rem; + --padding-inline: 2rem; + padding: var(--padding-block) var(--padding-inline); + padding-right: calc(var(--padding-inline) * 2); + margin-left: calc(var(--padding-inline) * -1); + margin-right: calc(var(--padding-inline) * -1); + font-family: var(--font-mono); + + line-height: 1.5; + font-size: 0.85em; + overflow-y: hidden; + overflow-x: auto; +} + +table { + width: 100%; + padding: var(--padding-block) 0; + margin: 0; + border-collapse: collapse; +} + +/* Zebra striping */ +tr:nth-of-type(odd) { + background: var(--theme-bg-hover); +} +th { + background: var(--color-black); + color: var(--theme-color); + font-weight: bold; +} +td, +th { + padding: 6px; + text-align: left; +} + +pre { + background-color: var(--theme-code-bg); + color: var(--theme-code-text); +} + +blockquote code { + background-color: var(--theme-bg); +} + +@media (min-width: 37.75em) { + pre { + --padding-inline: 1.25rem; + border-radius: 0; + margin-left: 0; + margin-right: 0; + } +} + +blockquote { + margin: 2rem 0; + padding: 1.25em 1.5rem; + border-left: 3px solid var(--theme-text-light); + background-color: var(--theme-bg-offset); + border-radius: 0 0.25rem 0.25rem 0; + line-height: 1.7; +} + +img { + max-width: 100%; +} + +.flex { + display: flex; + align-items: center; +} + +button { + display: flex; + align-items: center; + justify-items: center; + gap: 0.25em; + padding: 0.33em 0.67em; + border: 0; + background: var(--theme-bg); + display: flex; + font-size: 1rem; + align-items: center; + gap: 0.25em; + border-radius: 99em; + color: var(--theme-text); + background-color: var(--theme-bg); +} + +h2.heading { + font-size: 1rem; + font-weight: 700; + padding: 0.1rem 1rem; + text-transform: uppercase; + margin-bottom: 0.5rem; +} + +.heading-link { + font-size: 1rem; + list-style: none; + padding: 0.1rem 0 0.1rem 1rem; + /* border-left: 4px solid var(--theme-divider); */ +} + +.heading-link:hover, +.heading-link:focus { + border-left-color: var(--theme-accent); + color: var(--theme-accent); +} +.heading-link:focus-within { + color: var(--theme-text-light); + border-left-color: hsla(var(--color-gray-40), 1); +} +.heading-link svg { + opacity: 0.6; +} +.heading-link:hover svg { + opacity: 0.8; +} +.heading-link a { + display: inline-flex; + gap: 0.5em; + width: 100%; + padding: 0.15em 0 0.15em 0; +} + +.heading-link.depth-3 { + padding-left: 2rem; +} +.heading-link.depth-4 { + padding-left: 3rem; +} + +.heading-link a { + font: inherit; + color: inherit; + text-decoration: none; +} + +/* Screenreader Only Text */ +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border-width: 0; +} + +.focus\:not-sr-only:focus, +.focus\:not-sr-only:focus-visible { + position: static; + width: auto; + height: auto; + padding: 0; + margin: 0; + overflow: visible; + clip: auto; + white-space: normal; +} + +:target { + scroll-margin: calc(var(--theme-sidebar-offset, 5rem) + 2rem) 0 2rem; +} diff --git a/src/styles/theme.css b/src/styles/theme.css new file mode 100644 index 0000000..4119ca1 --- /dev/null +++ b/src/styles/theme.css @@ -0,0 +1,129 @@ +:root { + --font-fallback: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, + Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji; + --font-body: "Manrope", system-ui, var(--font-fallback); + --font-mono: "IBM Plex Mono", Consolas, "Andale Mono WT", "Andale Mono", + "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", + "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, + "Courier New", Courier, monospace; + + /* + * Variables with --color-base prefix define + * the hue, and saturation values to be used for + * hsla colors. + * + * ex: + * + * --color-base-{color}: {hue}, {saturation}; + * + */ + + --color-base-white: 0, 0%; + --color-base-black: 240, 100%; + --color-base-gray: 212, 10%; + --color-base-blue: 212, 80%; + --color-base-blue-dark: 212, 72%; + --color-base-green: 158, 79%; + --color-base-orange: 22, 100%; + --color-base-purple: 269, 79%; + --color-base-red: 351, 100%; + --color-base-yellow: 41, 100%; + + /* + * Color palettes are made using --color-base + * variables, along with a lightness value to + * define different variants. + * + */ + + --color-gray-5: var(--color-base-gray), 5%; + --color-gray-10: var(--color-base-gray), 10%; + --color-gray-20: var(--color-base-gray), 20%; + --color-gray-30: var(--color-base-gray), 30%; + --color-gray-40: var(--color-base-gray), 40%; + --color-gray-50: var(--color-base-gray), 50%; + --color-gray-60: var(--color-base-gray), 60%; + --color-gray-70: var(--color-base-gray), 70%; + --color-gray-80: var(--color-base-gray), 80%; + --color-gray-90: var(--color-base-gray), 90%; + --color-gray-95: var(--color-base-gray), 95%; + + --color-blue: var(--color-base-blue), 61%; + --color-blue-dark: var(--color-base-blue-dark), 39%; + --color-green: var(--color-base-green), 42%; + --color-orange: var(--color-base-orange), 50%; + --color-purple: var(--color-base-purple), 54%; + --color-red: var(--color-base-red), 54%; + --color-yellow: var(--color-base-yellow), 59%; +} + +:root { + color-scheme: light; + --theme-accent: hsla(var(--color-blue), 1); + --theme-text-accent: hsla(var(--color-blue), 1); + --theme-accent-opacity: 0.15; + --theme-divider: hsla(var(--color-gray-95), 1); + --theme-text: hsla(var(--color-gray-10), 1); + --theme-text-light: hsla(var(--color-gray-40), 1); + /* @@@: not used anywhere */ + --theme-text-lighter: hsla(var(--color-gray-80), 1); + --theme-bg: hsla(var(--color-base-white), 100%, 1); + --theme-bg-hover: hsla(var(--color-gray-95), 1); + --theme-bg-offset: hsla(var(--color-gray-90), 1); + --theme-bg-accent: hsla(var(--color-blue), var(--theme-accent-opacity)); + --theme-code-inline-bg: hsla(var(--color-gray-95), 1); + --theme-code-inline-text: var(--theme-text); + --theme-code-bg: hsla(217, 19%, 27%, 1); + --theme-code-text: hsla(var(--color-gray-95), 1); + --theme-navbar-bg: hsla(var(--color-base-white), 100%, 1); + --theme-navbar-height: 6rem; + --theme-selection-color: hsla(var(--color-blue), 1); + --theme-selection-bg: hsla(var(--color-blue), var(--theme-accent-opacity)); +} + +body { + background: var(--theme-bg); + color: var(--theme-text); +} + +:root.theme-dark { + color-scheme: dark; + --theme-accent-opacity: 0.15; + --theme-accent: hsla(var(--color-blue), 1); + --theme-text-accent: hsla(var(--color-blue), 1); + --theme-divider: hsla(var(--color-gray-10), 1); + --theme-text: hsla(var(--color-gray-90), 1); + --theme-text-light: hsla(var(--color-gray-80), 1); + + /* @@@: not used anywhere */ + --theme-text-lighter: hsla(var(--color-gray-40), 1); + --theme-bg: hsla(215, 28%, 17%, 1); + --theme-bg-hover: hsla(var(--color-gray-40), 1); + --theme-bg-offset: hsla(var(--color-gray-5), 1); + --theme-code-inline-bg: hsla(var(--color-gray-10), 1); + --theme-code-inline-text: hsla(var(--color-base-white), 100%, 1); + --theme-code-bg: hsla(var(--color-gray-5), 1); + --theme-code-text: hsla(var(--color-base-white), 100%, 1); + --theme-navbar-bg: hsla(215, 28%, 17%, 1); + --theme-selection-color: hsla(var(--color-base-white), 100%, 1); + --theme-selection-bg: hsla( + var(--color-purple), + var(--theme-accent-opacity) + ); + + /* DocSearch [Algolia] */ + --docsearch-modal-background: var(--theme-bg); + --docsearch-searchbox-focus-background: var(--theme-divider); + --docsearch-footer-background: var(--theme-divider); + --docsearch-text-color: var(--theme-text); + --docsearch-hit-background: var(--theme-divider); + --docsearch-hit-shadow: none; + --docsearch-hit-color: var(--theme-text); + --docsearch-footer-shadow: inset 0 2px 10px #000; + --docsearch-modal-shadow: inset 0 0 8px #000; +} + +::selection { + color: var(--theme-selection-color); + background-color: var(--theme-selection-bg); +} diff --git a/tailwind.config.cjs b/tailwind.config.cjs new file mode 100644 index 0000000..f5368a7 --- /dev/null +++ b/tailwind.config.cjs @@ -0,0 +1,8 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: ['./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}'], + theme: { + extend: {}, + }, + plugins: [], +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..59625a7 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "astro/tsconfigs/base", + "compilerOptions": { + "jsx": "preserve", + "skipLibCheck": true + } +} \ No newline at end of file