From b46f03a236005087b329682ccef7d5e934368f66 Mon Sep 17 00:00:00 2001 From: "Christopher A. Flores" Date: Mon, 12 Jun 2023 20:16:52 -0600 Subject: [PATCH] feat: oruga wrapper --- .devcontainer/devcontainer.json | 29 + .editorconfig | 3 + .env | 5 + .eslintignore | 2 + .eslintrc | 46 + .github/workflows/publish.yml | 53 + .gitignore | 13 + .npmrc | 1 + .vscode/extensions.json | 17 + .vscode/settings.json | 24 + Dockerfile | 19 + LICENSE | 21 + README.md | 1 + auto-imports.d.ts | 564 +++ build/exports.js | 41 + components.d.ts | 75 + cypress.json | 3 + cypress/fixtures/example.json | 5 + cypress/integration/basic.spec.ts | 9 + cypress/plugins/index.js | 22 + cypress/support/commands.js | 25 + cypress/support/index.js | 20 + cypress/videos/basic.spec.ts.mp4 | Bin 0 -> 84483 bytes demo/App.vue | 53 + demo/main.ts | 39 + demo/modules/axios.ts | 72 + demo/styles/main.sass | 22 + demo/styles/mixins.sass | 9 + demo/viewer/FCheckboxViewer.vue | 39 + demo/viewer/FColorViewer.vue | 22 + demo/viewer/FDateViewer.vue | 28 + demo/viewer/FFileViewer.vue | 24 + demo/viewer/FFormViewer.vue | 29 + demo/viewer/FImageViewer.vue | 24 + demo/viewer/FInputViewer.vue | 54 + demo/viewer/FPasswordViewer.vue | 24 + demo/viewer/FRadioViewer.vue | 31 + demo/viewer/FSelectViewer.vue | 51 + demo/viewer/FSidebar.vue | 30 + demo/viewer/FSidebarItem.vue | 39 + demo/viewer/FTableViewer.vue | 175 + demo/viewer/FTextareaViewer.vue | 24 + docker-compose.yml | 23 + index.html | 18 + package.json | 91 + postcss.config.js | 6 + public/favicon.ico | Bin 0 -> 4286 bytes setup.sh | 5 + src/index.ts | 72 + src/shims.d.ts | 31 + src/wrappers/common/Button.vue | 27 + src/wrappers/common/LoadingIcon.vue | 21 + src/wrappers/common/Modal.vue | 21 + src/wrappers/common/index.ts | 12 + src/wrappers/config/defaults/classes.ts | 63 + src/wrappers/config/defaults/index.ts | 1 + src/wrappers/config/index.ts | 1 + src/wrappers/fields/Checkbox.vue | 47 + src/wrappers/fields/Color.vue | 28 + src/wrappers/fields/Datepicker.vue | 32 + src/wrappers/fields/File.vue | 44 + src/wrappers/fields/Password.vue | 28 + src/wrappers/fields/Radio.vue | 46 + src/wrappers/fields/Select.vue | 43 + src/wrappers/fields/Text.vue | 29 + src/wrappers/fields/Textarea.vue | 28 + src/wrappers/fields/index.ts | 20 + src/wrappers/index.ts | 8 + src/wrappers/table/TableBody.vue | 43 + src/wrappers/table/index.ts | 7 + tailwind.config.js | 20 + test/__snapshots__/component.test.ts.snap | 3 + test/basic.test.ts | 5 + test/component.test.ts | 21 + tsconfig.json | 44 + vite.config.ts | 56 + yarn.lock | 5025 +++++++++++++++++++++ 77 files changed, 7756 insertions(+) create mode 100755 .devcontainer/devcontainer.json create mode 100644 .editorconfig create mode 100644 .env create mode 100644 .eslintignore create mode 100644 .eslintrc create mode 100644 .github/workflows/publish.yml create mode 100644 .gitignore create mode 100644 .npmrc create mode 100644 .vscode/extensions.json create mode 100644 .vscode/settings.json create mode 100755 Dockerfile create mode 100644 LICENSE create mode 100644 README.md create mode 100644 auto-imports.d.ts create mode 100644 build/exports.js create mode 100644 components.d.ts create mode 100644 cypress.json create mode 100644 cypress/fixtures/example.json create mode 100644 cypress/integration/basic.spec.ts create mode 100644 cypress/plugins/index.js create mode 100644 cypress/support/commands.js create mode 100644 cypress/support/index.js create mode 100644 cypress/videos/basic.spec.ts.mp4 create mode 100644 demo/App.vue create mode 100644 demo/main.ts create mode 100644 demo/modules/axios.ts create mode 100755 demo/styles/main.sass create mode 100644 demo/styles/mixins.sass create mode 100644 demo/viewer/FCheckboxViewer.vue create mode 100644 demo/viewer/FColorViewer.vue create mode 100644 demo/viewer/FDateViewer.vue create mode 100644 demo/viewer/FFileViewer.vue create mode 100644 demo/viewer/FFormViewer.vue create mode 100644 demo/viewer/FImageViewer.vue create mode 100644 demo/viewer/FInputViewer.vue create mode 100644 demo/viewer/FPasswordViewer.vue create mode 100644 demo/viewer/FRadioViewer.vue create mode 100644 demo/viewer/FSelectViewer.vue create mode 100644 demo/viewer/FSidebar.vue create mode 100644 demo/viewer/FSidebarItem.vue create mode 100644 demo/viewer/FTableViewer.vue create mode 100644 demo/viewer/FTextareaViewer.vue create mode 100755 docker-compose.yml create mode 100644 index.html create mode 100644 package.json create mode 100644 postcss.config.js create mode 100644 public/favicon.ico create mode 100755 setup.sh create mode 100644 src/index.ts create mode 100644 src/shims.d.ts create mode 100644 src/wrappers/common/Button.vue create mode 100644 src/wrappers/common/LoadingIcon.vue create mode 100644 src/wrappers/common/Modal.vue create mode 100644 src/wrappers/common/index.ts create mode 100644 src/wrappers/config/defaults/classes.ts create mode 100644 src/wrappers/config/defaults/index.ts create mode 100644 src/wrappers/config/index.ts create mode 100644 src/wrappers/fields/Checkbox.vue create mode 100644 src/wrappers/fields/Color.vue create mode 100644 src/wrappers/fields/Datepicker.vue create mode 100644 src/wrappers/fields/File.vue create mode 100644 src/wrappers/fields/Password.vue create mode 100644 src/wrappers/fields/Radio.vue create mode 100644 src/wrappers/fields/Select.vue create mode 100644 src/wrappers/fields/Text.vue create mode 100644 src/wrappers/fields/Textarea.vue create mode 100644 src/wrappers/fields/index.ts create mode 100644 src/wrappers/index.ts create mode 100644 src/wrappers/table/TableBody.vue create mode 100644 src/wrappers/table/index.ts create mode 100644 tailwind.config.js create mode 100644 test/__snapshots__/component.test.ts.snap create mode 100644 test/basic.test.ts create mode 100644 test/component.test.ts create mode 100644 tsconfig.json create mode 100644 vite.config.ts create mode 100644 yarn.lock diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100755 index 0000000..14bb387 --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,29 @@ +// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at: +// https://github.com/microsoft/vscode-dev-containers/tree/v0.191.1/containers/vue +{ + "name": "Vue project container", + "dockerComposeFile": "../docker-compose.yml", + "service": "frontend", + "workspaceFolder": "/home/fancy-crud/fancy-crud", + + // Add the IDs of extensions you want installed when the container is created. + "extensions": [ + "misterJ.vue-volar-extention-pack", + "lokalise.i18n-ally", + "antfu.iconify", + "dbaeumer.vscode-eslint", + "csstools.postcss", + "bradlc.vscode-tailwindcss", + "formulahendry.auto-close-tag", + "formulahendry.auto-rename-tag", + "streetsidesoftware.code-spell-checker", + "streetsidesoftware.code-spell-checker-spanish", + "anseki.vscode-color", + "eg2.vscode-npm-script", + "redhat.vscode-yaml", + "MisterJ.vue-volar-extention-pack" + ], + + // Use 'forwardPorts' to make a list of ports inside the container available locally. + "forwardPorts": [9090] +} \ No newline at end of file diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..f4101e5 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,3 @@ +[*] +end_of_line = lf +indent_size = 2 \ No newline at end of file diff --git a/.env b/.env new file mode 100644 index 0000000..c09c0d4 --- /dev/null +++ b/.env @@ -0,0 +1,5 @@ +COMPOSE_PROJECT_NAME=fancy-crud + +VITE_API_CLIENT_ID=AH1by2RrSxMGPEHqNcCUDWsIlheIEYW2poXZDDoL +VITE_API_CLIENT_SECRET=wHiIbTKuShEocjLtAKCNqYpa5KfLaEYvNcgIYIJOANIsH8JnBjywDcAh993Fgkhk2uMujl0qzzNqr84tNbJvY2bOQZJjozcdHTZTTSeSWYTllGwmmE4TfCrJQgfYEtgp +VITE_APP_TITLE=Vue Template diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 0000000..6cd69e0 --- /dev/null +++ b/.eslintignore @@ -0,0 +1,2 @@ +dist +public diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 0000000..fafcaf3 --- /dev/null +++ b/.eslintrc @@ -0,0 +1,46 @@ +{ + "extends": [ + "@antfu" + ], + "rules": { + "no-console": "warn", + "vue/attribute-hyphenation": ["error", "always", { + "ignore": ["modelValue"] + }], + "vue/v-on-event-hyphenation": ["error", "always", { + "autofix": false, + "ignore": ["update:modelValue"] + }], + "vue/component-tags-order": ["error", { + "order": [ "template", "script", "style" ] + }], + "vue/component-name-in-template-casing": ["error", "kebab-case"], + "vue/custom-event-name-casing": ["error", "kebab-case"], + "vue/block-lang": ["error", + { + "script": { + "lang": "ts" + }, + "style": { + "lang": "sass" + } + } + ], + "vue/attributes-order": ["error", { + "order": [ + "LIST_RENDERING", + "CONDITIONALS", + "DEFINITION", + "RENDER_MODIFIERS", + "TWO_WAY_BINDING", + "OTHER_DIRECTIVES", + "EVENTS", + ["UNIQUE", "SLOT"], + "OTHER_ATTR", + "GLOBAL", + "CONTENT" + ], + "alphabetical": false + }] + } +} diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..d0696d0 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,53 @@ +name: Node.js CI + +on: + push: + branches: [main] + pull_request: + branches: ['*'] + +jobs: + quality: + + runs-on: ${{ matrix.os }} + + strategy: + matrix: + # node-version: [10.x, 12.x, 14.x, 15.x, 16.x, 17.x] + node-version: [16.x] + # os: [ubuntu-latest, windows-latest] + os: [ubuntu-latest] + # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v2 + with: + node-version: ${{ matrix.node-version }} + - run: yarn install + # - run: npm test + + publish: + runs-on: ubuntu-latest + if: ${{ github.ref == 'refs/heads/main' }} + needs: [quality] + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v2 + with: + node-version: ${{ matrix.node-version }} + - run: yarn install + - run: yarn run build + - name: Semantic Release + run: | + yarn add -D semantic-release@^19.0.5 \ + "@semantic-release/changelog" \ + "@semantic-release/commit-analyzer" \ + "@semantic-release/github" \ + "@semantic-release/release-notes-generator" + npx semantic-release + env: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8bdd65b --- /dev/null +++ b/.gitignore @@ -0,0 +1,13 @@ +.DS_Store +.vite-ssg-dist +.vite-ssg-temp +*.local +dist +dist-ssr +node_modules +.pnpm-store/ +.idea/ +*.log +server/media +server/*.sqlite3 +__pycache__ \ No newline at end of file diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..bf2e764 --- /dev/null +++ b/.npmrc @@ -0,0 +1 @@ +shamefully-hoist=true diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..ccbf1e4 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,17 @@ +{ + "recommendations": [ + "misterJ.vue-volar-extention-pack", + "lokalise.i18n-ally", + "antfu.iconify", + "dbaeumer.vscode-eslint", + "csstools.postcss", + "bradlc.vscode-tailwindcss", + "formulahendry.auto-close-tag", + "formulahendry.auto-rename-tag", + "streetsidesoftware.code-spell-checker", + "streetsidesoftware.code-spell-checker-spanish", + "anseki.vscode-color", + "eg2.vscode-npm-script", + "redhat.vscode-yaml" + ] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..c7914c4 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,24 @@ +{ + "cSpell.words": [ + "Vitesse", + "vmodel" + ], + "i18n-ally.keystyle": "nested", + "i18n-ally.localesPaths": [ + "locales", + "src/locales" + ], + "i18n-ally.sortKeys": true, + "prettier.enable": false, + "typescript.tsdk": "node_modules/typescript/lib", + "editor.codeActionsOnSave": { + "source.fixAll.eslint": true + }, + "files.associations": { + "*.css": "postcss" + }, + "editor.formatOnSave": false, + "i18n-ally.sourceLanguage": "en", + "vite.host": "0.0.0.0", + "vite.port": 9090 +} diff --git a/Dockerfile b/Dockerfile new file mode 100755 index 0000000..49bb969 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,19 @@ +FROM node:16.13.1 + +ARG user=fancy-crud +ARG uid=1000 +ARG gid=1000 + +RUN userdel -r node +RUN addgroup --gid $gid ${user} +RUN adduser --disabled-password --gecos '' --uid $uid --gid $gid ${user} + +USER ${user} + +RUN mkdir -p /home/${user}/${user} + +WORKDIR /home/${user}/${user} + +COPY --chown=${user}:${user} . . + +CMD [ "./setup.sh" ] diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..46122fb --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2021 Christopher Flores + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..ab7d1ba --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# ⚠⚠ We're making updates in the documentation ⚠⚠ \ No newline at end of file diff --git a/auto-imports.d.ts b/auto-imports.d.ts new file mode 100644 index 0000000..d61a13b --- /dev/null +++ b/auto-imports.d.ts @@ -0,0 +1,564 @@ +// Generated by 'unplugin-auto-import' +export {} +declare global { + const $$: typeof import('vue/macros')['$$'] + const $: typeof import('vue/macros')['$'] + const $computed: typeof import('vue/macros')['$computed'] + const $customRef: typeof import('vue/macros')['$customRef'] + const $ref: typeof import('vue/macros')['$ref'] + const $shallowRef: typeof import('vue/macros')['$shallowRef'] + const $toRef: typeof import('vue/macros')['$toRef'] + const EffectScope: typeof import('vue')['EffectScope'] + const asyncComputed: typeof import('@vueuse/core')['asyncComputed'] + const autoResetRef: typeof import('@vueuse/core')['autoResetRef'] + const computed: typeof import('vue')['computed'] + const computedAsync: typeof import('@vueuse/core')['computedAsync'] + const computedEager: typeof import('@vueuse/core')['computedEager'] + const computedInject: typeof import('@vueuse/core')['computedInject'] + const computedWithControl: typeof import('@vueuse/core')['computedWithControl'] + const controlledComputed: typeof import('@vueuse/core')['controlledComputed'] + const controlledRef: typeof import('@vueuse/core')['controlledRef'] + const createApp: typeof import('vue')['createApp'] + const createEventHook: typeof import('@vueuse/core')['createEventHook'] + const createGlobalState: typeof import('@vueuse/core')['createGlobalState'] + const createInjectionState: typeof import('@vueuse/core')['createInjectionState'] + const createReactiveFn: typeof import('@vueuse/core')['createReactiveFn'] + const createSharedComposable: typeof import('@vueuse/core')['createSharedComposable'] + const createUnrefFn: typeof import('@vueuse/core')['createUnrefFn'] + const customRef: typeof import('vue')['customRef'] + const debouncedRef: typeof import('@vueuse/core')['debouncedRef'] + const debouncedWatch: typeof import('@vueuse/core')['debouncedWatch'] + const defineAsyncComponent: typeof import('vue')['defineAsyncComponent'] + const defineComponent: typeof import('vue')['defineComponent'] + const eagerComputed: typeof import('@vueuse/core')['eagerComputed'] + const effectScope: typeof import('vue')['effectScope'] + const extendRef: typeof import('@vueuse/core')['extendRef'] + const getCurrentInstance: typeof import('vue')['getCurrentInstance'] + const getCurrentScope: typeof import('vue')['getCurrentScope'] + const h: typeof import('vue')['h'] + const i18n: typeof import('./src/locales/composables/locale')['i18n'] + const ignorableWatch: typeof import('@vueuse/core')['ignorableWatch'] + const inject: typeof import('vue')['inject'] + const isDefined: typeof import('@vueuse/core')['isDefined'] + const isProxy: typeof import('vue')['isProxy'] + const isReactive: typeof import('vue')['isReactive'] + const isReadonly: typeof import('vue')['isReadonly'] + const isRef: typeof import('vue')['isRef'] + const makeDestructurable: typeof import('@vueuse/core')['makeDestructurable'] + const markRaw: typeof import('vue')['markRaw'] + const nextTick: typeof import('vue')['nextTick'] + const onActivated: typeof import('vue')['onActivated'] + const onBeforeMount: typeof import('vue')['onBeforeMount'] + const onBeforeUnmount: typeof import('vue')['onBeforeUnmount'] + const onBeforeUpdate: typeof import('vue')['onBeforeUpdate'] + const onClickOutside: typeof import('@vueuse/core')['onClickOutside'] + const onDeactivated: typeof import('vue')['onDeactivated'] + const onErrorCaptured: typeof import('vue')['onErrorCaptured'] + const onKeyStroke: typeof import('@vueuse/core')['onKeyStroke'] + const onLongPress: typeof import('@vueuse/core')['onLongPress'] + const onMounted: typeof import('vue')['onMounted'] + const onRenderTracked: typeof import('vue')['onRenderTracked'] + const onRenderTriggered: typeof import('vue')['onRenderTriggered'] + const onScopeDispose: typeof import('vue')['onScopeDispose'] + const onServerPrefetch: typeof import('vue')['onServerPrefetch'] + const onStartTyping: typeof import('@vueuse/core')['onStartTyping'] + const onUnmounted: typeof import('vue')['onUnmounted'] + const onUpdated: typeof import('vue')['onUpdated'] + const pausableWatch: typeof import('@vueuse/core')['pausableWatch'] + const provide: typeof import('vue')['provide'] + const reactify: typeof import('@vueuse/core')['reactify'] + const reactifyObject: typeof import('@vueuse/core')['reactifyObject'] + const reactive: typeof import('vue')['reactive'] + const reactiveComputed: typeof import('@vueuse/core')['reactiveComputed'] + const reactiveOmit: typeof import('@vueuse/core')['reactiveOmit'] + const reactivePick: typeof import('@vueuse/core')['reactivePick'] + const readonly: typeof import('vue')['readonly'] + const ref: typeof import('vue')['ref'] + const refAutoReset: typeof import('@vueuse/core')['refAutoReset'] + const refDebounced: typeof import('@vueuse/core')['refDebounced'] + const refDefault: typeof import('@vueuse/core')['refDefault'] + const refThrottled: typeof import('@vueuse/core')['refThrottled'] + const refWithControl: typeof import('@vueuse/core')['refWithControl'] + const resolveComponent: typeof import('vue')['resolveComponent'] + const resolveDirective: typeof import('vue')['resolveDirective'] + const resolveRef: typeof import('@vueuse/core')['resolveRef'] + const resolveUnref: typeof import('@vueuse/core')['resolveUnref'] + const setLocale: typeof import('./src/locales/composables/locale')['setLocale'] + const shallowReactive: typeof import('vue')['shallowReactive'] + const shallowReadonly: typeof import('vue')['shallowReadonly'] + const shallowRef: typeof import('vue')['shallowRef'] + const syncRef: typeof import('@vueuse/core')['syncRef'] + const syncRefs: typeof import('@vueuse/core')['syncRefs'] + const templateRef: typeof import('@vueuse/core')['templateRef'] + const throttledRef: typeof import('@vueuse/core')['throttledRef'] + const throttledWatch: typeof import('@vueuse/core')['throttledWatch'] + const toRaw: typeof import('vue')['toRaw'] + const toReactive: typeof import('@vueuse/core')['toReactive'] + const toRef: typeof import('vue')['toRef'] + const toRefs: typeof import('vue')['toRefs'] + const triggerRef: typeof import('vue')['triggerRef'] + const tryOnBeforeMount: typeof import('@vueuse/core')['tryOnBeforeMount'] + const tryOnBeforeUnmount: typeof import('@vueuse/core')['tryOnBeforeUnmount'] + const tryOnMounted: typeof import('@vueuse/core')['tryOnMounted'] + const tryOnScopeDispose: typeof import('@vueuse/core')['tryOnScopeDispose'] + const tryOnUnmounted: typeof import('@vueuse/core')['tryOnUnmounted'] + const unref: typeof import('vue')['unref'] + const unrefElement: typeof import('@vueuse/core')['unrefElement'] + const until: typeof import('@vueuse/core')['until'] + const useActiveElement: typeof import('@vueuse/core')['useActiveElement'] + const useArrayEvery: typeof import('@vueuse/core')['useArrayEvery'] + const useArrayFilter: typeof import('@vueuse/core')['useArrayFilter'] + const useArrayFind: typeof import('@vueuse/core')['useArrayFind'] + const useArrayFindIndex: typeof import('@vueuse/core')['useArrayFindIndex'] + const useArrayFindLast: typeof import('@vueuse/core')['useArrayFindLast'] + const useArrayJoin: typeof import('@vueuse/core')['useArrayJoin'] + const useArrayMap: typeof import('@vueuse/core')['useArrayMap'] + const useArrayReduce: typeof import('@vueuse/core')['useArrayReduce'] + const useArraySome: typeof import('@vueuse/core')['useArraySome'] + const useArrayUnique: typeof import('@vueuse/core')['useArrayUnique'] + const useAsyncQueue: typeof import('@vueuse/core')['useAsyncQueue'] + const useAsyncState: typeof import('@vueuse/core')['useAsyncState'] + const useAttrs: typeof import('vue')['useAttrs'] + const useBase64: typeof import('@vueuse/core')['useBase64'] + const useBattery: typeof import('@vueuse/core')['useBattery'] + const useBluetooth: typeof import('@vueuse/core')['useBluetooth'] + const useBreakpoints: typeof import('@vueuse/core')['useBreakpoints'] + const useBroadcastChannel: typeof import('@vueuse/core')['useBroadcastChannel'] + const useBrowserLocation: typeof import('@vueuse/core')['useBrowserLocation'] + const useCached: typeof import('@vueuse/core')['useCached'] + const useClipboard: typeof import('@vueuse/core')['useClipboard'] + const useCloned: typeof import('@vueuse/core')['useCloned'] + const useColorMode: typeof import('@vueuse/core')['useColorMode'] + const useColumnValue: typeof import('./src/tables/integration/composables/column-value')['useColumnValue'] + const useConfirmDialog: typeof import('@vueuse/core')['useConfirmDialog'] + const useCounter: typeof import('@vueuse/core')['useCounter'] + const useCssModule: typeof import('vue')['useCssModule'] + const useCssVar: typeof import('@vueuse/core')['useCssVar'] + const useCssVars: typeof import('vue')['useCssVars'] + const useCurrentElement: typeof import('@vueuse/core')['useCurrentElement'] + const useCycleList: typeof import('@vueuse/core')['useCycleList'] + const useDark: typeof import('@vueuse/core')['useDark'] + const useDateFormat: typeof import('@vueuse/core')['useDateFormat'] + const useDebounce: typeof import('@vueuse/core')['useDebounce'] + const useDebounceFn: typeof import('@vueuse/core')['useDebounceFn'] + const useDebouncedRefHistory: typeof import('@vueuse/core')['useDebouncedRefHistory'] + const useDeviceMotion: typeof import('@vueuse/core')['useDeviceMotion'] + const useDeviceOrientation: typeof import('@vueuse/core')['useDeviceOrientation'] + const useDevicePixelRatio: typeof import('@vueuse/core')['useDevicePixelRatio'] + const useDevicesList: typeof import('@vueuse/core')['useDevicesList'] + const useDisplayMedia: typeof import('@vueuse/core')['useDisplayMedia'] + const useDocumentVisibility: typeof import('@vueuse/core')['useDocumentVisibility'] + const useDraggable: typeof import('@vueuse/core')['useDraggable'] + const useDropZone: typeof import('@vueuse/core')['useDropZone'] + const useElementBounding: typeof import('@vueuse/core')['useElementBounding'] + const useElementByPoint: typeof import('@vueuse/core')['useElementByPoint'] + const useElementHover: typeof import('@vueuse/core')['useElementHover'] + const useElementSize: typeof import('@vueuse/core')['useElementSize'] + const useElementVisibility: typeof import('@vueuse/core')['useElementVisibility'] + const useEventBus: typeof import('@vueuse/core')['useEventBus'] + const useEventListener: typeof import('@vueuse/core')['useEventListener'] + const useEventSource: typeof import('@vueuse/core')['useEventSource'] + const useEyeDropper: typeof import('@vueuse/core')['useEyeDropper'] + const useFavicon: typeof import('@vueuse/core')['useFavicon'] + const useFetch: typeof import('@vueuse/core')['useFetch'] + const useFileDialog: typeof import('@vueuse/core')['useFileDialog'] + const useFileSystemAccess: typeof import('@vueuse/core')['useFileSystemAccess'] + const useFilters: typeof import('./src/filters/composables/index')['useFilters'] + const useFocus: typeof import('@vueuse/core')['useFocus'] + const useFocusWithin: typeof import('@vueuse/core')['useFocusWithin'] + const useForm: typeof import('./src/forms/integration/composables/form')['useForm'] + const useFps: typeof import('@vueuse/core')['useFps'] + const useFullscreen: typeof import('@vueuse/core')['useFullscreen'] + const useGamepad: typeof import('@vueuse/core')['useGamepad'] + const useGeolocation: typeof import('@vueuse/core')['useGeolocation'] + const useIdle: typeof import('@vueuse/core')['useIdle'] + const useImage: typeof import('@vueuse/core')['useImage'] + const useInfiniteScroll: typeof import('@vueuse/core')['useInfiniteScroll'] + const useIntersectionObserver: typeof import('@vueuse/core')['useIntersectionObserver'] + const useInterval: typeof import('@vueuse/core')['useInterval'] + const useIntervalFn: typeof import('@vueuse/core')['useIntervalFn'] + const useKeyModifier: typeof import('@vueuse/core')['useKeyModifier'] + const useLastChanged: typeof import('@vueuse/core')['useLastChanged'] + const useLocalStorage: typeof import('@vueuse/core')['useLocalStorage'] + const useLocale: typeof import('./src/locales/composables/locale')['useLocale'] + const useMagicKeys: typeof import('@vueuse/core')['useMagicKeys'] + const useManualRefHistory: typeof import('@vueuse/core')['useManualRefHistory'] + const useMediaControls: typeof import('@vueuse/core')['useMediaControls'] + const useMediaQuery: typeof import('@vueuse/core')['useMediaQuery'] + const useMemoize: typeof import('@vueuse/core')['useMemoize'] + const useMemory: typeof import('@vueuse/core')['useMemory'] + const useMounted: typeof import('@vueuse/core')['useMounted'] + const useMouse: typeof import('@vueuse/core')['useMouse'] + const useMouseInElement: typeof import('@vueuse/core')['useMouseInElement'] + const useMousePressed: typeof import('@vueuse/core')['useMousePressed'] + const useMutationObserver: typeof import('@vueuse/core')['useMutationObserver'] + const useNavigatorLanguage: typeof import('@vueuse/core')['useNavigatorLanguage'] + const useNetwork: typeof import('@vueuse/core')['useNetwork'] + const useNow: typeof import('@vueuse/core')['useNow'] + const useObjectUrl: typeof import('@vueuse/core')['useObjectUrl'] + const useOffsetPagination: typeof import('@vueuse/core')['useOffsetPagination'] + const useOnline: typeof import('@vueuse/core')['useOnline'] + const usePageLeave: typeof import('@vueuse/core')['usePageLeave'] + const useParallax: typeof import('@vueuse/core')['useParallax'] + const usePermission: typeof import('@vueuse/core')['usePermission'] + const usePointer: typeof import('@vueuse/core')['usePointer'] + const usePointerLock: typeof import('@vueuse/core')['usePointerLock'] + const usePointerSwipe: typeof import('@vueuse/core')['usePointerSwipe'] + const usePreferredColorScheme: typeof import('@vueuse/core')['usePreferredColorScheme'] + const usePreferredContrast: typeof import('@vueuse/core')['usePreferredContrast'] + const usePreferredDark: typeof import('@vueuse/core')['usePreferredDark'] + const usePreferredLanguages: typeof import('@vueuse/core')['usePreferredLanguages'] + const usePreferredReducedMotion: typeof import('@vueuse/core')['usePreferredReducedMotion'] + const usePrevious: typeof import('@vueuse/core')['usePrevious'] + const useRafFn: typeof import('@vueuse/core')['useRafFn'] + const useRefHistory: typeof import('@vueuse/core')['useRefHistory'] + const useRequestList: typeof import('./src/http/integration/composables/request-list')['useRequestList'] + const useResizeObserver: typeof import('@vueuse/core')['useResizeObserver'] + const useRules: typeof import('./src/forms/integration/composables/rules')['useRules'] + const useScreenOrientation: typeof import('@vueuse/core')['useScreenOrientation'] + const useScreenSafeArea: typeof import('@vueuse/core')['useScreenSafeArea'] + const useScriptTag: typeof import('@vueuse/core')['useScriptTag'] + const useScroll: typeof import('@vueuse/core')['useScroll'] + const useScrollLock: typeof import('@vueuse/core')['useScrollLock'] + const useSessionStorage: typeof import('@vueuse/core')['useSessionStorage'] + const useShare: typeof import('@vueuse/core')['useShare'] + const useSlots: typeof import('vue')['useSlots'] + const useSorted: typeof import('@vueuse/core')['useSorted'] + const useSpeechRecognition: typeof import('@vueuse/core')['useSpeechRecognition'] + const useSpeechSynthesis: typeof import('@vueuse/core')['useSpeechSynthesis'] + const useStepper: typeof import('@vueuse/core')['useStepper'] + const useStorage: typeof import('@vueuse/core')['useStorage'] + const useStorageAsync: typeof import('@vueuse/core')['useStorageAsync'] + const useStyleTag: typeof import('@vueuse/core')['useStyleTag'] + const useSupported: typeof import('@vueuse/core')['useSupported'] + const useSwipe: typeof import('@vueuse/core')['useSwipe'] + const useTable: typeof import('./src/tables/integration/composables/table')['useTable'] + const useTemplateRefsList: typeof import('@vueuse/core')['useTemplateRefsList'] + const useTextDirection: typeof import('@vueuse/core')['useTextDirection'] + const useTextSelection: typeof import('@vueuse/core')['useTextSelection'] + const useTextareaAutosize: typeof import('@vueuse/core')['useTextareaAutosize'] + const useThrottle: typeof import('@vueuse/core')['useThrottle'] + const useThrottleFn: typeof import('@vueuse/core')['useThrottleFn'] + const useThrottledRefHistory: typeof import('@vueuse/core')['useThrottledRefHistory'] + const useTimeAgo: typeof import('@vueuse/core')['useTimeAgo'] + const useTimeout: typeof import('@vueuse/core')['useTimeout'] + const useTimeoutFn: typeof import('@vueuse/core')['useTimeoutFn'] + const useTimeoutPoll: typeof import('@vueuse/core')['useTimeoutPoll'] + const useTimestamp: typeof import('@vueuse/core')['useTimestamp'] + const useTitle: typeof import('@vueuse/core')['useTitle'] + const useToNumber: typeof import('@vueuse/core')['useToNumber'] + const useToString: typeof import('@vueuse/core')['useToString'] + const useToggle: typeof import('@vueuse/core')['useToggle'] + const useTransition: typeof import('@vueuse/core')['useTransition'] + const useUrlSearchParams: typeof import('@vueuse/core')['useUrlSearchParams'] + const useUserMedia: typeof import('@vueuse/core')['useUserMedia'] + const useVModel: typeof import('@vueuse/core')['useVModel'] + const useVModels: typeof import('@vueuse/core')['useVModels'] + const useVibrate: typeof import('@vueuse/core')['useVibrate'] + const useVirtualList: typeof import('@vueuse/core')['useVirtualList'] + const useWakeLock: typeof import('@vueuse/core')['useWakeLock'] + const useWebNotification: typeof import('@vueuse/core')['useWebNotification'] + const useWebSocket: typeof import('@vueuse/core')['useWebSocket'] + const useWebWorker: typeof import('@vueuse/core')['useWebWorker'] + const useWebWorkerFn: typeof import('@vueuse/core')['useWebWorkerFn'] + const useWindowFocus: typeof import('@vueuse/core')['useWindowFocus'] + const useWindowScroll: typeof import('@vueuse/core')['useWindowScroll'] + const useWindowSize: typeof import('@vueuse/core')['useWindowSize'] + const watch: typeof import('vue')['watch'] + const watchArray: typeof import('@vueuse/core')['watchArray'] + const watchAtMost: typeof import('@vueuse/core')['watchAtMost'] + const watchDebounced: typeof import('@vueuse/core')['watchDebounced'] + const watchEffect: typeof import('vue')['watchEffect'] + const watchIgnorable: typeof import('@vueuse/core')['watchIgnorable'] + const watchOnce: typeof import('@vueuse/core')['watchOnce'] + const watchPausable: typeof import('@vueuse/core')['watchPausable'] + const watchPostEffect: typeof import('vue')['watchPostEffect'] + const watchSyncEffect: typeof import('vue')['watchSyncEffect'] + const watchThrottled: typeof import('@vueuse/core')['watchThrottled'] + const watchTriggerable: typeof import('@vueuse/core')['watchTriggerable'] + const watchWithFilter: typeof import('@vueuse/core')['watchWithFilter'] + const whenever: typeof import('@vueuse/core')['whenever'] +} +// for vue template auto import +import { UnwrapRef } from 'vue' +declare module 'vue' { + interface ComponentCustomProperties { + readonly $$: UnwrapRef + readonly $: UnwrapRef + readonly $computed: UnwrapRef + readonly $customRef: UnwrapRef + readonly $ref: UnwrapRef + readonly $shallowRef: UnwrapRef + readonly $toRef: UnwrapRef + readonly EffectScope: UnwrapRef + readonly asyncComputed: UnwrapRef + readonly autoResetRef: UnwrapRef + readonly computed: UnwrapRef + readonly computedAsync: UnwrapRef + readonly computedEager: UnwrapRef + readonly computedInject: UnwrapRef + readonly computedWithControl: UnwrapRef + readonly controlledComputed: UnwrapRef + readonly controlledRef: UnwrapRef + readonly createApp: UnwrapRef + readonly createEventHook: UnwrapRef + readonly createGlobalState: UnwrapRef + readonly createInjectionState: UnwrapRef + readonly createReactiveFn: UnwrapRef + readonly createSharedComposable: UnwrapRef + readonly createUnrefFn: UnwrapRef + readonly customRef: UnwrapRef + readonly debouncedRef: UnwrapRef + readonly debouncedWatch: UnwrapRef + readonly defineAsyncComponent: UnwrapRef + readonly defineComponent: UnwrapRef + readonly eagerComputed: UnwrapRef + readonly effectScope: UnwrapRef + readonly extendRef: UnwrapRef + readonly getCurrentInstance: UnwrapRef + readonly getCurrentScope: UnwrapRef + readonly h: UnwrapRef + readonly i18n: UnwrapRef + readonly ignorableWatch: UnwrapRef + readonly inject: UnwrapRef + readonly isDefined: UnwrapRef + readonly isProxy: UnwrapRef + readonly isReactive: UnwrapRef + readonly isReadonly: UnwrapRef + readonly isRef: UnwrapRef + readonly makeDestructurable: UnwrapRef + readonly markRaw: UnwrapRef + readonly nextTick: UnwrapRef + readonly onActivated: UnwrapRef + readonly onBeforeMount: UnwrapRef + readonly onBeforeUnmount: UnwrapRef + readonly onBeforeUpdate: UnwrapRef + readonly onClickOutside: UnwrapRef + readonly onDeactivated: UnwrapRef + readonly onErrorCaptured: UnwrapRef + readonly onKeyStroke: UnwrapRef + readonly onLongPress: UnwrapRef + readonly onMounted: UnwrapRef + readonly onRenderTracked: UnwrapRef + readonly onRenderTriggered: UnwrapRef + readonly onScopeDispose: UnwrapRef + readonly onServerPrefetch: UnwrapRef + readonly onStartTyping: UnwrapRef + readonly onUnmounted: UnwrapRef + readonly onUpdated: UnwrapRef + readonly pausableWatch: UnwrapRef + readonly provide: UnwrapRef + readonly reactify: UnwrapRef + readonly reactifyObject: UnwrapRef + readonly reactive: UnwrapRef + readonly reactiveComputed: UnwrapRef + readonly reactiveOmit: UnwrapRef + readonly reactivePick: UnwrapRef + readonly readonly: UnwrapRef + readonly ref: UnwrapRef + readonly refAutoReset: UnwrapRef + readonly refDebounced: UnwrapRef + readonly refDefault: UnwrapRef + readonly refThrottled: UnwrapRef + readonly refWithControl: UnwrapRef + readonly resolveComponent: UnwrapRef + readonly resolveDirective: UnwrapRef + readonly resolveRef: UnwrapRef + readonly resolveUnref: UnwrapRef + readonly setLocale: UnwrapRef + readonly shallowReactive: UnwrapRef + readonly shallowReadonly: UnwrapRef + readonly shallowRef: UnwrapRef + readonly syncRef: UnwrapRef + readonly syncRefs: UnwrapRef + readonly templateRef: UnwrapRef + readonly throttledRef: UnwrapRef + readonly throttledWatch: UnwrapRef + readonly toRaw: UnwrapRef + readonly toReactive: UnwrapRef + readonly toRef: UnwrapRef + readonly toRefs: UnwrapRef + readonly triggerRef: UnwrapRef + readonly tryOnBeforeMount: UnwrapRef + readonly tryOnBeforeUnmount: UnwrapRef + readonly tryOnMounted: UnwrapRef + readonly tryOnScopeDispose: UnwrapRef + readonly tryOnUnmounted: UnwrapRef + readonly unref: UnwrapRef + readonly unrefElement: UnwrapRef + readonly until: UnwrapRef + readonly useActiveElement: UnwrapRef + readonly useArrayEvery: UnwrapRef + readonly useArrayFilter: UnwrapRef + readonly useArrayFind: UnwrapRef + readonly useArrayFindIndex: UnwrapRef + readonly useArrayFindLast: UnwrapRef + readonly useArrayJoin: UnwrapRef + readonly useArrayMap: UnwrapRef + readonly useArrayReduce: UnwrapRef + readonly useArraySome: UnwrapRef + readonly useArrayUnique: UnwrapRef + readonly useAsyncQueue: UnwrapRef + readonly useAsyncState: UnwrapRef + readonly useAttrs: UnwrapRef + readonly useBase64: UnwrapRef + readonly useBattery: UnwrapRef + readonly useBluetooth: UnwrapRef + readonly useBreakpoints: UnwrapRef + readonly useBroadcastChannel: UnwrapRef + readonly useBrowserLocation: UnwrapRef + readonly useCached: UnwrapRef + readonly useClipboard: UnwrapRef + readonly useCloned: UnwrapRef + readonly useColorMode: UnwrapRef + readonly useColumnValue: UnwrapRef + readonly useConfirmDialog: UnwrapRef + readonly useCounter: UnwrapRef + readonly useCssModule: UnwrapRef + readonly useCssVar: UnwrapRef + readonly useCssVars: UnwrapRef + readonly useCurrentElement: UnwrapRef + readonly useCycleList: UnwrapRef + readonly useDark: UnwrapRef + readonly useDateFormat: UnwrapRef + readonly useDebounce: UnwrapRef + readonly useDebounceFn: UnwrapRef + readonly useDebouncedRefHistory: UnwrapRef + readonly useDeviceMotion: UnwrapRef + readonly useDeviceOrientation: UnwrapRef + readonly useDevicePixelRatio: UnwrapRef + readonly useDevicesList: UnwrapRef + readonly useDisplayMedia: UnwrapRef + readonly useDocumentVisibility: UnwrapRef + readonly useDraggable: UnwrapRef + readonly useDropZone: UnwrapRef + readonly useElementBounding: UnwrapRef + readonly useElementByPoint: UnwrapRef + readonly useElementHover: UnwrapRef + readonly useElementSize: UnwrapRef + readonly useElementVisibility: UnwrapRef + readonly useEventBus: UnwrapRef + readonly useEventListener: UnwrapRef + readonly useEventSource: UnwrapRef + readonly useEyeDropper: UnwrapRef + readonly useFavicon: UnwrapRef + readonly useFetch: UnwrapRef + readonly useFileDialog: UnwrapRef + readonly useFileSystemAccess: UnwrapRef + readonly useFilters: UnwrapRef + readonly useFocus: UnwrapRef + readonly useFocusWithin: UnwrapRef + readonly useForm: UnwrapRef + readonly useFps: UnwrapRef + readonly useFullscreen: UnwrapRef + readonly useGamepad: UnwrapRef + readonly useGeolocation: UnwrapRef + readonly useIdle: UnwrapRef + readonly useImage: UnwrapRef + readonly useInfiniteScroll: UnwrapRef + readonly useIntersectionObserver: UnwrapRef + readonly useInterval: UnwrapRef + readonly useIntervalFn: UnwrapRef + readonly useKeyModifier: UnwrapRef + readonly useLastChanged: UnwrapRef + readonly useLocalStorage: UnwrapRef + readonly useLocale: UnwrapRef + readonly useMagicKeys: UnwrapRef + readonly useManualRefHistory: UnwrapRef + readonly useMediaControls: UnwrapRef + readonly useMediaQuery: UnwrapRef + readonly useMemoize: UnwrapRef + readonly useMemory: UnwrapRef + readonly useMounted: UnwrapRef + readonly useMouse: UnwrapRef + readonly useMouseInElement: UnwrapRef + readonly useMousePressed: UnwrapRef + readonly useMutationObserver: UnwrapRef + readonly useNavigatorLanguage: UnwrapRef + readonly useNetwork: UnwrapRef + readonly useNow: UnwrapRef + readonly useObjectUrl: UnwrapRef + readonly useOffsetPagination: UnwrapRef + readonly useOnline: UnwrapRef + readonly usePageLeave: UnwrapRef + readonly useParallax: UnwrapRef + readonly usePermission: UnwrapRef + readonly usePointer: UnwrapRef + readonly usePointerLock: UnwrapRef + readonly usePointerSwipe: UnwrapRef + readonly usePreferredColorScheme: UnwrapRef + readonly usePreferredContrast: UnwrapRef + readonly usePreferredDark: UnwrapRef + readonly usePreferredLanguages: UnwrapRef + readonly usePreferredReducedMotion: UnwrapRef + readonly usePrevious: UnwrapRef + readonly useRafFn: UnwrapRef + readonly useRefHistory: UnwrapRef + readonly useRequestList: UnwrapRef + readonly useResizeObserver: UnwrapRef + readonly useRules: UnwrapRef + readonly useScreenOrientation: UnwrapRef + readonly useScreenSafeArea: UnwrapRef + readonly useScriptTag: UnwrapRef + readonly useScroll: UnwrapRef + readonly useScrollLock: UnwrapRef + readonly useSessionStorage: UnwrapRef + readonly useShare: UnwrapRef + readonly useSlots: UnwrapRef + readonly useSorted: UnwrapRef + readonly useSpeechRecognition: UnwrapRef + readonly useSpeechSynthesis: UnwrapRef + readonly useStepper: UnwrapRef + readonly useStorage: UnwrapRef + readonly useStorageAsync: UnwrapRef + readonly useStyleTag: UnwrapRef + readonly useSupported: UnwrapRef + readonly useSwipe: UnwrapRef + readonly useTable: UnwrapRef + readonly useTemplateRefsList: UnwrapRef + readonly useTextDirection: UnwrapRef + readonly useTextSelection: UnwrapRef + readonly useTextareaAutosize: UnwrapRef + readonly useThrottle: UnwrapRef + readonly useThrottleFn: UnwrapRef + readonly useThrottledRefHistory: UnwrapRef + readonly useTimeAgo: UnwrapRef + readonly useTimeout: UnwrapRef + readonly useTimeoutFn: UnwrapRef + readonly useTimeoutPoll: UnwrapRef + readonly useTimestamp: UnwrapRef + readonly useTitle: UnwrapRef + readonly useToNumber: UnwrapRef + readonly useToString: UnwrapRef + readonly useToggle: UnwrapRef + readonly useTransition: UnwrapRef + readonly useUrlSearchParams: UnwrapRef + readonly useUserMedia: UnwrapRef + readonly useVModel: UnwrapRef + readonly useVModels: UnwrapRef + readonly useVibrate: UnwrapRef + readonly useVirtualList: UnwrapRef + readonly useWakeLock: UnwrapRef + readonly useWebNotification: UnwrapRef + readonly useWebSocket: UnwrapRef + readonly useWebWorker: UnwrapRef + readonly useWebWorkerFn: UnwrapRef + readonly useWindowFocus: UnwrapRef + readonly useWindowScroll: UnwrapRef + readonly useWindowSize: UnwrapRef + readonly watch: UnwrapRef + readonly watchArray: UnwrapRef + readonly watchAtMost: UnwrapRef + readonly watchDebounced: UnwrapRef + readonly watchEffect: UnwrapRef + readonly watchIgnorable: UnwrapRef + readonly watchOnce: UnwrapRef + readonly watchPausable: UnwrapRef + readonly watchPostEffect: UnwrapRef + readonly watchSyncEffect: UnwrapRef + readonly watchThrottled: UnwrapRef + readonly watchTriggerable: UnwrapRef + readonly watchWithFilter: UnwrapRef + readonly whenever: UnwrapRef + } +} diff --git a/build/exports.js b/build/exports.js new file mode 100644 index 0000000..8057806 --- /dev/null +++ b/build/exports.js @@ -0,0 +1,41 @@ +const path = require('path') +const fs = require('fs') +const fg = require('fast-glob') + +const rootDir = path.resolve(__dirname, '..') +const entry = path.resolve(rootDir, 'src') +const entryFile = path.resolve(entry, 'index.ts') +const components = path.resolve('src', 'components') + +async function getComponents(path) { + const files = await fg(`${path}/**/*.(vue)`, { + cwd: rootDir, + ignore: [ + '_*', + 'dist', + 'node_modules', + ], + }) + + files.sort() + return files +} + +async function autoExport() { + const START = '// START_EXPORTS' + const END = '// END_EXPORTS' + const regex = new RegExp(`${START}[\\s\\S]*?${END}`, 'im') + + const exports = (await getComponents(components)).map((p) => { + const name = path.basename(p).split('.')[0] + const relativePath = path.relative(entry, p) + return `export { default as ${name} } from './${relativePath}'` + }).join('\n') + + const code = fs.readFileSync(entryFile, 'utf8') + const target = exports ? `${START}\n${exports}\n${END}` : `${START}${END}` + + fs.writeFileSync(entryFile, code.replace(regex, target)) +} + +autoExport() diff --git a/components.d.ts b/components.d.ts new file mode 100644 index 0000000..0a6435c --- /dev/null +++ b/components.d.ts @@ -0,0 +1,75 @@ +// generated by unplugin-vue-components +// We suggest you to commit this file into source control +// Read more: https://github.com/vuejs/core/pull/3399 +import '@vue/runtime-core' + +export {} + +declare module '@vue/runtime-core' { + export interface GlobalComponents { + Autocomplete: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/autocomplete/Autocomplete.vue')['default'] + Button: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/button/Button.vue')['default'] + Carousel: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/carousel/Carousel.vue')['default'] + CarouselItem: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/carousel/CarouselItem.vue')['default'] + Checkbox: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/checkbox/Checkbox.vue')['default'] + Collapse: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/collapse/Collapse.vue')['default'] + Datepicker: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/datepicker/Datepicker.vue')['default'] + DatepickerMonth: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/datepicker/DatepickerMonth.vue')['default'] + DatepickerTable: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/datepicker/DatepickerTable.vue')['default'] + DatepickerTableRow: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/datepicker/DatepickerTableRow.vue')['default'] + Datetimepicker: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/datetimepicker/Datetimepicker.vue')['default'] + Dropdown: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/dropdown/Dropdown.vue')['default'] + DropdownItem: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/dropdown/DropdownItem.vue')['default'] + FButton: typeof import('./src/common/integration/components/FButton.vue')['default'] + FDeleteConfirmationModal: typeof import('./src/tables/integration/components/FDeleteConfirmationModal.vue')['default'] + FForm: typeof import('./src/forms/integration/components/FForm.vue')['default'] + FFormBody: typeof import('./src/forms/integration/components/FFormBody.vue')['default'] + FFormFooter: typeof import('./src/forms/integration/components/FFormFooter.vue')['default'] + FFormHeader: typeof import('./src/forms/integration/components/FFormHeader.vue')['default'] + Field: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/field/Field.vue')['default'] + FieldBody: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/field/FieldBody.vue')['default'] + FModal: typeof import('./src/common/integration/components/FModal.vue')['default'] + FPagination: typeof import('./src/tables/integration/components/FPagination.vue')['default'] + FTable: typeof import('./src/tables/integration/components/FTable.vue')['default'] + FTableBody: typeof import('./src/tables/integration/components/FTableBody.vue')['default'] + 'FTableExample.vue': typeof import('./src/tables/integration/components/FTableExample.vue.vue')['default'] + FTableFooter: typeof import('./src/tables/integration/components/FTableFooter.vue')['default'] + FTableHeader: typeof import('./src/tables/integration/components/FTableHeader.vue')['default'] + FTableHeaderActions: typeof import('./src/tables/integration/components/FTableHeaderActions.vue')['default'] + FTableRowActions: typeof import('./src/tables/integration/components/FTableRowActions.vue')['default'] + FTableRowFilePreview: typeof import('./src/tables/integration/components/FTableRowFilePreview.vue')['default'] + Icon: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/icon/Icon.vue')['default'] + Input: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/input/Input.vue')['default'] + Inputitems: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/inputitems/Inputitems.vue')['default'] + Loading: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/loading/Loading.vue')['default'] + Menu: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/menu/Menu.vue')['default'] + MenuItem: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/menu/MenuItem.vue')['default'] + MenuList: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/menu/MenuList.vue')['default'] + Modal: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/modal/Modal.vue')['default'] + Notification: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/notification/Notification.vue')['default'] + NotificationNotice: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/notification/NotificationNotice.vue')['default'] + Pagination: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/pagination/Pagination.vue')['default'] + PaginationButton: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/pagination/PaginationButton.vue')['default'] + Radio: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/radio/Radio.vue')['default'] + Select: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/select/Select.vue')['default'] + Sidebar: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/sidebar/Sidebar.vue')['default'] + SimpleAutocomplete: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/autocomplete/tests/SimpleAutocomplete.vue')['default'] + SimpleCollapse: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/collapse/tests/SimpleCollapse.vue')['default'] + Skeleton: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/skeleton/Skeleton.vue')['default'] + Slider: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/slider/Slider.vue')['default'] + SliderThumb: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/slider/SliderThumb.vue')['default'] + SliderTick: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/slider/SliderTick.vue')['default'] + StepItem: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/steps/StepItem.vue')['default'] + Steps: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/steps/Steps.vue')['default'] + Switch: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/switch/Switch.vue')['default'] + TabItem: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/tabs/TabItem.vue')['default'] + Table: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/table/Table.vue')['default'] + TableColumn: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/table/TableColumn.vue')['default'] + TableMobileSort: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/table/TableMobileSort.vue')['default'] + TablePagination: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/table/TablePagination.vue')['default'] + Tabs: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/tabs/Tabs.vue')['default'] + Timepicker: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/timepicker/Timepicker.vue')['default'] + Tooltip: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/tooltip/Tooltip.vue')['default'] + Upload: typeof import('./node_modules/@oruga-ui/oruga-next/src/components/upload/Upload.vue')['default'] + } +} diff --git a/cypress.json b/cypress.json new file mode 100644 index 0000000..c5691a9 --- /dev/null +++ b/cypress.json @@ -0,0 +1,3 @@ +{ + "chromeWebSecurity": false +} diff --git a/cypress/fixtures/example.json b/cypress/fixtures/example.json new file mode 100644 index 0000000..02e4254 --- /dev/null +++ b/cypress/fixtures/example.json @@ -0,0 +1,5 @@ +{ + "name": "Using fixtures to represent data", + "email": "hello@cypress.io", + "body": "Fixtures are a great way to mock data for responses to routes" +} diff --git a/cypress/integration/basic.spec.ts b/cypress/integration/basic.spec.ts new file mode 100644 index 0000000..eac4511 --- /dev/null +++ b/cypress/integration/basic.spec.ts @@ -0,0 +1,9 @@ +context('Basic', () => { + beforeEach(() => { + cy.visit('/admin/login') + }) + + it('Should success test', () => { + expect(true).to.equal(true) + }) +}) diff --git a/cypress/plugins/index.js b/cypress/plugins/index.js new file mode 100644 index 0000000..b02ebb0 --- /dev/null +++ b/cypress/plugins/index.js @@ -0,0 +1,22 @@ +/// +// *********************************************************** +// This example plugins/index.js can be used to load plugins +// +// You can change the location of this file or turn off loading +// the plugins file with the 'pluginsFile' configuration option. +// +// You can read more here: +// https://on.cypress.io/plugins-guide +// *********************************************************** + +// This function is called when a project is opened or re-opened (e.g. due to +// the project's config changing) + +/** + * @type {Cypress.PluginConfig} + */ + +module.exports = (_on, _config) => { + // `on` is used to hook into various events Cypress emits + // `config` is the resolved Cypress config +} diff --git a/cypress/support/commands.js b/cypress/support/commands.js new file mode 100644 index 0000000..119ab03 --- /dev/null +++ b/cypress/support/commands.js @@ -0,0 +1,25 @@ +// *********************************************** +// This example commands.js shows you how to +// create various custom commands and overwrite +// existing commands. +// +// For more comprehensive examples of custom +// commands please read more here: +// https://on.cypress.io/custom-commands +// *********************************************** +// +// +// -- This is a parent command -- +// Cypress.Commands.add('login', (email, password) => { ... }) +// +// +// -- This is a child command -- +// Cypress.Commands.add('drag', { prevSubject: 'element'}, (subject, options) => { ... }) +// +// +// -- This is a dual command -- +// Cypress.Commands.add('dismiss', { prevSubject: 'optional'}, (subject, options) => { ... }) +// +// +// -- This will overwrite an existing command -- +// Cypress.Commands.overwrite('visit', (originalFn, url, options) => { ... }) diff --git a/cypress/support/index.js b/cypress/support/index.js new file mode 100644 index 0000000..d68db96 --- /dev/null +++ b/cypress/support/index.js @@ -0,0 +1,20 @@ +// *********************************************************** +// This example support/index.js is processed and +// loaded automatically before your test files. +// +// This is a great place to put global configuration and +// behavior that modifies Cypress. +// +// You can change the location of this file or turn off +// automatically serving support files with the +// 'supportFile' configuration option. +// +// You can read more here: +// https://on.cypress.io/configuration +// *********************************************************** + +// Import commands.js using ES2015 syntax: +import './commands' + +// Alternatively you can use CommonJS syntax: +// require('./commands') diff --git a/cypress/videos/basic.spec.ts.mp4 b/cypress/videos/basic.spec.ts.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..7231606f575235f75e549261afdc41496fe95d0f GIT binary patch literal 84483 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 literal 0 HcmV?d00001 diff --git a/demo/App.vue b/demo/App.vue new file mode 100644 index 0000000..14ce33d --- /dev/null +++ b/demo/App.vue @@ -0,0 +1,53 @@ + + + diff --git a/demo/main.ts b/demo/main.ts new file mode 100644 index 0000000..b272ee6 --- /dev/null +++ b/demo/main.ts @@ -0,0 +1,39 @@ +import { createApp } from 'vue' +import type { ZodAny } from 'zod' +import axios from 'axios' +// import '@oruga-ui/oruga-next/dist/oruga-full.css' +import Oruga from '@oruga-ui/oruga-next' +import FancyCrud from '../src/index' +import { defaultClasses, fields, orugaFlowbite, table, utils } from '../src/wrappers' +import App from './App.vue' + +import '@mdi/font/css/materialdesignicons.css' +import './styles/main.sass' + +axios.defaults.baseURL = 'http://localhost:9000/api/' + +const app = createApp(App) + +app.use(Oruga, orugaFlowbite) +app.use(FancyCrud, { + http: { + service: axios, + }, + fields, + utils, + table, + defaultClasses, + ruleOptions: { + processResult: (raw: { value: unknown; rule: ZodAny }) => { + const { value, rule } = raw + const result = rule.safeParse(value) + + if (result.success) + return result.success + + return result.error.issues[0].message + }, + }, +}) + +app.mount('#app') diff --git a/demo/modules/axios.ts b/demo/modules/axios.ts new file mode 100644 index 0000000..b1ef10e --- /dev/null +++ b/demo/modules/axios.ts @@ -0,0 +1,72 @@ +'use strict' + +import axios from 'axios' +export { AxiosResponse } from 'axios' + +const hostname = window.location.hostname +const protocol = window.location.protocol +const baseURL = import.meta.env.DEV ? `${protocol}//${hostname}:9000/api` : `${protocol}//${hostname}/server/api` + +const _axios = axios.create({ baseURL }) + +_axios.interceptors.request.use( + (config) => { + const token = localStorage.getItem('access_token') + if (token && config.headers) + config.headers.Authorization = `Bearer ${token}` + + return config + }, + + (error) => { + localStorage.clear() + return Promise.reject(error) + }, +) + +// Add a response interceptor +_axios.interceptors.response.use( + (response) => { + // Do something with response data + return response + }, + + (error) => { + const originalRequest = error.config + if (error.response && error.response.status === 401) { + // store.dispatch('auth/logout') + return Promise.reject(new Error('Credenciales expiradas')) + } + + if (error.response && error.response.status === 401 && !originalRequest._retry) { + originalRequest._retry = true + const refreshToken = localStorage.getItem('refresh_token') + + return axios.post('auth/token/', { + grant_type: 'refresh_token', + client_id: '', + client_secret: '', + refresh_token: refreshToken, + }).then((response) => { + // if (response.status === 201) { + localStorage.setItem('access_token', response.data.access) + if (axios.defaults.headers) + axios.defaults.headers.common.Authorization = `Bearer ${response.data.access}` + + return axios(originalRequest) + // } + }) + } + return Promise.reject(error) + }, +) + +export function setCredentials({ access_token, refresh_token }: { access_token: string; refresh_token: string }) { + localStorage.setItem('access_token', access_token) + localStorage.setItem('refresh_token', refresh_token) + + if (_axios.defaults && _axios.defaults.headers) + _axios.defaults.headers.common.Authorization = `Bearer ${access_token}` +} + +export default _axios diff --git a/demo/styles/main.sass b/demo/styles/main.sass new file mode 100755 index 0000000..366a82d --- /dev/null +++ b/demo/styles/main.sass @@ -0,0 +1,22 @@ +@tailwind base +@tailwind components +@tailwind utilities + +:root + --oruga-variant-danger: red + +.f-form > *::-webkit-scrollbar-track + -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3) + border-radius: 10px + background-color: #F5F5F560 + +.f-form > *::-webkit-scrollbar + width: 5px + background-color: rgba(255, 255, 255, 0) + border-radius: 10px + opacity: 0.1 + +.f-form > *::-webkit-scrollbar-thumb + border-radius: 10px + background-color: #555 + \ No newline at end of file diff --git a/demo/styles/mixins.sass b/demo/styles/mixins.sass new file mode 100644 index 0000000..601e454 --- /dev/null +++ b/demo/styles/mixins.sass @@ -0,0 +1,9 @@ +@mixin hover + background: #111111 + content: "" + display: block + height: 100% + width: 100% + position: absolute + top: 0 + left: 0 \ No newline at end of file diff --git a/demo/viewer/FCheckboxViewer.vue b/demo/viewer/FCheckboxViewer.vue new file mode 100644 index 0000000..1f0cedb --- /dev/null +++ b/demo/viewer/FCheckboxViewer.vue @@ -0,0 +1,39 @@ + + + diff --git a/demo/viewer/FColorViewer.vue b/demo/viewer/FColorViewer.vue new file mode 100644 index 0000000..b411c3e --- /dev/null +++ b/demo/viewer/FColorViewer.vue @@ -0,0 +1,22 @@ + + + diff --git a/demo/viewer/FDateViewer.vue b/demo/viewer/FDateViewer.vue new file mode 100644 index 0000000..7c3419e --- /dev/null +++ b/demo/viewer/FDateViewer.vue @@ -0,0 +1,28 @@ + + + diff --git a/demo/viewer/FFileViewer.vue b/demo/viewer/FFileViewer.vue new file mode 100644 index 0000000..d0b4e48 --- /dev/null +++ b/demo/viewer/FFileViewer.vue @@ -0,0 +1,24 @@ + + + diff --git a/demo/viewer/FFormViewer.vue b/demo/viewer/FFormViewer.vue new file mode 100644 index 0000000..67ff9f1 --- /dev/null +++ b/demo/viewer/FFormViewer.vue @@ -0,0 +1,29 @@ + + + diff --git a/demo/viewer/FImageViewer.vue b/demo/viewer/FImageViewer.vue new file mode 100644 index 0000000..b12dcbe --- /dev/null +++ b/demo/viewer/FImageViewer.vue @@ -0,0 +1,24 @@ + + + diff --git a/demo/viewer/FInputViewer.vue b/demo/viewer/FInputViewer.vue new file mode 100644 index 0000000..22a985b --- /dev/null +++ b/demo/viewer/FInputViewer.vue @@ -0,0 +1,54 @@ + + + + diff --git a/demo/viewer/FPasswordViewer.vue b/demo/viewer/FPasswordViewer.vue new file mode 100644 index 0000000..541613c --- /dev/null +++ b/demo/viewer/FPasswordViewer.vue @@ -0,0 +1,24 @@ + + + diff --git a/demo/viewer/FRadioViewer.vue b/demo/viewer/FRadioViewer.vue new file mode 100644 index 0000000..ca4ad15 --- /dev/null +++ b/demo/viewer/FRadioViewer.vue @@ -0,0 +1,31 @@ + + + diff --git a/demo/viewer/FSelectViewer.vue b/demo/viewer/FSelectViewer.vue new file mode 100644 index 0000000..1e9bcab --- /dev/null +++ b/demo/viewer/FSelectViewer.vue @@ -0,0 +1,51 @@ + + + diff --git a/demo/viewer/FSidebar.vue b/demo/viewer/FSidebar.vue new file mode 100644 index 0000000..e4eb484 --- /dev/null +++ b/demo/viewer/FSidebar.vue @@ -0,0 +1,30 @@ + + + diff --git a/demo/viewer/FSidebarItem.vue b/demo/viewer/FSidebarItem.vue new file mode 100644 index 0000000..b52b79d --- /dev/null +++ b/demo/viewer/FSidebarItem.vue @@ -0,0 +1,39 @@ + + + diff --git a/demo/viewer/FTableViewer.vue b/demo/viewer/FTableViewer.vue new file mode 100644 index 0000000..63e72e9 --- /dev/null +++ b/demo/viewer/FTableViewer.vue @@ -0,0 +1,175 @@ + + + diff --git a/demo/viewer/FTextareaViewer.vue b/demo/viewer/FTextareaViewer.vue new file mode 100644 index 0000000..605fb8e --- /dev/null +++ b/demo/viewer/FTextareaViewer.vue @@ -0,0 +1,24 @@ + + + diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100755 index 0000000..f548779 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,23 @@ +version: '3.7' + +services: + frontend: + build: . + environment: + - CHOKIDAR_USEPOLLING=true + volumes: + - .:/home/fancy-crud/fancy-crud + ports: + - '9090:9090' + tty: true + expose: + - 9090 + + server: + build: + context: ./server + volumes: + - ./server:/usr/share/backend + ports: + - '9000:9000' + tty: true diff --git a/index.html b/index.html new file mode 100644 index 0000000..4581dff --- /dev/null +++ b/index.html @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + +
+ + + diff --git a/package.json b/package.json new file mode 100644 index 0000000..29ffbee --- /dev/null +++ b/package.json @@ -0,0 +1,91 @@ +{ + "name": "@fancy-crud/vue", + "version": "0.0.0", + "private": false, + "author": { + "name": "Christopher A. Flores", + "url": "https://github.com/cafadev" + }, + "repository": { + "type": "git", + "url": "https://github.com/fancy-crud" + }, + "main": "./dist/vue.umd.js", + "module": "./dist/vue.umd.js", + "types": "./dist/src/index.d.ts", + "files": [ + "dist" + ], + "scripts": { + "dev": "vite --port 9090 --host 0.0.0.0", + "build": "node build/exports.js && vite build && tsc --emitDeclarationOnly", + "typecheck": "vue-tsc --noEmit", + "lint": "eslint .", + "lint:fix": "eslint . --fix" + }, + "peerDependencies": { + "@mdi/font": "^6.7.96", + "animate.css": "^4.1.1", + "axios": "^0.27.2", + "esno": "0.10.0", + "flowbite": "^1.4.7", + "flowbite-datepicker": "^1.2.1", + "lodash": "^4.17.21", + "moment": "^2.29.3", + "vue": "^3.2.19", + "xlsx": "^0.18.5" + }, + "dependencies": { + "@mdi/font": "^6.7.96", + "@vue/tsconfig": "^0.1.3", + "@vueuse/core": "^9.9.0", + "@fancy-crud/core": "^1.0.1", + "animate.css": "^4.1.1", + "axios": "^0.27.2", + "esno": "0.10.0", + "flowbite": "^1.6.2", + "flowbite-datepicker": "^1.2.2", + "joi": "^17.7.0", + "lodash": "^4.17.21", + "moment": "^2.29.3", + "vue": "^3.3.2", + "xlsx": "^0.18.5", + "yup": "^0.32.11", + "zod": "^3.20.2" + }, + "devDependencies": { + "@antfu/eslint-config": "^0.27.0", + "@oruga-ui/oruga-next": "^0.6.0", + "@types/lodash": "^4.14.182", + "@types/node": "^18.7.23", + "@vitejs/plugin-vue": "^3.1.0", + "@vue/test-utils": "^2.0.2", + "autoprefixer": "^10.4.13", + "cross-env": "^7.0.3", + "eslint": "^8.24.0", + "eslint-config-prettier": "^8.5.0", + "eslint-plugin-prettier": "^4.2.1", + "fast-glob": "^3.2.7", + "jsdom": "^20.0.0", + "postcss": "^8.4.21", + "prettier": "^2.7.1", + "sass": "^1.56.0", + "tailwindcss": "^3.2.4", + "taze": "^0.8.2", + "typescript": "^4.8.3", + "unplugin-auto-import": "^0.11.2", + "unplugin-vue-components": "^0.22.7", + "vite": "^3.1.3", + "vite-plugin-pages": "^0.26.0", + "vitest": "^0.23.4", + "vue-tsc": "^1.0.24" + }, + "publishConfig": { + "access": "public" + }, + "release": { + "branches": [ + "main" + ] + } +} diff --git a/postcss.config.js b/postcss.config.js new file mode 100644 index 0000000..33ad091 --- /dev/null +++ b/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..df36fcfb72584e00488330b560ebcf34a41c64c2 GIT binary patch literal 4286 zcmds*O-Phc6o&64GDVCEQHxsW(p4>LW*W<827=Unuo8sGpRux(DN@jWP-e29Wl%wj zY84_aq9}^Am9-cWTD5GGEo#+5Fi2wX_P*bo+xO!)p*7B;iKlbFd(U~_d(U?#hLj56 zPhFkj-|A6~Qk#@g^#D^U0XT1cu=c-vu1+SElX9NR;kzAUV(q0|dl0|%h|dI$%VICy zJnu2^L*Te9JrJMGh%-P79CL0}dq92RGU6gI{v2~|)p}sG5x0U*z<8U;Ij*hB9z?ei z@g6Xq-pDoPl=MANPiR7%172VA%r)kevtV-_5H*QJKFmd;8yA$98zCxBZYXTNZ#QFk2(TX0;Y2dt&WitL#$96|gJY=3xX zpCoi|YNzgO3R`f@IiEeSmKrPSf#h#Qd<$%Ej^RIeeYfsxhPMOG`S`Pz8q``=511zm zAm)MX5AV^5xIWPyEu7u>qYs?pn$I4nL9J!=K=SGlKLXpE<5x+2cDTXq?brj?n6sp= zphe9;_JHf40^9~}9i08r{XM$7HB!`{Ys~TK0kx<}ZQng`UPvH*11|q7&l9?@FQz;8 zx!=3<4seY*%=OlbCbcae?5^V_}*K>Uo6ZWV8mTyE^B=DKy7-sdLYkR5Z?paTgK-zyIkKjIcpyO z{+uIt&YSa_$QnN_@t~L014dyK(fOOo+W*MIxbA6Ndgr=Y!f#Tokqv}n<7-9qfHkc3 z=>a|HWqcX8fzQCT=dqVbogRq!-S>H%yA{1w#2Pn;=e>JiEj7Hl;zdt-2f+j2%DeVD zsW0Ab)ZK@0cIW%W7z}H{&~yGhn~D;aiP4=;m-HCo`BEI+Kd6 z={Xwx{TKxD#iCLfl2vQGDitKtN>z|-AdCN|$jTFDg0m3O`WLD4_s#$S literal 0 HcmV?d00001 diff --git a/setup.sh b/setup.sh new file mode 100755 index 0000000..6467571 --- /dev/null +++ b/setup.sh @@ -0,0 +1,5 @@ +#!/bin/bash +yarn install + +# Keep running the container +tail -f /dev/null \ No newline at end of file diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..f85e54b --- /dev/null +++ b/src/index.ts @@ -0,0 +1,72 @@ +import 'animate.css' +import type { App, Plugin } from 'vue' + +import type { HttpService, RuleOptions } from '@fancy-crud/core' +import { setDefaultClasses, setFields, setHttpInstance, setHttpPagination, setRuleOptions, setTable, setUtils } from '@fancy-crud/core' +import './styles/main.sass' + +interface Options { + http: { + service?: Omit + pagination?: HttpService['pagination'] + } + fields: Record + utils: Record + ruleOptions: RuleOptions + table: Record + defaultClasses: Record +} + +const components: Record = {} +// install function executed by Vue.use() +const install: Plugin = function installFancyCrud(app: App, options: Partial) { + const componentsList: [string, any][] = Object.entries(import.meta.glob('@/**/components/*.vue')) + componentsList.forEach(([key, value]) => { + if (key.includes('/viewer/')) + return + + const componentName = key.match(/[\w]+?(?=\.)/g) + + if (componentName) { + components[componentName[0]] = value.default + app.component(componentName[0], value.default) + } + }) + + if (options.http?.service) + setHttpInstance(options.http.service) + + if (options.http?.pagination) + setHttpPagination(options.http.pagination) + + // if (options.statusCodesHandlers) + // setStatusCodesHandlers(options.statusCodesHandlers) + + if (options.fields) + setFields(options.fields) + + if (options.utils) + setUtils(options.utils) + + if (options.table) + setTable(options.table) + + if (options.ruleOptions) + setRuleOptions(options.ruleOptions) + + if (options.defaultClasses) + setDefaultClasses(options.defaultClasses) +} + +// Create module definition for Vue.use() +export default install + +// To allow individual component use, export components +// each can be registered via Vue.component() +export * from './common/integration' +// export * from './filters' +export * from './forms/integration' +export * from './http/integration' +export * from './locales' +// export * from './config' +export * from './tables/integration' diff --git a/src/shims.d.ts b/src/shims.d.ts new file mode 100644 index 0000000..7ee537a --- /dev/null +++ b/src/shims.d.ts @@ -0,0 +1,31 @@ +// export default Dismiss + +declare interface Window { + // extend the window +} + +declare module '*.vue' { + import Vue from 'vue' + export default Vue +} + +declare class Modal { + constructor(targetEl: any, options?: any): void + show(): void + hide(): void +} + +declare module "flowbite-datepicker/Datepicker" { + export = Modal; +} + + +declare class Dismiss { + constructor(targetEl: HTMLElement, triggerElement?: HTMLElement | null, options?: any): void + hide(): void +} + +declare class Tooltip { + constructor(targetEl: any, triggerEl: any, options?: any): void + hide(): void +} \ No newline at end of file diff --git a/src/wrappers/common/Button.vue b/src/wrappers/common/Button.vue new file mode 100644 index 0000000..9eeca01 --- /dev/null +++ b/src/wrappers/common/Button.vue @@ -0,0 +1,27 @@ + diff --git a/src/wrappers/common/LoadingIcon.vue b/src/wrappers/common/LoadingIcon.vue new file mode 100644 index 0000000..c2a6ce3 --- /dev/null +++ b/src/wrappers/common/LoadingIcon.vue @@ -0,0 +1,21 @@ + + + + + diff --git a/src/wrappers/common/Modal.vue b/src/wrappers/common/Modal.vue new file mode 100644 index 0000000..c892e34 --- /dev/null +++ b/src/wrappers/common/Modal.vue @@ -0,0 +1,21 @@ + diff --git a/src/wrappers/common/index.ts b/src/wrappers/common/index.ts new file mode 100644 index 0000000..e0823d2 --- /dev/null +++ b/src/wrappers/common/index.ts @@ -0,0 +1,12 @@ +import type { Component } from 'vue' +import Button from './Button.vue' +import Modal from './Modal.vue' + +export const utils = ReturnObject({ + button: Button, + modal: Modal, +}) + +export function ReturnObject>(obj: T): Record { + return { ...obj } +} diff --git a/src/wrappers/config/defaults/classes.ts b/src/wrappers/config/defaults/classes.ts new file mode 100644 index 0000000..a56beb0 --- /dev/null +++ b/src/wrappers/config/defaults/classes.ts @@ -0,0 +1,63 @@ +export const defaultClasses: Record = { + text: { + wrapper: { class: 'col-span-12' }, + class: '', + }, + date: { + wrapper: { class: 'col-span-12' }, + class: '', + }, + password: { + wrapper: { class: 'col-span-12' }, + class: '', + }, + select: { + wrapper: { class: 'col-span-12' }, + class: 'w-full', + }, + checkbox: { + wrapper: { class: 'col-span-12' }, + class: '', + }, + radio: { + wrapper: { class: 'col-span-12' }, + class: '', + }, + textarea: { + wrapper: { class: 'col-span-12' }, + class: '', + }, + color: { + wrapper: { class: 'col-span-12' }, + class: '', + }, + file: { + wrapper: { class: 'col-span-12' }, + class: '', + }, + image: { + wrapper: { class: 'col-span-12' }, + class: '', + }, + mainButton: { + class: 'bg-primary-500 text-white rounded-lg hover:shadow-md', + }, + auxButton: { + class: 'border ml-4 rounded-lg bg-transparent text-primary-500 border-primary-500 px-8 hover:bg-primary-50', + }, +} + +export const orugaFlowbite = { + field: { + labelClass: 'block mb-2 text-sm font-medium text-gray-900 dark:text-white', + }, + input: { + inputClass: 'shadow-sm bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500 dark:shadow-sm-light', + }, + checkbox: { + checkClass: 'w-4 h-4 border border-gray-300 rounded bg-gray-50 focus:ring-3 focus:ring-blue-300 dark:bg-gray-700 dark:border-gray-600 dark:focus:ring-blue-600 dark:ring-offset-gray-800 dark:focus:ring-offset-gray-800', + }, + radio: { + checkClass: 'w-4 h-4 border-gray-300 focus:ring-2 focus:ring-blue-300 dark:focus:ring-blue-600 dark:focus:bg-blue-600 dark:bg-gray-700 dark:border-gray-600', + }, +} diff --git a/src/wrappers/config/defaults/index.ts b/src/wrappers/config/defaults/index.ts new file mode 100644 index 0000000..f50cdd7 --- /dev/null +++ b/src/wrappers/config/defaults/index.ts @@ -0,0 +1 @@ +export * from './classes' diff --git a/src/wrappers/config/index.ts b/src/wrappers/config/index.ts new file mode 100644 index 0000000..456e587 --- /dev/null +++ b/src/wrappers/config/index.ts @@ -0,0 +1 @@ +export * from './defaults' diff --git a/src/wrappers/fields/Checkbox.vue b/src/wrappers/fields/Checkbox.vue new file mode 100644 index 0000000..2dcc17d --- /dev/null +++ b/src/wrappers/fields/Checkbox.vue @@ -0,0 +1,47 @@ + + + diff --git a/src/wrappers/fields/Color.vue b/src/wrappers/fields/Color.vue new file mode 100644 index 0000000..f3eb375 --- /dev/null +++ b/src/wrappers/fields/Color.vue @@ -0,0 +1,28 @@ + + diff --git a/src/wrappers/fields/Datepicker.vue b/src/wrappers/fields/Datepicker.vue new file mode 100644 index 0000000..c0b4d0a --- /dev/null +++ b/src/wrappers/fields/Datepicker.vue @@ -0,0 +1,32 @@ + + diff --git a/src/wrappers/fields/File.vue b/src/wrappers/fields/File.vue new file mode 100644 index 0000000..54abc92 --- /dev/null +++ b/src/wrappers/fields/File.vue @@ -0,0 +1,44 @@ + + diff --git a/src/wrappers/fields/Password.vue b/src/wrappers/fields/Password.vue new file mode 100644 index 0000000..fec4f8b --- /dev/null +++ b/src/wrappers/fields/Password.vue @@ -0,0 +1,28 @@ + + diff --git a/src/wrappers/fields/Radio.vue b/src/wrappers/fields/Radio.vue new file mode 100644 index 0000000..c1b6bdf --- /dev/null +++ b/src/wrappers/fields/Radio.vue @@ -0,0 +1,46 @@ + + diff --git a/src/wrappers/fields/Select.vue b/src/wrappers/fields/Select.vue new file mode 100644 index 0000000..47911bb --- /dev/null +++ b/src/wrappers/fields/Select.vue @@ -0,0 +1,43 @@ + + diff --git a/src/wrappers/fields/Text.vue b/src/wrappers/fields/Text.vue new file mode 100644 index 0000000..ef140b4 --- /dev/null +++ b/src/wrappers/fields/Text.vue @@ -0,0 +1,29 @@ + + diff --git a/src/wrappers/fields/Textarea.vue b/src/wrappers/fields/Textarea.vue new file mode 100644 index 0000000..a2266c1 --- /dev/null +++ b/src/wrappers/fields/Textarea.vue @@ -0,0 +1,28 @@ + + diff --git a/src/wrappers/fields/index.ts b/src/wrappers/fields/index.ts new file mode 100644 index 0000000..4ea6c1a --- /dev/null +++ b/src/wrappers/fields/index.ts @@ -0,0 +1,20 @@ +import { ReturnObject } from '../common' +import Text from './Text.vue' +import Color from './Color.vue' +import Password from './Password.vue' +import Select from './Select.vue' +import Radio from './Radio.vue' +import Checkbox from './Checkbox.vue' +import File from './File.vue' +import Datepicker from './Datepicker.vue' + +export const fields = ReturnObject({ + text: Text, + password: Password, + color: Color, + select: Select, + radio: Radio, + checkbox: Checkbox, + file: File, + datepicker: Datepicker, +}) diff --git a/src/wrappers/index.ts b/src/wrappers/index.ts new file mode 100644 index 0000000..99c7e3c --- /dev/null +++ b/src/wrappers/index.ts @@ -0,0 +1,8 @@ +import { exportComponents } from '@/common/integration' + +export * from './common' +export * from './fields' +export * from './table' +export * from './config' + +export default exportComponents(import.meta.glob('./**/*.vue')) diff --git a/src/wrappers/table/TableBody.vue b/src/wrappers/table/TableBody.vue new file mode 100644 index 0000000..6a8422a --- /dev/null +++ b/src/wrappers/table/TableBody.vue @@ -0,0 +1,43 @@ + + + diff --git a/src/wrappers/table/index.ts b/src/wrappers/table/index.ts new file mode 100644 index 0000000..023cfb5 --- /dev/null +++ b/src/wrappers/table/index.ts @@ -0,0 +1,7 @@ +import { ReturnObject } from '../common' +import TableBody from './TableBody.vue' + +export const table = ReturnObject({ + body: TableBody, +}) + diff --git a/tailwind.config.js b/tailwind.config.js new file mode 100644 index 0000000..8921795 --- /dev/null +++ b/tailwind.config.js @@ -0,0 +1,20 @@ +const colors = require('tailwindcss/colors') + +module.exports = { + content: [ + './index.html', + './src/**/*.{vue,js,ts,jsx,tsx}', + './demo/**/*.{vue,js,ts,jsx,tsx}', + './node_modules/flowbite/**/*.js', + ], + theme: { + extend: {}, + colors: { + primary: colors.blue, + danger: colors.red, + }, + }, + plugins: [ + require('flowbite/plugin'), + ], +} diff --git a/test/__snapshots__/component.test.ts.snap b/test/__snapshots__/component.test.ts.snap new file mode 100644 index 0000000..f5a07c8 --- /dev/null +++ b/test/__snapshots__/component.test.ts.snap @@ -0,0 +1,3 @@ +// Vitest Snapshot v1 + +exports[`Counter.vue > should render 1`] = `"
10
"`; diff --git a/test/basic.test.ts b/test/basic.test.ts new file mode 100644 index 0000000..f97593f --- /dev/null +++ b/test/basic.test.ts @@ -0,0 +1,5 @@ +describe('tests', () => { + it('should works', () => { + expect(1 + 1).toEqual(2) + }) +}) diff --git a/test/component.test.ts b/test/component.test.ts new file mode 100644 index 0000000..e5d0377 --- /dev/null +++ b/test/component.test.ts @@ -0,0 +1,21 @@ +import { mount } from '@vue/test-utils' +import Counter from '../src/components/Counter.vue' + +describe('Counter.vue', () => { + it('should render', () => { + const wrapper = mount(Counter, { props: { initial: 10 } }) + expect(wrapper.text()).toContain('10') + expect(wrapper.html()).toMatchSnapshot() + }) + + it('should be interactive', async () => { + const wrapper = mount(Counter, { props: { initial: 0 } }) + expect(wrapper.text()).toContain('0') + + expect(wrapper.find('.inc').exists()).toBe(true) + + await wrapper.get('button').trigger('click') + + expect(wrapper.text()).toContain('1') + }) +}) diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..9174eb0 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,44 @@ +{ + "compilerOptions": { + "baseUrl": ".", + "module": "ESNext", + "target": "ESNext", + "lib": ["DOM", "ESNext"], + "declaration": true, + "strict": true, + "esModuleInterop": true, + "jsx": "preserve", + "skipLibCheck": true, + "moduleResolution": "node", + "resolveJsonModule": true, + "noUnusedLocals": true, + "strictNullChecks": true, + "forceConsistentCasingInFileNames": true, + "outDir": "./dist_types", + "typeRoots": [ + "vite/client", + "src/**/typings", + "./node_modules/zod/lib/external", + "./node_modules/@oruga-ui/oruga-next/src/components/**", + "./node_modules/@fancy-crud/core/dist/src/**" + ], + "types": [ + "vite/client" + ], + "paths": { + "@/*": ["src/*"], + "~/*": ["demo/*"] + } + }, + "exclude": [ + "dist", + "node_modules", + "cypress", + "**/**/*.test.ts", + "**/**/*.stories.tsx", + "**/**/*.md", + "**/dist", + "packages/.test", + "packages/_docs" + ] +} diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 0000000..dfc51a2 --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,56 @@ +import path from 'path' +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' +import Components from 'unplugin-vue-components/vite' +import AutoImport from 'unplugin-auto-import/vite' +import { dependencies, name } from './package.json' + +// https://vitejs.dev/config/ +export default defineConfig({ + resolve: { + alias: { + '@/': `${path.resolve(__dirname, 'src')}/`, + }, + }, + build: { + lib: { + name, + entry: path.resolve(__dirname, 'src/index.ts'), + }, + rollupOptions: { + external: [...Object.keys(dependencies)], + output: { + globals: { + vue: 'Vue', + }, + }, + }, + }, + plugins: [ + vue(), + AutoImport({ + imports: [ + 'vue', + 'vue/macros', + '@vueuse/core', + ], + dts: true, + dirs: [ + './src/**/components', + './src/**/composables', + './src/**/typings', + ], + vueTemplate: true, + }), + Components({ + dirs: [ + 'src/**/integration/components', + 'node_modules/@oruga-ui/oruga-next/src/components/**', + ], + + // allow auto import and register components used in markdown + include: [/\.vue$/, /\.vue\?vue/, /\.md$/], + dts: true, + }), + ], +}) diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..80c4e8c --- /dev/null +++ b/yarn.lock @@ -0,0 +1,5025 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@alloc/quick-lru@^5.2.0": + "integrity" "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==" + "resolved" "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz" + "version" "5.2.0" + +"@antfu/eslint-config-basic@0.27.0": + "integrity" "sha512-QgQVCiNiV9ZF7h09uBqTHctHDfVqJGIIpe0ZHCicLvUv233nAYeu4adAr53buhKrxDeoalozSs2ePiDiCyceTg==" + "resolved" "https://registry.npmjs.org/@antfu/eslint-config-basic/-/eslint-config-basic-0.27.0.tgz" + "version" "0.27.0" + dependencies: + "eslint-plugin-antfu" "0.27.0" + "eslint-plugin-eslint-comments" "^3.2.0" + "eslint-plugin-html" "^7.1.0" + "eslint-plugin-import" "^2.26.0" + "eslint-plugin-jsonc" "^2.4.0" + "eslint-plugin-markdown" "^3.0.0" + "eslint-plugin-n" "^15.2.5" + "eslint-plugin-promise" "^6.0.1" + "eslint-plugin-unicorn" "^43.0.2" + "eslint-plugin-yml" "^1.1.0" + "jsonc-eslint-parser" "^2.1.0" + "yaml-eslint-parser" "^1.1.0" + +"@antfu/eslint-config-ts@0.27.0": + "integrity" "sha512-h/ai9xe65lXtsUiSBRAvfcN47fqn5uGHcCA5c0LoBRX6fVFHk06BbPWMlSJRtqmc3uBTmv3gU8SrnWwrycnKag==" + "resolved" "https://registry.npmjs.org/@antfu/eslint-config-ts/-/eslint-config-ts-0.27.0.tgz" + "version" "0.27.0" + dependencies: + "@antfu/eslint-config-basic" "0.27.0" + "@typescript-eslint/eslint-plugin" "^5.36.1" + "@typescript-eslint/parser" "^5.36.1" + +"@antfu/eslint-config-vue@0.27.0": + "integrity" "sha512-Iw4GY4rXK1dPxzIl35bOwPE1vn6E5Wm8uljqdpQYQpTX1j6el7Yo30bpanCogWRcdPSMWKcS7GVlHjV47QB59w==" + "resolved" "https://registry.npmjs.org/@antfu/eslint-config-vue/-/eslint-config-vue-0.27.0.tgz" + "version" "0.27.0" + dependencies: + "@antfu/eslint-config-ts" "0.27.0" + "eslint-plugin-vue" "^9.4.0" + +"@antfu/eslint-config@^0.27.0": + "integrity" "sha512-xM1In6/ueNyKxxWO86jd7a9IdKby66lZVT/fE8k2RlP+X0xe5/DTTQfwLbVvnRpn77jCPIhEjNKVWxDO/DUEIg==" + "resolved" "https://registry.npmjs.org/@antfu/eslint-config/-/eslint-config-0.27.0.tgz" + "version" "0.27.0" + dependencies: + "@antfu/eslint-config-vue" "0.27.0" + "@typescript-eslint/eslint-plugin" "^5.36.1" + "@typescript-eslint/parser" "^5.36.1" + "eslint-plugin-eslint-comments" "^3.2.0" + "eslint-plugin-html" "^7.1.0" + "eslint-plugin-import" "^2.26.0" + "eslint-plugin-jsonc" "^2.4.0" + "eslint-plugin-n" "^15.2.5" + "eslint-plugin-promise" "^6.0.1" + "eslint-plugin-unicorn" "^43.0.2" + "eslint-plugin-vue" "^9.4.0" + "eslint-plugin-yml" "^1.1.0" + "jsonc-eslint-parser" "^2.1.0" + "yaml-eslint-parser" "^1.1.0" + +"@antfu/ni@^0.18.6": + "integrity" "sha512-0m++AudwQq+wWAz/Ax7g+sh/wFW51HHQ6BtPLsuTAsFIzWB/bv/0COwZE7BRS+u0nqMb6Ks6nlk6cY1TpPDwHg==" + "resolved" "https://registry.npmjs.org/@antfu/ni/-/ni-0.18.8.tgz" + "version" "0.18.8" + +"@antfu/utils@^0.7.0", "@antfu/utils@^0.7.2": + "integrity" "sha512-qe8Nmh9rYI/HIspLSTwtbMFPj6dISG6+dJnOguTlPNXtCvS2uezdxscVBb7/3DrmNbQK49TDqpkSQ1chbRGdpQ==" + "resolved" "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.4.tgz" + "version" "0.7.4" + +"@babel/code-frame@^7.0.0": + "integrity" "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==" + "resolved" "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz" + "version" "7.21.4" + dependencies: + "@babel/highlight" "^7.18.6" + +"@babel/helper-validator-identifier@^7.18.6": + "integrity" "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" + "resolved" "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz" + "version" "7.19.1" + +"@babel/highlight@^7.18.6": + "integrity" "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==" + "resolved" "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz" + "version" "7.18.6" + dependencies: + "@babel/helper-validator-identifier" "^7.18.6" + "chalk" "^2.0.0" + "js-tokens" "^4.0.0" + +"@babel/parser@^7.15.8", "@babel/parser@^7.20.15", "@babel/parser@^7.21.3": + "integrity" "sha512-VLLsx06XkEYqBtE5YGPwfSGwfrjnyPP5oiGty3S8pQLFDFLaS8VwWSIxkTXpcvr5zeYLE6+MBNl2npl/YnfofA==" + "resolved" "https://registry.npmjs.org/@babel/parser/-/parser-7.22.4.tgz" + "version" "7.22.4" + +"@babel/runtime@^7.15.4": + "integrity" "sha512-XsDuspWKLUsxwCp6r7EhsExHtYfbe5oAGQ19kqngTdCPUoPQzOPdUbD/pB9PJiwb2ptYKQDjSJT3R6dC+EPqfQ==" + "resolved" "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.3.tgz" + "version" "7.22.3" + dependencies: + "regenerator-runtime" "^0.13.11" + +"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.3.0": + "integrity" "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==" + "resolved" "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz" + "version" "4.4.0" + dependencies: + "eslint-visitor-keys" "^3.3.0" + +"@eslint-community/regexpp@^4.4.0": + "integrity" "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==" + "resolved" "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz" + "version" "4.5.1" + +"@eslint/eslintrc@^2.0.3": + "integrity" "sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==" + "resolved" "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.3.tgz" + "version" "2.0.3" + dependencies: + "ajv" "^6.12.4" + "debug" "^4.3.2" + "espree" "^9.5.2" + "globals" "^13.19.0" + "ignore" "^5.2.0" + "import-fresh" "^3.2.1" + "js-yaml" "^4.1.0" + "minimatch" "^3.1.2" + "strip-json-comments" "^3.1.1" + +"@eslint/js@8.42.0": + "integrity" "sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw==" + "resolved" "https://registry.npmjs.org/@eslint/js/-/js-8.42.0.tgz" + "version" "8.42.0" + +"@fancy-crud/core@file:../core": + "resolved" "file:../core" + dependencies: + "esno" "0.10.0" + "lodash" "^4.17.21" + +"@gar/promisify@^1.1.3": + "integrity" "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" + "resolved" "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz" + "version" "1.1.3" + +"@hapi/hoek@^9.0.0": + "integrity" "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" + "resolved" "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz" + "version" "9.3.0" + +"@hapi/topo@^5.0.0": + "integrity" "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==" + "resolved" "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz" + "version" "5.1.0" + dependencies: + "@hapi/hoek" "^9.0.0" + +"@humanwhocodes/config-array@^0.11.10": + "integrity" "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==" + "resolved" "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz" + "version" "0.11.10" + dependencies: + "@humanwhocodes/object-schema" "^1.2.1" + "debug" "^4.1.1" + "minimatch" "^3.0.5" + +"@humanwhocodes/module-importer@^1.0.1": + "integrity" "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==" + "resolved" "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz" + "version" "1.0.1" + +"@humanwhocodes/object-schema@^1.2.1": + "integrity" "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==" + "resolved" "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" + "version" "1.2.1" + +"@isaacs/cliui@^8.0.2": + "integrity" "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==" + "resolved" "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz" + "version" "8.0.2" + dependencies: + "string-width" "^5.1.2" + "string-width-cjs" "npm:string-width@^4.2.0" + "strip-ansi" "^7.0.1" + "strip-ansi-cjs" "npm:strip-ansi@^6.0.1" + "wrap-ansi" "^8.1.0" + "wrap-ansi-cjs" "npm:wrap-ansi@^7.0.0" + +"@jridgewell/gen-mapping@^0.3.2": + "integrity" "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==" + "resolved" "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz" + "version" "0.3.3" + dependencies: + "@jridgewell/set-array" "^1.0.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" + +"@jridgewell/resolve-uri@3.1.0": + "integrity" "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" + "resolved" "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz" + "version" "3.1.0" + +"@jridgewell/set-array@^1.0.1": + "integrity" "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" + "resolved" "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz" + "version" "1.1.2" + +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.13": + "integrity" "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" + "resolved" "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz" + "version" "1.4.15" + +"@jridgewell/sourcemap-codec@1.4.14": + "integrity" "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + "resolved" "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz" + "version" "1.4.14" + +"@jridgewell/trace-mapping@^0.3.9": + "integrity" "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==" + "resolved" "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz" + "version" "0.3.18" + dependencies: + "@jridgewell/resolve-uri" "3.1.0" + "@jridgewell/sourcemap-codec" "1.4.14" + +"@mdi/font@^6.7.96": + "integrity" "sha512-z3QVZStyHVwkDsFR7A7F2PIvZJPWgdSFw4BEEy2Gc9HUN5NfK9mGbjgaYClRcbMWiYEV45srmiYtczmBtCqR8w==" + "resolved" "https://registry.npmjs.org/@mdi/font/-/font-6.9.96.tgz" + "version" "6.9.96" + +"@nodelib/fs.scandir@2.1.5": + "integrity" "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==" + "resolved" "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" + "version" "2.1.5" + dependencies: + "@nodelib/fs.stat" "2.0.5" + "run-parallel" "^1.1.9" + +"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5": + "integrity" "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" + "resolved" "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" + "version" "2.0.5" + +"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": + "integrity" "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==" + "resolved" "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" + "version" "1.2.8" + dependencies: + "@nodelib/fs.scandir" "2.1.5" + "fastq" "^1.6.0" + +"@npmcli/config@^6.1.0": + "integrity" "sha512-lPAPNVUvlv6x0uwGiKzuWVUy1WSBaK5P0t9PoQQVIAbc1RaJLkaNxyUQZOrFJ7Y/ShzLw5skzruThhD9Qcju/A==" + "resolved" "https://registry.npmjs.org/@npmcli/config/-/config-6.2.0.tgz" + "version" "6.2.0" + dependencies: + "@npmcli/map-workspaces" "^3.0.2" + "ini" "^4.1.0" + "nopt" "^7.0.0" + "proc-log" "^3.0.0" + "read-package-json-fast" "^3.0.2" + "semver" "^7.3.5" + "walk-up-path" "^3.0.1" + +"@npmcli/fs@^2.1.0": + "integrity" "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==" + "resolved" "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz" + "version" "2.1.2" + dependencies: + "@gar/promisify" "^1.1.3" + "semver" "^7.3.5" + +"@npmcli/git@^3.0.0": + "integrity" "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==" + "resolved" "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "@npmcli/promise-spawn" "^3.0.0" + "lru-cache" "^7.4.4" + "mkdirp" "^1.0.4" + "npm-pick-manifest" "^7.0.0" + "proc-log" "^2.0.0" + "promise-inflight" "^1.0.1" + "promise-retry" "^2.0.1" + "semver" "^7.3.5" + "which" "^2.0.2" + +"@npmcli/installed-package-contents@^1.0.7": + "integrity" "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==" + "resolved" "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz" + "version" "1.0.7" + dependencies: + "npm-bundled" "^1.1.1" + "npm-normalize-package-bin" "^1.0.1" + +"@npmcli/map-workspaces@^3.0.2": + "integrity" "sha512-Z0TbvXkRbacjFFLpVpV0e2mheCh+WzQpcqL+4xp49uNJOxOnIAPZyXtUxZ5Qn3QBTGKA11Exjd9a5411rBrhDg==" + "resolved" "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.4.tgz" + "version" "3.0.4" + dependencies: + "@npmcli/name-from-folder" "^2.0.0" + "glob" "^10.2.2" + "minimatch" "^9.0.0" + "read-package-json-fast" "^3.0.0" + +"@npmcli/move-file@^2.0.0": + "integrity" "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==" + "resolved" "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "mkdirp" "^1.0.4" + "rimraf" "^3.0.2" + +"@npmcli/name-from-folder@^2.0.0": + "integrity" "sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==" + "resolved" "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz" + "version" "2.0.0" + +"@npmcli/node-gyp@^2.0.0": + "integrity" "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==" + "resolved" "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz" + "version" "2.0.0" + +"@npmcli/promise-spawn@^3.0.0": + "integrity" "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==" + "resolved" "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "infer-owner" "^1.0.4" + +"@npmcli/run-script@^4.1.0": + "integrity" "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==" + "resolved" "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz" + "version" "4.2.1" + dependencies: + "@npmcli/node-gyp" "^2.0.0" + "@npmcli/promise-spawn" "^3.0.0" + "node-gyp" "^9.0.0" + "read-package-json-fast" "^2.0.3" + "which" "^2.0.2" + +"@oruga-ui/oruga-next@^0.6.0": + "integrity" "sha512-M1Y5PgCWBUDmQGH74cgzrp3vKaRFdHVtGNr0DwejeJGScB7Q6jodW4xgCz6K4hajLgHW6zxz/3ukpC4ZczlfaQ==" + "resolved" "https://registry.npmjs.org/@oruga-ui/oruga-next/-/oruga-next-0.6.0.tgz" + "version" "0.6.0" + +"@pkgjs/parseargs@^0.11.0": + "integrity" "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==" + "resolved" "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz" + "version" "0.11.0" + +"@popperjs/core@^2.9.3": + "integrity" "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==" + "resolved" "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz" + "version" "2.11.8" + +"@rollup/pluginutils@^5.0.2": + "integrity" "sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==" + "resolved" "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.2.tgz" + "version" "5.0.2" + dependencies: + "@types/estree" "^1.0.0" + "estree-walker" "^2.0.2" + "picomatch" "^2.3.1" + +"@sideway/address@^4.1.3": + "integrity" "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==" + "resolved" "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz" + "version" "4.1.4" + dependencies: + "@hapi/hoek" "^9.0.0" + +"@sideway/formula@^3.0.1": + "integrity" "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==" + "resolved" "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz" + "version" "3.0.1" + +"@sideway/pinpoint@^2.0.0": + "integrity" "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" + "resolved" "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz" + "version" "2.0.0" + +"@tootallnate/once@2": + "integrity" "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==" + "resolved" "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz" + "version" "2.0.0" + +"@types/chai-subset@^1.3.3": + "integrity" "sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==" + "resolved" "https://registry.npmjs.org/@types/chai-subset/-/chai-subset-1.3.3.tgz" + "version" "1.3.3" + dependencies: + "@types/chai" "*" + +"@types/chai@*", "@types/chai@^4.3.3": + "integrity" "sha512-mEo1sAde+UCE6b2hxn332f1g1E8WfYRu6p5SvTKr2ZKC1f7gFJXk4h5PyGP9Dt6gCaG8y8XhwnXWC6Iy2cmBng==" + "resolved" "https://registry.npmjs.org/@types/chai/-/chai-4.3.5.tgz" + "version" "4.3.5" + +"@types/debug@^4.1.7": + "integrity" "sha512-/vPO1EPOs306Cvhwv7KfVfYvOJqA/S/AXjaHQiJboCZzcNDb+TIJFN9/2C9DZ//ijSKWioNyUxD792QmDJ+HKQ==" + "resolved" "https://registry.npmjs.org/@types/debug/-/debug-4.1.8.tgz" + "version" "4.1.8" + dependencies: + "@types/ms" "*" + +"@types/estree@^1.0.0": + "integrity" "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==" + "resolved" "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz" + "version" "1.0.1" + +"@types/json-schema@^7.0.9": + "integrity" "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==" + "resolved" "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz" + "version" "7.0.12" + +"@types/json5@^0.0.29": + "integrity" "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==" + "resolved" "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz" + "version" "0.0.29" + +"@types/lodash@^4.14.175", "@types/lodash@^4.14.182": + "integrity" "sha512-Hwx9EUgdwf2GLarOjQp5ZH8ZmblzcbTBC2wtQWNKARBSxM9ezRIAUpeDTgoQRAFB0+8CNWXVA9+MaSOzOF3nPg==" + "resolved" "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.195.tgz" + "version" "4.14.195" + +"@types/mdast@^3.0.0": + "integrity" "sha512-Y/uImid8aAwrEA24/1tcRZwpxX3pIFTSilcNDKSPn+Y2iDywSEachzRuvgAYYLR3wpGXAsMbv5lvKLDZLeYPAw==" + "resolved" "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.11.tgz" + "version" "3.0.11" + dependencies: + "@types/unist" "*" + +"@types/ms@*": + "integrity" "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==" + "resolved" "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz" + "version" "0.7.31" + +"@types/node@*", "@types/node@^18.7.23", "@types/node@>= 14": + "integrity" "sha512-NpaM49IGQQAUlBhHMF82QH80J08os4ZmyF9MkpCzWAGuOHqE4gTEbhzd7L3l5LmWuZ6E0OiC1FweQ4tsiW35+g==" + "resolved" "https://registry.npmjs.org/@types/node/-/node-18.16.16.tgz" + "version" "18.16.16" + +"@types/normalize-package-data@^2.4.0": + "integrity" "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" + "resolved" "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz" + "version" "2.4.1" + +"@types/semver@^7.3.12": + "integrity" "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==" + "resolved" "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz" + "version" "7.5.0" + +"@types/unist@*", "@types/unist@^2.0.2": + "integrity" "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" + "resolved" "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz" + "version" "2.0.6" + +"@types/web-bluetooth@^0.0.16": + "integrity" "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==" + "resolved" "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz" + "version" "0.0.16" + +"@typescript-eslint/eslint-plugin@^5.36.1": + "integrity" "sha512-4uQIBq1ffXd2YvF7MAvehWKW3zVv/w+mSfRAu+8cKbfj3nwzyqJLNcZJpQ/WZ1HLbJDiowwmQ6NO+63nCA+fqA==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.9.tgz" + "version" "5.59.9" + dependencies: + "@eslint-community/regexpp" "^4.4.0" + "@typescript-eslint/scope-manager" "5.59.9" + "@typescript-eslint/type-utils" "5.59.9" + "@typescript-eslint/utils" "5.59.9" + "debug" "^4.3.4" + "grapheme-splitter" "^1.0.4" + "ignore" "^5.2.0" + "natural-compare-lite" "^1.4.0" + "semver" "^7.3.7" + "tsutils" "^3.21.0" + +"@typescript-eslint/parser@^5.0.0", "@typescript-eslint/parser@^5.36.1": + "integrity" "sha512-FsPkRvBtcLQ/eVK1ivDiNYBjn3TGJdXy2fhXX+rc7czWl4ARwnpArwbihSOHI2Peg9WbtGHrbThfBUkZZGTtvQ==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.9.tgz" + "version" "5.59.9" + dependencies: + "@typescript-eslint/scope-manager" "5.59.9" + "@typescript-eslint/types" "5.59.9" + "@typescript-eslint/typescript-estree" "5.59.9" + "debug" "^4.3.4" + +"@typescript-eslint/scope-manager@5.59.9": + "integrity" "sha512-8RA+E+w78z1+2dzvK/tGZ2cpGigBZ58VMEHDZtpE1v+LLjzrYGc8mMaTONSxKyEkz3IuXFM0IqYiGHlCsmlZxQ==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.9.tgz" + "version" "5.59.9" + dependencies: + "@typescript-eslint/types" "5.59.9" + "@typescript-eslint/visitor-keys" "5.59.9" + +"@typescript-eslint/type-utils@5.59.9": + "integrity" "sha512-ksEsT0/mEHg9e3qZu98AlSrONAQtrSTljL3ow9CGej8eRo7pe+yaC/mvTjptp23Xo/xIf2mLZKC6KPv4Sji26Q==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.9.tgz" + "version" "5.59.9" + dependencies: + "@typescript-eslint/typescript-estree" "5.59.9" + "@typescript-eslint/utils" "5.59.9" + "debug" "^4.3.4" + "tsutils" "^3.21.0" + +"@typescript-eslint/types@5.59.9": + "integrity" "sha512-uW8H5NRgTVneSVTfiCVffBb8AbwWSKg7qcA4Ot3JI3MPCJGsB4Db4BhvAODIIYE5mNj7Q+VJkK7JxmRhk2Lyjw==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.9.tgz" + "version" "5.59.9" + +"@typescript-eslint/typescript-estree@5.59.9": + "integrity" "sha512-pmM0/VQ7kUhd1QyIxgS+aRvMgw+ZljB3eDb+jYyp6d2bC0mQWLzUDF+DLwCTkQ3tlNyVsvZRXjFyV0LkU/aXjA==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.9.tgz" + "version" "5.59.9" + dependencies: + "@typescript-eslint/types" "5.59.9" + "@typescript-eslint/visitor-keys" "5.59.9" + "debug" "^4.3.4" + "globby" "^11.1.0" + "is-glob" "^4.0.3" + "semver" "^7.3.7" + "tsutils" "^3.21.0" + +"@typescript-eslint/utils@^5.36.1", "@typescript-eslint/utils@5.59.9": + "integrity" "sha512-1PuMYsju/38I5Ggblaeb98TOoUvjhRvLpLa1DoTOFaLWqaXl/1iQ1eGurTXgBY58NUdtfTXKP5xBq7q9NDaLKg==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.9.tgz" + "version" "5.59.9" + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@types/json-schema" "^7.0.9" + "@types/semver" "^7.3.12" + "@typescript-eslint/scope-manager" "5.59.9" + "@typescript-eslint/types" "5.59.9" + "@typescript-eslint/typescript-estree" "5.59.9" + "eslint-scope" "^5.1.1" + "semver" "^7.3.7" + +"@typescript-eslint/visitor-keys@5.59.9": + "integrity" "sha512-bT7s0td97KMaLwpEBckbzj/YohnvXtqbe2XgqNvTl6RJVakY5mvENOTPvw5u66nljfZxthESpDozs86U+oLY8Q==" + "resolved" "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.9.tgz" + "version" "5.59.9" + dependencies: + "@typescript-eslint/types" "5.59.9" + "eslint-visitor-keys" "^3.3.0" + +"@vitejs/plugin-vue@^3.1.0": + "integrity" "sha512-E0tnaL4fr+qkdCNxJ+Xd0yM31UwMkQje76fsDVBBUCoGOUPexu2VDUYHL8P4CwV+zMvWw6nlRw19OnRKmYAJpw==" + "resolved" "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-3.2.0.tgz" + "version" "3.2.0" + +"@volar/language-core@1.4.1": + "integrity" "sha512-EIY+Swv+TjsWpxOxujjMf1ZXqOjg9MT2VMXZ+1dKva0wD8W0L6EtptFFcCJdBbcKmGMFkr57Qzz9VNMWhs3jXQ==" + "resolved" "https://registry.npmjs.org/@volar/language-core/-/language-core-1.4.1.tgz" + "version" "1.4.1" + dependencies: + "@volar/source-map" "1.4.1" + +"@volar/source-map@1.4.1": + "integrity" "sha512-bZ46ad72dsbzuOWPUtJjBXkzSQzzSejuR3CT81+GvTEI2E994D8JPXzM3tl98zyCNnjgs4OkRyliImL1dvJ5BA==" + "resolved" "https://registry.npmjs.org/@volar/source-map/-/source-map-1.4.1.tgz" + "version" "1.4.1" + dependencies: + "muggle-string" "^0.2.2" + +"@volar/typescript@1.4.1-patch.2": + "integrity" "sha512-lPFYaGt8OdMEzNGJJChF40uYqMO4Z/7Q9fHPQC/NRVtht43KotSXLrkPandVVMf9aPbiJ059eAT+fwHGX16k4w==" + "resolved" "https://registry.npmjs.org/@volar/typescript/-/typescript-1.4.1-patch.2.tgz" + "version" "1.4.1-patch.2" + dependencies: + "@volar/language-core" "1.4.1" + +"@volar/vue-language-core@1.6.5": + "integrity" "sha512-IF2b6hW4QAxfsLd5mePmLgtkXzNi+YnH6ltCd80gb7+cbdpFMjM1I+w+nSg2kfBTyfu+W8useCZvW89kPTBpzg==" + "resolved" "https://registry.npmjs.org/@volar/vue-language-core/-/vue-language-core-1.6.5.tgz" + "version" "1.6.5" + dependencies: + "@volar/language-core" "1.4.1" + "@volar/source-map" "1.4.1" + "@vue/compiler-dom" "^3.3.0" + "@vue/compiler-sfc" "^3.3.0" + "@vue/reactivity" "^3.3.0" + "@vue/shared" "^3.3.0" + "minimatch" "^9.0.0" + "muggle-string" "^0.2.2" + "vue-template-compiler" "^2.7.14" + +"@volar/vue-typescript@1.6.5": + "integrity" "sha512-er9rVClS4PHztMUmtPMDTl+7c7JyrxweKSAEe/o/Noeq2bQx6v3/jZHVHBe8ZNUti5ubJL/+Tg8L3bzmlalV8A==" + "resolved" "https://registry.npmjs.org/@volar/vue-typescript/-/vue-typescript-1.6.5.tgz" + "version" "1.6.5" + dependencies: + "@volar/typescript" "1.4.1-patch.2" + "@volar/vue-language-core" "1.6.5" + +"@vue/compiler-core@3.3.4": + "integrity" "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==" + "resolved" "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz" + "version" "3.3.4" + dependencies: + "@babel/parser" "^7.21.3" + "@vue/shared" "3.3.4" + "estree-walker" "^2.0.2" + "source-map-js" "^1.0.2" + +"@vue/compiler-dom@^3.0.1", "@vue/compiler-dom@^3.3.0", "@vue/compiler-dom@3.3.4": + "integrity" "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==" + "resolved" "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz" + "version" "3.3.4" + dependencies: + "@vue/compiler-core" "3.3.4" + "@vue/shared" "3.3.4" + +"@vue/compiler-sfc@^2.7.0 || ^3.0.0", "@vue/compiler-sfc@^3.3.0", "@vue/compiler-sfc@3.3.4": + "integrity" "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==" + "resolved" "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz" + "version" "3.3.4" + dependencies: + "@babel/parser" "^7.20.15" + "@vue/compiler-core" "3.3.4" + "@vue/compiler-dom" "3.3.4" + "@vue/compiler-ssr" "3.3.4" + "@vue/reactivity-transform" "3.3.4" + "@vue/shared" "3.3.4" + "estree-walker" "^2.0.2" + "magic-string" "^0.30.0" + "postcss" "^8.1.10" + "source-map-js" "^1.0.2" + +"@vue/compiler-ssr@3.3.4": + "integrity" "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==" + "resolved" "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz" + "version" "3.3.4" + dependencies: + "@vue/compiler-dom" "3.3.4" + "@vue/shared" "3.3.4" + +"@vue/reactivity-transform@3.3.4": + "integrity" "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==" + "resolved" "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz" + "version" "3.3.4" + dependencies: + "@babel/parser" "^7.20.15" + "@vue/compiler-core" "3.3.4" + "@vue/shared" "3.3.4" + "estree-walker" "^2.0.2" + "magic-string" "^0.30.0" + +"@vue/reactivity@^3.3.0", "@vue/reactivity@3.3.4": + "integrity" "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==" + "resolved" "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.4.tgz" + "version" "3.3.4" + dependencies: + "@vue/shared" "3.3.4" + +"@vue/runtime-core@3.3.4": + "integrity" "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==" + "resolved" "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.4.tgz" + "version" "3.3.4" + dependencies: + "@vue/reactivity" "3.3.4" + "@vue/shared" "3.3.4" + +"@vue/runtime-dom@3.3.4": + "integrity" "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==" + "resolved" "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz" + "version" "3.3.4" + dependencies: + "@vue/runtime-core" "3.3.4" + "@vue/shared" "3.3.4" + "csstype" "^3.1.1" + +"@vue/server-renderer@^3.0.1", "@vue/server-renderer@3.3.4": + "integrity" "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==" + "resolved" "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.4.tgz" + "version" "3.3.4" + dependencies: + "@vue/compiler-ssr" "3.3.4" + "@vue/shared" "3.3.4" + +"@vue/shared@^3.3.0", "@vue/shared@3.3.4": + "integrity" "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==" + "resolved" "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz" + "version" "3.3.4" + +"@vue/test-utils@^2.0.2": + "integrity" "sha512-hJnVaYhbrIm0yBS0+e1Y0Sj85cMyAi+PAbK4JHqMRUZ6S622Goa+G7QzkRSyvCteG8wop7tipuEbHoZo26wsSA==" + "resolved" "https://registry.npmjs.org/@vue/test-utils/-/test-utils-2.3.2.tgz" + "version" "2.3.2" + dependencies: + "js-beautify" "1.14.6" + optionalDependencies: + "@vue/compiler-dom" "^3.0.1" + "@vue/server-renderer" "^3.0.1" + +"@vue/tsconfig@^0.1.3": + "integrity" "sha512-kQVsh8yyWPvHpb8gIc9l/HIDiiVUy1amynLNpCy8p+FoCiZXCo6fQos5/097MmnNZc9AtseDsCrfkhqCrJ8Olg==" + "resolved" "https://registry.npmjs.org/@vue/tsconfig/-/tsconfig-0.1.3.tgz" + "version" "0.1.3" + +"@vueuse/core@*", "@vueuse/core@^9.9.0": + "integrity" "sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==" + "resolved" "https://registry.npmjs.org/@vueuse/core/-/core-9.13.0.tgz" + "version" "9.13.0" + dependencies: + "@types/web-bluetooth" "^0.0.16" + "@vueuse/metadata" "9.13.0" + "@vueuse/shared" "9.13.0" + "vue-demi" "*" + +"@vueuse/metadata@9.13.0": + "integrity" "sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==" + "resolved" "https://registry.npmjs.org/@vueuse/metadata/-/metadata-9.13.0.tgz" + "version" "9.13.0" + +"@vueuse/shared@9.13.0": + "integrity" "sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==" + "resolved" "https://registry.npmjs.org/@vueuse/shared/-/shared-9.13.0.tgz" + "version" "9.13.0" + dependencies: + "vue-demi" "*" + +"abab@^2.0.6": + "integrity" "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" + "resolved" "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz" + "version" "2.0.6" + +"abbrev@^1.0.0": + "integrity" "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + "resolved" "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz" + "version" "1.1.1" + +"abbrev@^2.0.0": + "integrity" "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==" + "resolved" "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz" + "version" "2.0.0" + +"acorn-globals@^7.0.0": + "integrity" "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==" + "resolved" "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz" + "version" "7.0.1" + dependencies: + "acorn" "^8.1.0" + "acorn-walk" "^8.0.2" + +"acorn-jsx@^5.3.2": + "integrity" "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==" + "resolved" "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" + "version" "5.3.2" + +"acorn-walk@^8.0.2": + "integrity" "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==" + "resolved" "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz" + "version" "8.2.0" + +"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", "acorn@^8.1.0", "acorn@^8.5.0", "acorn@^8.8.0", "acorn@^8.8.1", "acorn@^8.8.2": + "integrity" "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==" + "resolved" "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz" + "version" "8.8.2" + +"adler-32@~1.3.0": + "integrity" "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==" + "resolved" "https://registry.npmjs.org/adler-32/-/adler-32-1.3.1.tgz" + "version" "1.3.1" + +"agent-base@^6.0.2", "agent-base@6": + "integrity" "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==" + "resolved" "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz" + "version" "6.0.2" + dependencies: + "debug" "4" + +"agentkeepalive@^4.2.1": + "integrity" "sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==" + "resolved" "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.3.0.tgz" + "version" "4.3.0" + dependencies: + "debug" "^4.1.0" + "depd" "^2.0.0" + "humanize-ms" "^1.2.1" + +"aggregate-error@^3.0.0": + "integrity" "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==" + "resolved" "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "clean-stack" "^2.0.0" + "indent-string" "^4.0.0" + +"ajv@^6.10.0", "ajv@^6.12.4": + "integrity" "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==" + "resolved" "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" + "version" "6.12.6" + dependencies: + "fast-deep-equal" "^3.1.1" + "fast-json-stable-stringify" "^2.0.0" + "json-schema-traverse" "^0.4.1" + "uri-js" "^4.2.2" + +"animate.css@^4.1.1": + "integrity" "sha512-+mRmCTv6SbCmtYJCN4faJMNFVNN5EuCTTprDTAo7YzIGji2KADmakjVA3+8mVDkZ2Bf09vayB35lSQIex2+QaQ==" + "resolved" "https://registry.npmjs.org/animate.css/-/animate.css-4.1.1.tgz" + "version" "4.1.1" + +"ansi-regex@^5.0.1": + "integrity" "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" + "version" "5.0.1" + +"ansi-regex@^6.0.1": + "integrity" "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" + "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz" + "version" "6.0.1" + +"ansi-styles@^3.2.1": + "integrity" "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==" + "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" + "version" "3.2.1" + dependencies: + "color-convert" "^1.9.0" + +"ansi-styles@^4.0.0", "ansi-styles@^4.1.0": + "integrity" "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==" + "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" + "version" "4.3.0" + dependencies: + "color-convert" "^2.0.1" + +"ansi-styles@^6.1.0": + "integrity" "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==" + "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz" + "version" "6.2.1" + +"any-promise@^1.0.0": + "integrity" "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" + "resolved" "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz" + "version" "1.3.0" + +"anymatch@~3.1.2": + "integrity" "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==" + "resolved" "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz" + "version" "3.1.3" + dependencies: + "normalize-path" "^3.0.0" + "picomatch" "^2.0.4" + +"aproba@^1.0.3 || ^2.0.0": + "integrity" "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" + "resolved" "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz" + "version" "2.0.0" + +"are-we-there-yet@^3.0.0": + "integrity" "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==" + "resolved" "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "delegates" "^1.0.0" + "readable-stream" "^3.6.0" + +"arg@^5.0.2": + "integrity" "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + "resolved" "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz" + "version" "5.0.2" + +"argparse@^2.0.1": + "integrity" "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + "resolved" "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" + "version" "2.0.1" + +"array-buffer-byte-length@^1.0.0": + "integrity" "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==" + "resolved" "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "call-bind" "^1.0.2" + "is-array-buffer" "^3.0.1" + +"array-includes@^3.1.6": + "integrity" "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==" + "resolved" "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz" + "version" "3.1.6" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.4" + "es-abstract" "^1.20.4" + "get-intrinsic" "^1.1.3" + "is-string" "^1.0.7" + +"array-union@^2.1.0": + "integrity" "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" + "resolved" "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" + "version" "2.1.0" + +"array.prototype.flat@^1.3.1": + "integrity" "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==" + "resolved" "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz" + "version" "1.3.1" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.4" + "es-abstract" "^1.20.4" + "es-shim-unscopables" "^1.0.0" + +"array.prototype.flatmap@^1.3.1": + "integrity" "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==" + "resolved" "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz" + "version" "1.3.1" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.4" + "es-abstract" "^1.20.4" + "es-shim-unscopables" "^1.0.0" + +"assertion-error@^1.1.0": + "integrity" "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==" + "resolved" "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz" + "version" "1.1.0" + +"asynckit@^0.4.0": + "integrity" "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + "resolved" "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" + "version" "0.4.0" + +"autoprefixer@^10.4.13": + "integrity" "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==" + "resolved" "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz" + "version" "10.4.14" + dependencies: + "browserslist" "^4.21.5" + "caniuse-lite" "^1.0.30001464" + "fraction.js" "^4.2.0" + "normalize-range" "^0.1.2" + "picocolors" "^1.0.0" + "postcss-value-parser" "^4.2.0" + +"available-typed-arrays@^1.0.5": + "integrity" "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" + "resolved" "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz" + "version" "1.0.5" + +"axios@^0.27.2": + "integrity" "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==" + "resolved" "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz" + "version" "0.27.2" + dependencies: + "follow-redirects" "^1.14.9" + "form-data" "^4.0.0" + +"balanced-match@^1.0.0": + "integrity" "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + "resolved" "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" + "version" "1.0.2" + +"binary-extensions@^2.0.0": + "integrity" "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" + "resolved" "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz" + "version" "2.2.0" + +"boolbase@^1.0.0": + "integrity" "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + "resolved" "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz" + "version" "1.0.0" + +"brace-expansion@^1.1.7": + "integrity" "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==" + "resolved" "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" + "version" "1.1.11" + dependencies: + "balanced-match" "^1.0.0" + "concat-map" "0.0.1" + +"brace-expansion@^2.0.1": + "integrity" "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==" + "resolved" "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "balanced-match" "^1.0.0" + +"braces@^3.0.2", "braces@~3.0.2": + "integrity" "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==" + "resolved" "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "fill-range" "^7.0.1" + +"browserslist@^4.21.5", "browserslist@>= 4.21.0": + "integrity" "sha512-BauCXrQ7I2ftSqd2mvKHGo85XR0u7Ru3C/Hxsy/0TkfCtjrmAbPdzLGasmoiBxplpDXlPvdjX9u7srIMfgasNA==" + "resolved" "https://registry.npmjs.org/browserslist/-/browserslist-4.21.7.tgz" + "version" "4.21.7" + dependencies: + "caniuse-lite" "^1.0.30001489" + "electron-to-chromium" "^1.4.411" + "node-releases" "^2.0.12" + "update-browserslist-db" "^1.0.11" + +"builtin-modules@^3.3.0": + "integrity" "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==" + "resolved" "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz" + "version" "3.3.0" + +"builtins@^5.0.0", "builtins@^5.0.1": + "integrity" "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==" + "resolved" "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz" + "version" "5.0.1" + dependencies: + "semver" "^7.0.0" + +"cacache@^16.0.0", "cacache@^16.1.0": + "integrity" "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==" + "resolved" "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz" + "version" "16.1.3" + dependencies: + "@npmcli/fs" "^2.1.0" + "@npmcli/move-file" "^2.0.0" + "chownr" "^2.0.0" + "fs-minipass" "^2.1.0" + "glob" "^8.0.1" + "infer-owner" "^1.0.4" + "lru-cache" "^7.7.1" + "minipass" "^3.1.6" + "minipass-collect" "^1.0.2" + "minipass-flush" "^1.0.5" + "minipass-pipeline" "^1.2.4" + "mkdirp" "^1.0.4" + "p-map" "^4.0.0" + "promise-inflight" "^1.0.1" + "rimraf" "^3.0.2" + "ssri" "^9.0.0" + "tar" "^6.1.11" + "unique-filename" "^2.0.0" + +"call-bind@^1.0.0", "call-bind@^1.0.2": + "integrity" "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==" + "resolved" "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "function-bind" "^1.1.1" + "get-intrinsic" "^1.0.2" + +"callsites@^3.0.0": + "integrity" "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + "resolved" "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" + "version" "3.1.0" + +"camelcase-css@^2.0.1": + "integrity" "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==" + "resolved" "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz" + "version" "2.0.1" + +"caniuse-lite@^1.0.30001464", "caniuse-lite@^1.0.30001489": + "integrity" "sha512-F6x5IEuigtUfU5ZMQK2jsy5JqUUlEFRVZq8bO2a+ysq5K7jD6PPc9YXZj78xDNS3uNchesp1Jw47YXEqr+Viyg==" + "resolved" "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001495.tgz" + "version" "1.0.30001495" + +"cfb@~1.2.1": + "integrity" "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==" + "resolved" "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz" + "version" "1.2.2" + dependencies: + "adler-32" "~1.3.0" + "crc-32" "~1.2.0" + +"chai@^4.3.6": + "integrity" "sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==" + "resolved" "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz" + "version" "4.3.7" + dependencies: + "assertion-error" "^1.1.0" + "check-error" "^1.0.2" + "deep-eql" "^4.1.2" + "get-func-name" "^2.0.0" + "loupe" "^2.3.1" + "pathval" "^1.1.1" + "type-detect" "^4.0.5" + +"chalk@^2.0.0": + "integrity" "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==" + "resolved" "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" + "version" "2.4.2" + dependencies: + "ansi-styles" "^3.2.1" + "escape-string-regexp" "^1.0.5" + "supports-color" "^5.3.0" + +"chalk@^4.0.0": + "integrity" "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==" + "resolved" "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" + "version" "4.1.2" + dependencies: + "ansi-styles" "^4.1.0" + "supports-color" "^7.1.0" + +"character-entities-legacy@^1.0.0": + "integrity" "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==" + "resolved" "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz" + "version" "1.1.4" + +"character-entities@^1.0.0": + "integrity" "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==" + "resolved" "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz" + "version" "1.2.4" + +"character-reference-invalid@^1.0.0": + "integrity" "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==" + "resolved" "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz" + "version" "1.1.4" + +"check-error@^1.0.2": + "integrity" "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==" + "resolved" "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz" + "version" "1.0.2" + +"chokidar@^3.5.3", "chokidar@>=3.0.0 <4.0.0": + "integrity" "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==" + "resolved" "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz" + "version" "3.5.3" + dependencies: + "anymatch" "~3.1.2" + "braces" "~3.0.2" + "glob-parent" "~5.1.2" + "is-binary-path" "~2.1.0" + "is-glob" "~4.0.1" + "normalize-path" "~3.0.0" + "readdirp" "~3.6.0" + optionalDependencies: + "fsevents" "~2.3.2" + +"chownr@^2.0.0": + "integrity" "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" + "resolved" "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz" + "version" "2.0.0" + +"ci-info@^3.3.2": + "integrity" "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==" + "resolved" "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz" + "version" "3.8.0" + +"clean-regexp@^1.0.0": + "integrity" "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==" + "resolved" "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "escape-string-regexp" "^1.0.5" + +"clean-stack@^2.0.0": + "integrity" "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + "resolved" "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz" + "version" "2.2.0" + +"cliui@^8.0.1": + "integrity" "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==" + "resolved" "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz" + "version" "8.0.1" + dependencies: + "string-width" "^4.2.0" + "strip-ansi" "^6.0.1" + "wrap-ansi" "^7.0.0" + +"codepage@~1.15.0": + "integrity" "sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA==" + "resolved" "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz" + "version" "1.15.0" + +"color-convert@^1.9.0": + "integrity" "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==" + "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" + "version" "1.9.3" + dependencies: + "color-name" "1.1.3" + +"color-convert@^2.0.1": + "integrity" "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==" + "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "color-name" "~1.1.4" + +"color-name@~1.1.4": + "integrity" "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" + "version" "1.1.4" + +"color-name@1.1.3": + "integrity" "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + "version" "1.1.3" + +"color-support@^1.1.3": + "integrity" "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" + "resolved" "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz" + "version" "1.1.3" + +"combined-stream@^1.0.8": + "integrity" "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==" + "resolved" "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" + "version" "1.0.8" + dependencies: + "delayed-stream" "~1.0.0" + +"commander@^2.19.0": + "integrity" "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + "resolved" "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz" + "version" "2.20.3" + +"commander@^4.0.0": + "integrity" "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==" + "resolved" "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz" + "version" "4.1.1" + +"concat-map@0.0.1": + "integrity" "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + "resolved" "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + "version" "0.0.1" + +"config-chain@^1.1.13": + "integrity" "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==" + "resolved" "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz" + "version" "1.1.13" + dependencies: + "ini" "^1.3.4" + "proto-list" "~1.2.1" + +"console-control-strings@^1.1.0": + "integrity" "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" + "resolved" "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz" + "version" "1.1.0" + +"crc-32@~1.2.0", "crc-32@~1.2.1": + "integrity" "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==" + "resolved" "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz" + "version" "1.2.2" + +"cross-env@^7.0.3": + "integrity" "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==" + "resolved" "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz" + "version" "7.0.3" + dependencies: + "cross-spawn" "^7.0.1" + +"cross-spawn@^7.0.0", "cross-spawn@^7.0.1", "cross-spawn@^7.0.2", "cross-spawn@^7.0.3": + "integrity" "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==" + "resolved" "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" + "version" "7.0.3" + dependencies: + "path-key" "^3.1.0" + "shebang-command" "^2.0.0" + "which" "^2.0.1" + +"cssesc@^3.0.0": + "integrity" "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" + "resolved" "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz" + "version" "3.0.0" + +"cssom@^0.5.0": + "integrity" "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==" + "resolved" "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz" + "version" "0.5.0" + +"cssom@~0.3.6": + "integrity" "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==" + "resolved" "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz" + "version" "0.3.8" + +"cssstyle@^2.3.0": + "integrity" "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==" + "resolved" "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz" + "version" "2.3.0" + dependencies: + "cssom" "~0.3.6" + +"csstype@^3.1.1": + "integrity" "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" + "resolved" "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz" + "version" "3.1.2" + +"data-urls@^3.0.2": + "integrity" "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==" + "resolved" "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "abab" "^2.0.6" + "whatwg-mimetype" "^3.0.0" + "whatwg-url" "^11.0.0" + +"de-indent@^1.0.2": + "integrity" "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==" + "resolved" "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz" + "version" "1.0.2" + +"debug@^3.2.7": + "integrity" "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==" + "resolved" "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" + "version" "3.2.7" + dependencies: + "ms" "^2.1.1" + +"debug@^4.0.0", "debug@^4.1.0", "debug@^4.1.1", "debug@^4.3.2", "debug@^4.3.3", "debug@^4.3.4", "debug@4": + "integrity" "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==" + "resolved" "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" + "version" "4.3.4" + dependencies: + "ms" "2.1.2" + +"decimal.js@^10.4.2": + "integrity" "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" + "resolved" "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz" + "version" "10.4.3" + +"deep-eql@^4.1.2": + "integrity" "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==" + "resolved" "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz" + "version" "4.1.3" + dependencies: + "type-detect" "^4.0.0" + +"deep-equal@^2.0.5": + "integrity" "sha512-lKdkdV6EOGoVn65XaOsPdH4rMxTZOnmFyuIkMjM1i5HHCbfjC97dawgTAy0deYNfuqUqW+Q5VrVaQYtUpSd6yQ==" + "resolved" "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.1.tgz" + "version" "2.2.1" + dependencies: + "array-buffer-byte-length" "^1.0.0" + "call-bind" "^1.0.2" + "es-get-iterator" "^1.1.3" + "get-intrinsic" "^1.2.0" + "is-arguments" "^1.1.1" + "is-array-buffer" "^3.0.2" + "is-date-object" "^1.0.5" + "is-regex" "^1.1.4" + "is-shared-array-buffer" "^1.0.2" + "isarray" "^2.0.5" + "object-is" "^1.1.5" + "object-keys" "^1.1.1" + "object.assign" "^4.1.4" + "regexp.prototype.flags" "^1.5.0" + "side-channel" "^1.0.4" + "which-boxed-primitive" "^1.0.2" + "which-collection" "^1.0.1" + "which-typed-array" "^1.1.9" + +"deep-is@^0.1.3", "deep-is@~0.1.3": + "integrity" "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + "resolved" "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz" + "version" "0.1.4" + +"define-properties@^1.1.3", "define-properties@^1.1.4", "define-properties@^1.2.0": + "integrity" "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==" + "resolved" "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz" + "version" "1.2.0" + dependencies: + "has-property-descriptors" "^1.0.0" + "object-keys" "^1.1.1" + +"defu@^6.1.2": + "integrity" "sha512-+uO4+qr7msjNNWKYPHqN/3+Dx3NFkmIzayk2L1MyZQlvgZb/J1A0fo410dpKrN2SnqFjt8n4JL8fDJE0wIgjFQ==" + "resolved" "https://registry.npmjs.org/defu/-/defu-6.1.2.tgz" + "version" "6.1.2" + +"delayed-stream@~1.0.0": + "integrity" "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" + "resolved" "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" + "version" "1.0.0" + +"delegates@^1.0.0": + "integrity" "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" + "resolved" "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz" + "version" "1.0.0" + +"depd@^2.0.0": + "integrity" "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" + "resolved" "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" + "version" "2.0.0" + +"detect-indent@^7.0.1": + "integrity" "sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==" + "resolved" "https://registry.npmjs.org/detect-indent/-/detect-indent-7.0.1.tgz" + "version" "7.0.1" + +"didyoumean@^1.2.2": + "integrity" "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==" + "resolved" "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz" + "version" "1.2.2" + +"dir-glob@^3.0.1": + "integrity" "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==" + "resolved" "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "path-type" "^4.0.0" + +"dlv@^1.1.3": + "integrity" "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" + "resolved" "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz" + "version" "1.1.3" + +"doctrine@^2.1.0": + "integrity" "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==" + "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "esutils" "^2.0.2" + +"doctrine@^3.0.0": + "integrity" "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==" + "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "esutils" "^2.0.2" + +"dom-serializer@^2.0.0": + "integrity" "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==" + "resolved" "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "domelementtype" "^2.3.0" + "domhandler" "^5.0.2" + "entities" "^4.2.0" + +"domelementtype@^2.3.0": + "integrity" "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + "resolved" "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz" + "version" "2.3.0" + +"domexception@^4.0.0": + "integrity" "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==" + "resolved" "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "webidl-conversions" "^7.0.0" + +"domhandler@^5.0.2", "domhandler@^5.0.3": + "integrity" "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==" + "resolved" "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz" + "version" "5.0.3" + dependencies: + "domelementtype" "^2.3.0" + +"domutils@^3.0.1": + "integrity" "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==" + "resolved" "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "dom-serializer" "^2.0.0" + "domelementtype" "^2.3.0" + "domhandler" "^5.0.3" + +"eastasianwidth@^0.2.0": + "integrity" "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + "resolved" "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz" + "version" "0.2.0" + +"editorconfig@^0.15.3": + "integrity" "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==" + "resolved" "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz" + "version" "0.15.3" + dependencies: + "commander" "^2.19.0" + "lru-cache" "^4.1.5" + "semver" "^5.6.0" + "sigmund" "^1.0.1" + +"electron-to-chromium@^1.4.411": + "integrity" "sha512-y4A7YfQcDGPAeSWM1IuoWzXpg9RY1nwHzHSwRtCSQFp9FgAVDgdWlFf0RbdWfLWQ2WUI+bddUgk5RgTjqRE6FQ==" + "resolved" "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.423.tgz" + "version" "1.4.423" + +"emoji-regex@^8.0.0": + "integrity" "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "resolved" "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" + "version" "8.0.0" + +"emoji-regex@^9.2.2": + "integrity" "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + "resolved" "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz" + "version" "9.2.2" + +"encoding@^0.1.13": + "integrity" "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==" + "resolved" "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz" + "version" "0.1.13" + dependencies: + "iconv-lite" "^0.6.2" + +"entities@^4.2.0", "entities@^4.4.0": + "integrity" "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==" + "resolved" "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz" + "version" "4.5.0" + +"env-paths@^2.2.0": + "integrity" "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==" + "resolved" "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz" + "version" "2.2.1" + +"err-code@^2.0.2": + "integrity" "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" + "resolved" "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz" + "version" "2.0.3" + +"error-ex@^1.3.1": + "integrity" "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==" + "resolved" "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" + "version" "1.3.2" + dependencies: + "is-arrayish" "^0.2.1" + +"es-abstract@^1.19.0", "es-abstract@^1.20.4": + "integrity" "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==" + "resolved" "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz" + "version" "1.21.2" + dependencies: + "array-buffer-byte-length" "^1.0.0" + "available-typed-arrays" "^1.0.5" + "call-bind" "^1.0.2" + "es-set-tostringtag" "^2.0.1" + "es-to-primitive" "^1.2.1" + "function.prototype.name" "^1.1.5" + "get-intrinsic" "^1.2.0" + "get-symbol-description" "^1.0.0" + "globalthis" "^1.0.3" + "gopd" "^1.0.1" + "has" "^1.0.3" + "has-property-descriptors" "^1.0.0" + "has-proto" "^1.0.1" + "has-symbols" "^1.0.3" + "internal-slot" "^1.0.5" + "is-array-buffer" "^3.0.2" + "is-callable" "^1.2.7" + "is-negative-zero" "^2.0.2" + "is-regex" "^1.1.4" + "is-shared-array-buffer" "^1.0.2" + "is-string" "^1.0.7" + "is-typed-array" "^1.1.10" + "is-weakref" "^1.0.2" + "object-inspect" "^1.12.3" + "object-keys" "^1.1.1" + "object.assign" "^4.1.4" + "regexp.prototype.flags" "^1.4.3" + "safe-regex-test" "^1.0.0" + "string.prototype.trim" "^1.2.7" + "string.prototype.trimend" "^1.0.6" + "string.prototype.trimstart" "^1.0.6" + "typed-array-length" "^1.0.4" + "unbox-primitive" "^1.0.2" + "which-typed-array" "^1.1.9" + +"es-get-iterator@^1.1.3": + "integrity" "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==" + "resolved" "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz" + "version" "1.1.3" + dependencies: + "call-bind" "^1.0.2" + "get-intrinsic" "^1.1.3" + "has-symbols" "^1.0.3" + "is-arguments" "^1.1.1" + "is-map" "^2.0.2" + "is-set" "^2.0.2" + "is-string" "^1.0.7" + "isarray" "^2.0.5" + "stop-iteration-iterator" "^1.0.0" + +"es-set-tostringtag@^2.0.1": + "integrity" "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==" + "resolved" "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "get-intrinsic" "^1.1.3" + "has" "^1.0.3" + "has-tostringtag" "^1.0.0" + +"es-shim-unscopables@^1.0.0": + "integrity" "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==" + "resolved" "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "has" "^1.0.3" + +"es-to-primitive@^1.2.1": + "integrity" "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==" + "resolved" "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" + "version" "1.2.1" + dependencies: + "is-callable" "^1.1.4" + "is-date-object" "^1.0.1" + "is-symbol" "^1.0.2" + +"esbuild-linux-64@0.13.15": + "integrity" "sha512-eCKzkNSLywNeQTRBxJRQ0jxRCl2YWdMB3+PkWFo2BBQYC5mISLIVIjThNtn6HUNqua1pnvgP5xX0nHbZbPj5oA==" + "resolved" "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.15.tgz" + "version" "0.13.15" + +"esbuild-linux-64@0.15.18": + "integrity" "sha512-hNSeP97IviD7oxLKFuii5sDPJ+QHeiFTFLoLm7NZQligur8poNOWGIgpQ7Qf8Balb69hptMZzyOBIPtY09GZYw==" + "resolved" "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.18.tgz" + "version" "0.15.18" + +"esbuild-node-loader@^0.4.0": + "integrity" "sha512-Jzs+nTsq7z4GqUTwlh8guP03EYTAhoB9r+rwb3JpVcNVG1/2fNE8Tb40syJ2nLY2yam+lZjsoh7FYd+2dGjbjg==" + "resolved" "https://registry.npmjs.org/esbuild-node-loader/-/esbuild-node-loader-0.4.3.tgz" + "version" "0.4.3" + dependencies: + "esbuild" "^0.13.3" + +"esbuild-register@^3.0.0": + "integrity" "sha512-kG/XyTDyz6+YDuyfB9ZoSIOOmgyFCH+xPRtsCa8W85HLRV5Csp+o3jWVbOSHgSLfyLc5DmP+KFDNwty4mEjC+Q==" + "resolved" "https://registry.npmjs.org/esbuild-register/-/esbuild-register-3.4.2.tgz" + "version" "3.4.2" + dependencies: + "debug" "^4.3.4" + +"esbuild@^0.13.2", "esbuild@^0.13.3", "esbuild@>=0.12 <1": + "integrity" "sha512-raCxt02HBKv8RJxE8vkTSCXGIyKHdEdGfUmiYb8wnabnaEmHzyW7DCHb5tEN0xU8ryqg5xw54mcwnYkC4x3AIw==" + "resolved" "https://registry.npmjs.org/esbuild/-/esbuild-0.13.15.tgz" + "version" "0.13.15" + optionalDependencies: + "esbuild-android-arm64" "0.13.15" + "esbuild-darwin-64" "0.13.15" + "esbuild-darwin-arm64" "0.13.15" + "esbuild-freebsd-64" "0.13.15" + "esbuild-freebsd-arm64" "0.13.15" + "esbuild-linux-32" "0.13.15" + "esbuild-linux-64" "0.13.15" + "esbuild-linux-arm" "0.13.15" + "esbuild-linux-arm64" "0.13.15" + "esbuild-linux-mips64le" "0.13.15" + "esbuild-linux-ppc64le" "0.13.15" + "esbuild-netbsd-64" "0.13.15" + "esbuild-openbsd-64" "0.13.15" + "esbuild-sunos-64" "0.13.15" + "esbuild-windows-32" "0.13.15" + "esbuild-windows-64" "0.13.15" + "esbuild-windows-arm64" "0.13.15" + +"esbuild@^0.15.9": + "integrity" "sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q==" + "resolved" "https://registry.npmjs.org/esbuild/-/esbuild-0.15.18.tgz" + "version" "0.15.18" + optionalDependencies: + "@esbuild/android-arm" "0.15.18" + "@esbuild/linux-loong64" "0.15.18" + "esbuild-android-64" "0.15.18" + "esbuild-android-arm64" "0.15.18" + "esbuild-darwin-64" "0.15.18" + "esbuild-darwin-arm64" "0.15.18" + "esbuild-freebsd-64" "0.15.18" + "esbuild-freebsd-arm64" "0.15.18" + "esbuild-linux-32" "0.15.18" + "esbuild-linux-64" "0.15.18" + "esbuild-linux-arm" "0.15.18" + "esbuild-linux-arm64" "0.15.18" + "esbuild-linux-mips64le" "0.15.18" + "esbuild-linux-ppc64le" "0.15.18" + "esbuild-linux-riscv64" "0.15.18" + "esbuild-linux-s390x" "0.15.18" + "esbuild-netbsd-64" "0.15.18" + "esbuild-openbsd-64" "0.15.18" + "esbuild-sunos-64" "0.15.18" + "esbuild-windows-32" "0.15.18" + "esbuild-windows-64" "0.15.18" + "esbuild-windows-arm64" "0.15.18" + +"escalade@^3.1.1": + "integrity" "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + "resolved" "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" + "version" "3.1.1" + +"escape-string-regexp@^1.0.5": + "integrity" "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + "version" "1.0.5" + +"escape-string-regexp@^4.0.0": + "integrity" "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" + "version" "4.0.0" + +"escape-string-regexp@^5.0.0": + "integrity" "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==" + "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz" + "version" "5.0.0" + +"escodegen@^2.0.0": + "integrity" "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==" + "resolved" "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "esprima" "^4.0.1" + "estraverse" "^5.2.0" + "esutils" "^2.0.2" + "optionator" "^0.8.1" + optionalDependencies: + "source-map" "~0.6.1" + +"eslint-config-prettier@^8.5.0": + "integrity" "sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA==" + "resolved" "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.8.0.tgz" + "version" "8.8.0" + +"eslint-import-resolver-node@^0.3.7": + "integrity" "sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==" + "resolved" "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz" + "version" "0.3.7" + dependencies: + "debug" "^3.2.7" + "is-core-module" "^2.11.0" + "resolve" "^1.22.1" + +"eslint-module-utils@^2.7.4": + "integrity" "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==" + "resolved" "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz" + "version" "2.8.0" + dependencies: + "debug" "^3.2.7" + +"eslint-plugin-antfu@0.27.0": + "integrity" "sha512-xjNfATHonE3Do2igOlhwjfL2tlaGnm1EgbsLLkHgdk30oIvJU4bLNxF6wXIuaCdjqmwWIqF6smJbX2YhtaEC4w==" + "resolved" "https://registry.npmjs.org/eslint-plugin-antfu/-/eslint-plugin-antfu-0.27.0.tgz" + "version" "0.27.0" + dependencies: + "@typescript-eslint/utils" "^5.36.1" + +"eslint-plugin-es@^4.1.0": + "integrity" "sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==" + "resolved" "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz" + "version" "4.1.0" + dependencies: + "eslint-utils" "^2.0.0" + "regexpp" "^3.0.0" + +"eslint-plugin-eslint-comments@^3.2.0": + "integrity" "sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==" + "resolved" "https://registry.npmjs.org/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz" + "version" "3.2.0" + dependencies: + "escape-string-regexp" "^1.0.5" + "ignore" "^5.0.5" + +"eslint-plugin-html@^7.1.0": + "integrity" "sha512-fNLRraV/e6j8e3XYOC9xgND4j+U7b1Rq+OygMlLcMg+wI/IpVbF+ubQa3R78EjKB9njT6TQOlcK5rFKBVVtdfg==" + "resolved" "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-7.1.0.tgz" + "version" "7.1.0" + dependencies: + "htmlparser2" "^8.0.1" + +"eslint-plugin-import@^2.26.0": + "integrity" "sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==" + "resolved" "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz" + "version" "2.27.5" + dependencies: + "array-includes" "^3.1.6" + "array.prototype.flat" "^1.3.1" + "array.prototype.flatmap" "^1.3.1" + "debug" "^3.2.7" + "doctrine" "^2.1.0" + "eslint-import-resolver-node" "^0.3.7" + "eslint-module-utils" "^2.7.4" + "has" "^1.0.3" + "is-core-module" "^2.11.0" + "is-glob" "^4.0.3" + "minimatch" "^3.1.2" + "object.values" "^1.1.6" + "resolve" "^1.22.1" + "semver" "^6.3.0" + "tsconfig-paths" "^3.14.1" + +"eslint-plugin-jsonc@^2.4.0": + "integrity" "sha512-K4VsnztnNwpm+V49CcCu5laq8VjclJpuhfI9LFkOrOyK+BKdQHMzkWo43B4X4rYaVrChm4U9kw/tTU5RHh5Wtg==" + "resolved" "https://registry.npmjs.org/eslint-plugin-jsonc/-/eslint-plugin-jsonc-2.8.0.tgz" + "version" "2.8.0" + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "jsonc-eslint-parser" "^2.0.4" + "natural-compare" "^1.4.0" + +"eslint-plugin-markdown@^3.0.0": + "integrity" "sha512-hRs5RUJGbeHDLfS7ELanT0e29Ocyssf/7kBM+p7KluY5AwngGkDf8Oyu4658/NZSGTTq05FZeWbkxXtbVyHPwg==" + "resolved" "https://registry.npmjs.org/eslint-plugin-markdown/-/eslint-plugin-markdown-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "mdast-util-from-markdown" "^0.8.5" + +"eslint-plugin-n@^15.2.5": + "integrity" "sha512-jDex9s7D/Qial8AGVIHq4W7NswpUD5DPDL2RH8Lzd9EloWUuvUkHfv4FRLMipH5q2UtyurorBkPeNi1wVWNh3Q==" + "resolved" "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.7.0.tgz" + "version" "15.7.0" + dependencies: + "builtins" "^5.0.1" + "eslint-plugin-es" "^4.1.0" + "eslint-utils" "^3.0.0" + "ignore" "^5.1.1" + "is-core-module" "^2.11.0" + "minimatch" "^3.1.2" + "resolve" "^1.22.1" + "semver" "^7.3.8" + +"eslint-plugin-prettier@^4.2.1": + "integrity" "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==" + "resolved" "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz" + "version" "4.2.1" + dependencies: + "prettier-linter-helpers" "^1.0.0" + +"eslint-plugin-promise@^6.0.1": + "integrity" "sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==" + "resolved" "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.1.1.tgz" + "version" "6.1.1" + +"eslint-plugin-unicorn@^43.0.2": + "integrity" "sha512-DtqZ5mf/GMlfWoz1abIjq5jZfaFuHzGBZYIeuJfEoKKGWRHr2JiJR+ea+BF7Wx2N1PPRoT/2fwgiK1NnmNE3Hg==" + "resolved" "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-43.0.2.tgz" + "version" "43.0.2" + dependencies: + "@babel/helper-validator-identifier" "^7.18.6" + "ci-info" "^3.3.2" + "clean-regexp" "^1.0.0" + "eslint-utils" "^3.0.0" + "esquery" "^1.4.0" + "indent-string" "^4.0.0" + "is-builtin-module" "^3.1.0" + "lodash" "^4.17.21" + "pluralize" "^8.0.0" + "read-pkg-up" "^7.0.1" + "regexp-tree" "^0.1.24" + "safe-regex" "^2.1.1" + "semver" "^7.3.7" + "strip-indent" "^3.0.0" + +"eslint-plugin-vue@^9.4.0": + "integrity" "sha512-LQazDB1qkNEKejLe/b5a9VfEbtbczcOaui5lQ4Qw0tbRBbQYREyxxOV5BQgNDTqGPs9pxqiEpbMi9ywuIaF7vw==" + "resolved" "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.14.1.tgz" + "version" "9.14.1" + dependencies: + "@eslint-community/eslint-utils" "^4.3.0" + "natural-compare" "^1.4.0" + "nth-check" "^2.0.1" + "postcss-selector-parser" "^6.0.9" + "semver" "^7.3.5" + "vue-eslint-parser" "^9.3.0" + "xml-name-validator" "^4.0.0" + +"eslint-plugin-yml@^1.1.0": + "integrity" "sha512-qq61FQJk+qIgWl0R06bec7UQQEIBrUH22jS+MroTbFUKu+3/iVlGRpZd8mjpOAm/+H/WEDFwy4x/+kKgVGbsWw==" + "resolved" "https://registry.npmjs.org/eslint-plugin-yml/-/eslint-plugin-yml-1.7.0.tgz" + "version" "1.7.0" + dependencies: + "debug" "^4.3.2" + "lodash" "^4.17.21" + "natural-compare" "^1.4.0" + "yaml-eslint-parser" "^1.2.1" + +"eslint-scope@^5.1.1": + "integrity" "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==" + "resolved" "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" + "version" "5.1.1" + dependencies: + "esrecurse" "^4.3.0" + "estraverse" "^4.1.1" + +"eslint-scope@^7.1.1", "eslint-scope@^7.2.0": + "integrity" "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==" + "resolved" "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz" + "version" "7.2.0" + dependencies: + "esrecurse" "^4.3.0" + "estraverse" "^5.2.0" + +"eslint-utils@^2.0.0": + "integrity" "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==" + "resolved" "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "eslint-visitor-keys" "^1.1.0" + +"eslint-utils@^3.0.0": + "integrity" "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==" + "resolved" "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "eslint-visitor-keys" "^2.0.0" + +"eslint-visitor-keys@^1.1.0": + "integrity" "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" + "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" + "version" "1.3.0" + +"eslint-visitor-keys@^2.0.0": + "integrity" "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==" + "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" + "version" "2.1.0" + +"eslint-visitor-keys@^3.0.0", "eslint-visitor-keys@^3.3.0", "eslint-visitor-keys@^3.4.1": + "integrity" "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==" + "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz" + "version" "3.4.1" + +"eslint@*", "eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8", "eslint@^6.0.0 || ^7.0.0 || ^8.0.0", "eslint@^6.0.0 || ^7.0.0 || >=8.0.0", "eslint@^6.2.0 || ^7.0.0 || ^8.0.0", "eslint@^7.0.0 || ^8.0.0", "eslint@^8.24.0", "eslint@>=4.19.1", "eslint@>=5", "eslint@>=6.0.0", "eslint@>=7.0.0", "eslint@>=7.28.0", "eslint@>=7.4.0", "eslint@>=8.18.0": + "integrity" "sha512-ulg9Ms6E1WPf67PHaEY4/6E2tEn5/f7FXGzr3t9cBMugOmf1INYvuUwwh1aXQN4MfJ6a5K2iNwP3w4AColvI9A==" + "resolved" "https://registry.npmjs.org/eslint/-/eslint-8.42.0.tgz" + "version" "8.42.0" + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@eslint-community/regexpp" "^4.4.0" + "@eslint/eslintrc" "^2.0.3" + "@eslint/js" "8.42.0" + "@humanwhocodes/config-array" "^0.11.10" + "@humanwhocodes/module-importer" "^1.0.1" + "@nodelib/fs.walk" "^1.2.8" + "ajv" "^6.10.0" + "chalk" "^4.0.0" + "cross-spawn" "^7.0.2" + "debug" "^4.3.2" + "doctrine" "^3.0.0" + "escape-string-regexp" "^4.0.0" + "eslint-scope" "^7.2.0" + "eslint-visitor-keys" "^3.4.1" + "espree" "^9.5.2" + "esquery" "^1.4.2" + "esutils" "^2.0.2" + "fast-deep-equal" "^3.1.3" + "file-entry-cache" "^6.0.1" + "find-up" "^5.0.0" + "glob-parent" "^6.0.2" + "globals" "^13.19.0" + "graphemer" "^1.4.0" + "ignore" "^5.2.0" + "import-fresh" "^3.0.0" + "imurmurhash" "^0.1.4" + "is-glob" "^4.0.0" + "is-path-inside" "^3.0.3" + "js-yaml" "^4.1.0" + "json-stable-stringify-without-jsonify" "^1.0.1" + "levn" "^0.4.1" + "lodash.merge" "^4.6.2" + "minimatch" "^3.1.2" + "natural-compare" "^1.4.0" + "optionator" "^0.9.1" + "strip-ansi" "^6.0.1" + "strip-json-comments" "^3.1.0" + "text-table" "^0.2.0" + +"esno@0.10.0": + "integrity" "sha512-M+kWH0nXxN9G+Kj32VGhMKULrMqOXCrFCLOVgjeLv9tibfYWQXKqI7oZ5T5sqXumZ4CUeOJqs/wve4q/bmJftg==" + "resolved" "https://registry.npmjs.org/esno/-/esno-0.10.0.tgz" + "version" "0.10.0" + dependencies: + "cross-spawn" "^7.0.3" + "esbuild" "^0.13.2" + "esbuild-node-loader" "^0.4.0" + "esbuild-register" "^3.0.0" + +"espree@^9.0.0", "espree@^9.3.1", "espree@^9.5.2": + "integrity" "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==" + "resolved" "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz" + "version" "9.5.2" + dependencies: + "acorn" "^8.8.0" + "acorn-jsx" "^5.3.2" + "eslint-visitor-keys" "^3.4.1" + +"esprima-extract-comments@^1.1.0": + "integrity" "sha512-sBQUnvJwpeE9QnPrxh7dpI/dp67erYG4WXEAreAMoelPRpMR7NWb4YtwRPn9b+H1uLQKl/qS8WYmyaljTpjIsw==" + "resolved" "https://registry.npmjs.org/esprima-extract-comments/-/esprima-extract-comments-1.1.0.tgz" + "version" "1.1.0" + dependencies: + "esprima" "^4.0.0" + +"esprima@^4.0.0", "esprima@^4.0.1": + "integrity" "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + "resolved" "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" + "version" "4.0.1" + +"esquery@^1.4.0", "esquery@^1.4.2": + "integrity" "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==" + "resolved" "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz" + "version" "1.5.0" + dependencies: + "estraverse" "^5.1.0" + +"esrecurse@^4.3.0": + "integrity" "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==" + "resolved" "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" + "version" "4.3.0" + dependencies: + "estraverse" "^5.2.0" + +"estraverse@^4.1.1": + "integrity" "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" + "version" "4.3.0" + +"estraverse@^5.1.0", "estraverse@^5.2.0": + "integrity" "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" + "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz" + "version" "5.3.0" + +"estree-walker@^2.0.2": + "integrity" "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + "resolved" "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz" + "version" "2.0.2" + +"esutils@^2.0.2": + "integrity" "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + "resolved" "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" + "version" "2.0.3" + +"extract-comments@^1.1.0": + "integrity" "sha512-dzbZV2AdSSVW/4E7Ti5hZdHWbA+Z80RJsJhr5uiL10oyjl/gy7/o+HI1HwK4/WSZhlq4SNKU3oUzXlM13Qx02Q==" + "resolved" "https://registry.npmjs.org/extract-comments/-/extract-comments-1.1.0.tgz" + "version" "1.1.0" + dependencies: + "esprima-extract-comments" "^1.1.0" + "parse-code-context" "^1.0.0" + +"fast-deep-equal@^3.1.1", "fast-deep-equal@^3.1.3": + "integrity" "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + "resolved" "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" + "version" "3.1.3" + +"fast-diff@^1.1.2": + "integrity" "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==" + "resolved" "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz" + "version" "1.3.0" + +"fast-glob@^3.2.11", "fast-glob@^3.2.12", "fast-glob@^3.2.7", "fast-glob@^3.2.9": + "integrity" "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==" + "resolved" "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz" + "version" "3.2.12" + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + "glob-parent" "^5.1.2" + "merge2" "^1.3.0" + "micromatch" "^4.0.4" + +"fast-json-stable-stringify@^2.0.0": + "integrity" "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + "resolved" "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" + "version" "2.1.0" + +"fast-levenshtein@^2.0.6", "fast-levenshtein@~2.0.6": + "integrity" "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" + "resolved" "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" + "version" "2.0.6" + +"fastq@^1.6.0": + "integrity" "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==" + "resolved" "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz" + "version" "1.15.0" + dependencies: + "reusify" "^1.0.4" + +"file-entry-cache@^6.0.1": + "integrity" "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==" + "resolved" "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" + "version" "6.0.1" + dependencies: + "flat-cache" "^3.0.4" + +"fill-range@^7.0.1": + "integrity" "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==" + "resolved" "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" + "version" "7.0.1" + dependencies: + "to-regex-range" "^5.0.1" + +"find-up@^4.1.0": + "integrity" "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==" + "resolved" "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz" + "version" "4.1.0" + dependencies: + "locate-path" "^5.0.0" + "path-exists" "^4.0.0" + +"find-up@^5.0.0": + "integrity" "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==" + "resolved" "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "locate-path" "^6.0.0" + "path-exists" "^4.0.0" + +"flat-cache@^3.0.4": + "integrity" "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==" + "resolved" "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" + "version" "3.0.4" + dependencies: + "flatted" "^3.1.0" + "rimraf" "^3.0.2" + +"flatted@^3.1.0": + "integrity" "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==" + "resolved" "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz" + "version" "3.2.7" + +"flowbite-datepicker@^1.2.2": + "integrity" "sha512-qOKDVtwkiOa0RrhD3sRtT45H8efAtyLiswuFIAV0UBhWSRYonzL0g1gAZwHiRRKtSmbET/8RQpQXlSEmAgadkg==" + "resolved" "https://registry.npmjs.org/flowbite-datepicker/-/flowbite-datepicker-1.2.2.tgz" + "version" "1.2.2" + dependencies: + "flowbite" "^1.4.5" + +"flowbite@^1.4.5", "flowbite@^1.6.2": + "integrity" "sha512-eI4h3pIRI9d7grlYq14r0A01KUtw7189sPLLx/O2i7JyPEWpbleScfYuEc48XTeNjk1xxm/JHgZkD9kjyOWAlA==" + "resolved" "https://registry.npmjs.org/flowbite/-/flowbite-1.6.5.tgz" + "version" "1.6.5" + dependencies: + "@popperjs/core" "^2.9.3" + "mini-svg-data-uri" "^1.4.3" + +"follow-redirects@^1.14.9": + "integrity" "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" + "resolved" "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz" + "version" "1.15.2" + +"for-each@^0.3.3": + "integrity" "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==" + "resolved" "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz" + "version" "0.3.3" + dependencies: + "is-callable" "^1.1.3" + +"foreground-child@^3.1.0": + "integrity" "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==" + "resolved" "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz" + "version" "3.1.1" + dependencies: + "cross-spawn" "^7.0.0" + "signal-exit" "^4.0.1" + +"form-data@^4.0.0": + "integrity" "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==" + "resolved" "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "asynckit" "^0.4.0" + "combined-stream" "^1.0.8" + "mime-types" "^2.1.12" + +"frac@~1.1.2": + "integrity" "sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA==" + "resolved" "https://registry.npmjs.org/frac/-/frac-1.1.2.tgz" + "version" "1.1.2" + +"fraction.js@^4.2.0": + "integrity" "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==" + "resolved" "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz" + "version" "4.2.0" + +"fs-minipass@^2.0.0", "fs-minipass@^2.1.0": + "integrity" "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==" + "resolved" "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "minipass" "^3.0.0" + +"fs.realpath@^1.0.0": + "integrity" "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + "resolved" "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" + "version" "1.0.0" + +"function-bind@^1.1.1": + "integrity" "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "resolved" "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" + "version" "1.1.1" + +"function.prototype.name@^1.1.5": + "integrity" "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==" + "resolved" "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz" + "version" "1.1.5" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + "es-abstract" "^1.19.0" + "functions-have-names" "^1.2.2" + +"functions-have-names@^1.2.2", "functions-have-names@^1.2.3": + "integrity" "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==" + "resolved" "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz" + "version" "1.2.3" + +"gauge@^4.0.3": + "integrity" "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==" + "resolved" "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz" + "version" "4.0.4" + dependencies: + "aproba" "^1.0.3 || ^2.0.0" + "color-support" "^1.1.3" + "console-control-strings" "^1.1.0" + "has-unicode" "^2.0.1" + "signal-exit" "^3.0.7" + "string-width" "^4.2.3" + "strip-ansi" "^6.0.1" + "wide-align" "^1.1.5" + +"get-caller-file@^2.0.5": + "integrity" "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + "resolved" "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" + "version" "2.0.5" + +"get-func-name@^2.0.0": + "integrity" "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==" + "resolved" "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz" + "version" "2.0.0" + +"get-intrinsic@^1.0.2", "get-intrinsic@^1.1.1", "get-intrinsic@^1.1.3", "get-intrinsic@^1.2.0": + "integrity" "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==" + "resolved" "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz" + "version" "1.2.1" + dependencies: + "function-bind" "^1.1.1" + "has" "^1.0.3" + "has-proto" "^1.0.1" + "has-symbols" "^1.0.3" + +"get-symbol-description@^1.0.0": + "integrity" "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==" + "resolved" "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "call-bind" "^1.0.2" + "get-intrinsic" "^1.1.1" + +"glob-parent@^5.1.2", "glob-parent@~5.1.2": + "integrity" "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==" + "resolved" "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" + "version" "5.1.2" + dependencies: + "is-glob" "^4.0.1" + +"glob-parent@^6.0.2": + "integrity" "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==" + "resolved" "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz" + "version" "6.0.2" + dependencies: + "is-glob" "^4.0.3" + +"glob@^10.2.2": + "integrity" "sha512-jTKehsravOJo8IJxUGfZILnkvVJM/MOfHRs8QcXolVef2zNI9Tqyy5+SeuOAZd3upViEZQLyFpQhYiHLrMUNmA==" + "resolved" "https://registry.npmjs.org/glob/-/glob-10.2.7.tgz" + "version" "10.2.7" + dependencies: + "foreground-child" "^3.1.0" + "jackspeak" "^2.0.3" + "minimatch" "^9.0.1" + "minipass" "^5.0.0 || ^6.0.2" + "path-scurry" "^1.7.0" + +"glob@^7.1.3": + "integrity" "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==" + "resolved" "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" + "version" "7.2.3" + dependencies: + "fs.realpath" "^1.0.0" + "inflight" "^1.0.4" + "inherits" "2" + "minimatch" "^3.1.1" + "once" "^1.3.0" + "path-is-absolute" "^1.0.0" + +"glob@^7.1.4": + "integrity" "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==" + "resolved" "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" + "version" "7.2.3" + dependencies: + "fs.realpath" "^1.0.0" + "inflight" "^1.0.4" + "inherits" "2" + "minimatch" "^3.1.1" + "once" "^1.3.0" + "path-is-absolute" "^1.0.0" + +"glob@^8.0.1", "glob@^8.0.3": + "integrity" "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==" + "resolved" "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz" + "version" "8.1.0" + dependencies: + "fs.realpath" "^1.0.0" + "inflight" "^1.0.4" + "inherits" "2" + "minimatch" "^5.0.1" + "once" "^1.3.0" + +"glob@7.1.6": + "integrity" "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==" + "resolved" "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz" + "version" "7.1.6" + dependencies: + "fs.realpath" "^1.0.0" + "inflight" "^1.0.4" + "inherits" "2" + "minimatch" "^3.0.4" + "once" "^1.3.0" + "path-is-absolute" "^1.0.0" + +"globals@^13.19.0": + "integrity" "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==" + "resolved" "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz" + "version" "13.20.0" + dependencies: + "type-fest" "^0.20.2" + +"globalthis@^1.0.3": + "integrity" "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==" + "resolved" "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "define-properties" "^1.1.3" + +"globby@^11.1.0": + "integrity" "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==" + "resolved" "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz" + "version" "11.1.0" + dependencies: + "array-union" "^2.1.0" + "dir-glob" "^3.0.1" + "fast-glob" "^3.2.9" + "ignore" "^5.2.0" + "merge2" "^1.4.1" + "slash" "^3.0.0" + +"gopd@^1.0.1": + "integrity" "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==" + "resolved" "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "get-intrinsic" "^1.1.3" + +"graceful-fs@^4.2.6": + "integrity" "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + "resolved" "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz" + "version" "4.2.11" + +"grapheme-splitter@^1.0.4": + "integrity" "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==" + "resolved" "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz" + "version" "1.0.4" + +"graphemer@^1.4.0": + "integrity" "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==" + "resolved" "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz" + "version" "1.4.0" + +"has-bigints@^1.0.1", "has-bigints@^1.0.2": + "integrity" "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==" + "resolved" "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz" + "version" "1.0.2" + +"has-flag@^3.0.0": + "integrity" "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" + "version" "3.0.0" + +"has-flag@^4.0.0": + "integrity" "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" + "version" "4.0.0" + +"has-property-descriptors@^1.0.0": + "integrity" "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==" + "resolved" "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "get-intrinsic" "^1.1.1" + +"has-proto@^1.0.1": + "integrity" "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==" + "resolved" "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz" + "version" "1.0.1" + +"has-symbols@^1.0.2", "has-symbols@^1.0.3": + "integrity" "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + "resolved" "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz" + "version" "1.0.3" + +"has-tostringtag@^1.0.0": + "integrity" "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==" + "resolved" "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "has-symbols" "^1.0.2" + +"has-unicode@^2.0.1": + "integrity" "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" + "resolved" "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz" + "version" "2.0.1" + +"has@^1.0.3": + "integrity" "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==" + "resolved" "https://registry.npmjs.org/has/-/has-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "function-bind" "^1.1.1" + +"he@^1.2.0": + "integrity" "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" + "resolved" "https://registry.npmjs.org/he/-/he-1.2.0.tgz" + "version" "1.2.0" + +"hosted-git-info@^2.1.4": + "integrity" "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + "resolved" "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" + "version" "2.8.9" + +"hosted-git-info@^5.0.0": + "integrity" "sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw==" + "resolved" "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz" + "version" "5.2.1" + dependencies: + "lru-cache" "^7.5.1" + +"html-encoding-sniffer@^3.0.0": + "integrity" "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==" + "resolved" "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "whatwg-encoding" "^2.0.0" + +"htmlparser2@^8.0.1": + "integrity" "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==" + "resolved" "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz" + "version" "8.0.2" + dependencies: + "domelementtype" "^2.3.0" + "domhandler" "^5.0.3" + "domutils" "^3.0.1" + "entities" "^4.4.0" + +"http-cache-semantics@^4.1.0": + "integrity" "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + "resolved" "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz" + "version" "4.1.1" + +"http-proxy-agent@^5.0.0": + "integrity" "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==" + "resolved" "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "@tootallnate/once" "2" + "agent-base" "6" + "debug" "4" + +"https-proxy-agent@^5.0.0", "https-proxy-agent@^5.0.1": + "integrity" "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==" + "resolved" "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz" + "version" "5.0.1" + dependencies: + "agent-base" "6" + "debug" "4" + +"humanize-ms@^1.2.1": + "integrity" "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==" + "resolved" "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz" + "version" "1.2.1" + dependencies: + "ms" "^2.0.0" + +"iconv-lite@^0.6.2", "iconv-lite@0.6.3": + "integrity" "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==" + "resolved" "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz" + "version" "0.6.3" + dependencies: + "safer-buffer" ">= 2.1.2 < 3.0.0" + +"ignore-walk@^5.0.1": + "integrity" "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==" + "resolved" "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz" + "version" "5.0.1" + dependencies: + "minimatch" "^5.0.1" + +"ignore@^5.0.5", "ignore@^5.1.1", "ignore@^5.2.0": + "integrity" "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==" + "resolved" "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz" + "version" "5.2.4" + +"immutable@^4.0.0": + "integrity" "sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==" + "resolved" "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz" + "version" "4.3.0" + +"import-fresh@^3.0.0", "import-fresh@^3.2.1": + "integrity" "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==" + "resolved" "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" + "version" "3.3.0" + dependencies: + "parent-module" "^1.0.0" + "resolve-from" "^4.0.0" + +"imurmurhash@^0.1.4": + "integrity" "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" + "resolved" "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" + "version" "0.1.4" + +"indent-string@^4.0.0": + "integrity" "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + "resolved" "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz" + "version" "4.0.0" + +"infer-owner@^1.0.4": + "integrity" "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" + "resolved" "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz" + "version" "1.0.4" + +"inflight@^1.0.4": + "integrity" "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==" + "resolved" "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" + "version" "1.0.6" + dependencies: + "once" "^1.3.0" + "wrappy" "1" + +"inherits@^2.0.3", "inherits@2": + "integrity" "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" + "version" "2.0.4" + +"ini@^1.3.4": + "integrity" "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + "resolved" "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz" + "version" "1.3.8" + +"ini@^4.1.0": + "integrity" "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==" + "resolved" "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz" + "version" "4.1.1" + +"internal-slot@^1.0.4", "internal-slot@^1.0.5": + "integrity" "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==" + "resolved" "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz" + "version" "1.0.5" + dependencies: + "get-intrinsic" "^1.2.0" + "has" "^1.0.3" + "side-channel" "^1.0.4" + +"ip@^2.0.0": + "integrity" "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==" + "resolved" "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz" + "version" "2.0.0" + +"is-alphabetical@^1.0.0": + "integrity" "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==" + "resolved" "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz" + "version" "1.0.4" + +"is-alphanumerical@^1.0.0": + "integrity" "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==" + "resolved" "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "is-alphabetical" "^1.0.0" + "is-decimal" "^1.0.0" + +"is-arguments@^1.1.1": + "integrity" "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==" + "resolved" "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz" + "version" "1.1.1" + dependencies: + "call-bind" "^1.0.2" + "has-tostringtag" "^1.0.0" + +"is-array-buffer@^3.0.1", "is-array-buffer@^3.0.2": + "integrity" "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==" + "resolved" "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "call-bind" "^1.0.2" + "get-intrinsic" "^1.2.0" + "is-typed-array" "^1.1.10" + +"is-arrayish@^0.2.1": + "integrity" "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + "resolved" "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" + "version" "0.2.1" + +"is-bigint@^1.0.1": + "integrity" "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==" + "resolved" "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "has-bigints" "^1.0.1" + +"is-binary-path@~2.1.0": + "integrity" "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==" + "resolved" "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" + "version" "2.1.0" + dependencies: + "binary-extensions" "^2.0.0" + +"is-boolean-object@^1.1.0": + "integrity" "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==" + "resolved" "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz" + "version" "1.1.2" + dependencies: + "call-bind" "^1.0.2" + "has-tostringtag" "^1.0.0" + +"is-builtin-module@^3.1.0": + "integrity" "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==" + "resolved" "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz" + "version" "3.2.1" + dependencies: + "builtin-modules" "^3.3.0" + +"is-callable@^1.1.3", "is-callable@^1.1.4", "is-callable@^1.2.7": + "integrity" "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" + "resolved" "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz" + "version" "1.2.7" + +"is-core-module@^2.11.0", "is-core-module@^2.8.1": + "integrity" "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==" + "resolved" "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz" + "version" "2.12.1" + dependencies: + "has" "^1.0.3" + +"is-date-object@^1.0.1", "is-date-object@^1.0.5": + "integrity" "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==" + "resolved" "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz" + "version" "1.0.5" + dependencies: + "has-tostringtag" "^1.0.0" + +"is-decimal@^1.0.0": + "integrity" "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==" + "resolved" "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz" + "version" "1.0.4" + +"is-extglob@^2.1.1": + "integrity" "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" + "resolved" "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" + "version" "2.1.1" + +"is-fullwidth-code-point@^3.0.0": + "integrity" "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + "resolved" "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" + "version" "3.0.0" + +"is-glob@^4.0.0", "is-glob@^4.0.1", "is-glob@^4.0.3", "is-glob@~4.0.1": + "integrity" "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==" + "resolved" "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" + "version" "4.0.3" + dependencies: + "is-extglob" "^2.1.1" + +"is-hexadecimal@^1.0.0": + "integrity" "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==" + "resolved" "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz" + "version" "1.0.4" + +"is-lambda@^1.0.1": + "integrity" "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" + "resolved" "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz" + "version" "1.0.1" + +"is-map@^2.0.1", "is-map@^2.0.2": + "integrity" "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==" + "resolved" "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz" + "version" "2.0.2" + +"is-negative-zero@^2.0.2": + "integrity" "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==" + "resolved" "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz" + "version" "2.0.2" + +"is-number-object@^1.0.4": + "integrity" "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==" + "resolved" "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz" + "version" "1.0.7" + dependencies: + "has-tostringtag" "^1.0.0" + +"is-number@^7.0.0": + "integrity" "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + "resolved" "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" + "version" "7.0.0" + +"is-path-inside@^3.0.3": + "integrity" "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==" + "resolved" "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz" + "version" "3.0.3" + +"is-potential-custom-element-name@^1.0.1": + "integrity" "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" + "resolved" "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz" + "version" "1.0.1" + +"is-regex@^1.1.4": + "integrity" "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==" + "resolved" "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" + "version" "1.1.4" + dependencies: + "call-bind" "^1.0.2" + "has-tostringtag" "^1.0.0" + +"is-set@^2.0.1", "is-set@^2.0.2": + "integrity" "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==" + "resolved" "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz" + "version" "2.0.2" + +"is-shared-array-buffer@^1.0.2": + "integrity" "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==" + "resolved" "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "call-bind" "^1.0.2" + +"is-string@^1.0.5", "is-string@^1.0.7": + "integrity" "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==" + "resolved" "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz" + "version" "1.0.7" + dependencies: + "has-tostringtag" "^1.0.0" + +"is-symbol@^1.0.2", "is-symbol@^1.0.3": + "integrity" "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==" + "resolved" "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "has-symbols" "^1.0.2" + +"is-typed-array@^1.1.10", "is-typed-array@^1.1.9": + "integrity" "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==" + "resolved" "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz" + "version" "1.1.10" + dependencies: + "available-typed-arrays" "^1.0.5" + "call-bind" "^1.0.2" + "for-each" "^0.3.3" + "gopd" "^1.0.1" + "has-tostringtag" "^1.0.0" + +"is-weakmap@^2.0.1": + "integrity" "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==" + "resolved" "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz" + "version" "2.0.1" + +"is-weakref@^1.0.2": + "integrity" "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==" + "resolved" "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "call-bind" "^1.0.2" + +"is-weakset@^2.0.1": + "integrity" "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==" + "resolved" "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz" + "version" "2.0.2" + dependencies: + "call-bind" "^1.0.2" + "get-intrinsic" "^1.1.1" + +"isarray@^2.0.5": + "integrity" "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + "resolved" "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz" + "version" "2.0.5" + +"isexe@^2.0.0": + "integrity" "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + "resolved" "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" + "version" "2.0.0" + +"jackspeak@^2.0.3": + "integrity" "sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw==" + "resolved" "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.1.tgz" + "version" "2.2.1" + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + +"jiti@^1.18.2": + "integrity" "sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg==" + "resolved" "https://registry.npmjs.org/jiti/-/jiti-1.18.2.tgz" + "version" "1.18.2" + +"joi@^17.7.0": + "integrity" "sha512-Itk/r+V4Dx0V3c7RLFdRh12IOjySm2/WGPMubBT92cQvRfYZhPM2W0hZlctjj72iES8jsRCwp7S/cRmWBnJ4nw==" + "resolved" "https://registry.npmjs.org/joi/-/joi-17.9.2.tgz" + "version" "17.9.2" + dependencies: + "@hapi/hoek" "^9.0.0" + "@hapi/topo" "^5.0.0" + "@sideway/address" "^4.1.3" + "@sideway/formula" "^3.0.1" + "@sideway/pinpoint" "^2.0.0" + +"js-beautify@1.14.6": + "integrity" "sha512-GfofQY5zDp+cuHc+gsEXKPpNw2KbPddreEo35O6jT6i0RVK6LhsoYBhq5TvK4/n74wnA0QbK8gGd+jUZwTMKJw==" + "resolved" "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.6.tgz" + "version" "1.14.6" + dependencies: + "config-chain" "^1.1.13" + "editorconfig" "^0.15.3" + "glob" "^8.0.3" + "nopt" "^6.0.0" + +"js-tokens@^4.0.0": + "integrity" "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "resolved" "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" + "version" "4.0.0" + +"js-yaml@^4.1.0": + "integrity" "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==" + "resolved" "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" + "version" "4.1.0" + dependencies: + "argparse" "^2.0.1" + +"jsdom@*", "jsdom@^20.0.0": + "integrity" "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==" + "resolved" "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz" + "version" "20.0.3" + dependencies: + "abab" "^2.0.6" + "acorn" "^8.8.1" + "acorn-globals" "^7.0.0" + "cssom" "^0.5.0" + "cssstyle" "^2.3.0" + "data-urls" "^3.0.2" + "decimal.js" "^10.4.2" + "domexception" "^4.0.0" + "escodegen" "^2.0.0" + "form-data" "^4.0.0" + "html-encoding-sniffer" "^3.0.0" + "http-proxy-agent" "^5.0.0" + "https-proxy-agent" "^5.0.1" + "is-potential-custom-element-name" "^1.0.1" + "nwsapi" "^2.2.2" + "parse5" "^7.1.1" + "saxes" "^6.0.0" + "symbol-tree" "^3.2.4" + "tough-cookie" "^4.1.2" + "w3c-xmlserializer" "^4.0.0" + "webidl-conversions" "^7.0.0" + "whatwg-encoding" "^2.0.0" + "whatwg-mimetype" "^3.0.0" + "whatwg-url" "^11.0.0" + "ws" "^8.11.0" + "xml-name-validator" "^4.0.0" + +"json-parse-even-better-errors@^2.3.0", "json-parse-even-better-errors@^2.3.1": + "integrity" "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + "resolved" "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz" + "version" "2.3.1" + +"json-parse-even-better-errors@^3.0.0": + "integrity" "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==" + "resolved" "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz" + "version" "3.0.0" + +"json-schema-traverse@^0.4.1": + "integrity" "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" + "version" "0.4.1" + +"json-stable-stringify-without-jsonify@^1.0.1": + "integrity" "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" + "resolved" "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" + "version" "1.0.1" + +"json5@^1.0.2": + "integrity" "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==" + "resolved" "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "minimist" "^1.2.0" + +"json5@^2.2.1": + "integrity" "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==" + "resolved" "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" + "version" "2.2.3" + +"jsonc-eslint-parser@^2.0.4", "jsonc-eslint-parser@^2.1.0": + "integrity" "sha512-9xZPKVYp9DxnM3sd1yAsh/d59iIaswDkai8oTxbursfKYbg/ibjX0IzFt35+VZ8iEW453TVTXztnRvYUQlAfUQ==" + "resolved" "https://registry.npmjs.org/jsonc-eslint-parser/-/jsonc-eslint-parser-2.3.0.tgz" + "version" "2.3.0" + dependencies: + "acorn" "^8.5.0" + "eslint-visitor-keys" "^3.0.0" + "espree" "^9.0.0" + "semver" "^7.3.5" + +"jsonc-parser@^3.2.0": + "integrity" "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==" + "resolved" "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz" + "version" "3.2.0" + +"jsonparse@^1.3.1": + "integrity" "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==" + "resolved" "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz" + "version" "1.3.1" + +"kleur@^3.0.3": + "integrity" "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==" + "resolved" "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz" + "version" "3.0.3" + +"levn@^0.4.1": + "integrity" "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==" + "resolved" "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" + "version" "0.4.1" + dependencies: + "prelude-ls" "^1.2.1" + "type-check" "~0.4.0" + +"levn@~0.3.0": + "integrity" "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==" + "resolved" "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz" + "version" "0.3.0" + dependencies: + "prelude-ls" "~1.1.2" + "type-check" "~0.3.2" + +"lilconfig@^2.0.5", "lilconfig@^2.1.0": + "integrity" "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==" + "resolved" "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz" + "version" "2.1.0" + +"lines-and-columns@^1.1.6": + "integrity" "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + "resolved" "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz" + "version" "1.2.4" + +"local-pkg@^0.4.2", "local-pkg@^0.4.3": + "integrity" "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==" + "resolved" "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz" + "version" "0.4.3" + +"locate-path@^5.0.0": + "integrity" "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==" + "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "p-locate" "^4.1.0" + +"locate-path@^6.0.0": + "integrity" "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==" + "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "p-locate" "^5.0.0" + +"lodash-es@^4.17.21": + "integrity" "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + "resolved" "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz" + "version" "4.17.21" + +"lodash.merge@^4.6.2": + "integrity" "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + "resolved" "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" + "version" "4.6.2" + +"lodash@^4.17.21": + "integrity" "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "resolved" "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" + "version" "4.17.21" + +"loupe@^2.3.1": + "integrity" "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==" + "resolved" "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz" + "version" "2.3.6" + dependencies: + "get-func-name" "^2.0.0" + +"lru-cache@^4.1.5": + "integrity" "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==" + "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz" + "version" "4.1.5" + dependencies: + "pseudomap" "^1.0.2" + "yallist" "^2.1.2" + +"lru-cache@^6.0.0": + "integrity" "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==" + "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "yallist" "^4.0.0" + +"lru-cache@^7.4.4", "lru-cache@^7.5.1", "lru-cache@^7.7.1": + "integrity" "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==" + "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz" + "version" "7.18.3" + +"lru-cache@^9.1.1": + "integrity" "sha512-ERJq3FOzJTxBbFjZ7iDs+NiK4VI9Wz+RdrrAB8dio1oV+YvdPzUEE4QNiT2VD51DkIbCYRUUzCRkssXCHqSnKQ==" + "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.2.tgz" + "version" "9.1.2" + +"magic-string@^0.26.7": + "integrity" "sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==" + "resolved" "https://registry.npmjs.org/magic-string/-/magic-string-0.26.7.tgz" + "version" "0.26.7" + dependencies: + "sourcemap-codec" "^1.4.8" + +"magic-string@^0.27.0": + "integrity" "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==" + "resolved" "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz" + "version" "0.27.0" + dependencies: + "@jridgewell/sourcemap-codec" "^1.4.13" + +"magic-string@^0.30.0": + "integrity" "sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==" + "resolved" "https://registry.npmjs.org/magic-string/-/magic-string-0.30.0.tgz" + "version" "0.30.0" + dependencies: + "@jridgewell/sourcemap-codec" "^1.4.13" + +"make-fetch-happen@^10.0.3", "make-fetch-happen@^10.0.6": + "integrity" "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==" + "resolved" "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz" + "version" "10.2.1" + dependencies: + "agentkeepalive" "^4.2.1" + "cacache" "^16.1.0" + "http-cache-semantics" "^4.1.0" + "http-proxy-agent" "^5.0.0" + "https-proxy-agent" "^5.0.0" + "is-lambda" "^1.0.1" + "lru-cache" "^7.7.1" + "minipass" "^3.1.6" + "minipass-collect" "^1.0.2" + "minipass-fetch" "^2.0.3" + "minipass-flush" "^1.0.5" + "minipass-pipeline" "^1.2.4" + "negotiator" "^0.6.3" + "promise-retry" "^2.0.1" + "socks-proxy-agent" "^7.0.0" + "ssri" "^9.0.0" + +"mdast-util-from-markdown@^0.8.5": + "integrity" "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==" + "resolved" "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz" + "version" "0.8.5" + dependencies: + "@types/mdast" "^3.0.0" + "mdast-util-to-string" "^2.0.0" + "micromark" "~2.11.0" + "parse-entities" "^2.0.0" + "unist-util-stringify-position" "^2.0.0" + +"mdast-util-to-string@^2.0.0": + "integrity" "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==" + "resolved" "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz" + "version" "2.0.0" + +"merge2@^1.3.0", "merge2@^1.4.1": + "integrity" "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" + "resolved" "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" + "version" "1.4.1" + +"micromark@~2.11.0": + "integrity" "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==" + "resolved" "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz" + "version" "2.11.4" + dependencies: + "debug" "^4.0.0" + "parse-entities" "^2.0.0" + +"micromatch@^4.0.4", "micromatch@^4.0.5": + "integrity" "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==" + "resolved" "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" + "version" "4.0.5" + dependencies: + "braces" "^3.0.2" + "picomatch" "^2.3.1" + +"mime-db@1.52.0": + "integrity" "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + "resolved" "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" + "version" "1.52.0" + +"mime-types@^2.1.12": + "integrity" "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==" + "resolved" "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" + "version" "2.1.35" + dependencies: + "mime-db" "1.52.0" + +"min-indent@^1.0.0": + "integrity" "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==" + "resolved" "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz" + "version" "1.0.1" + +"mini-svg-data-uri@^1.4.3": + "integrity" "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==" + "resolved" "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz" + "version" "1.4.4" + +"minimatch@^3.0.4", "minimatch@^3.0.5", "minimatch@^3.1.1", "minimatch@^3.1.2": + "integrity" "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==" + "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" + "version" "3.1.2" + dependencies: + "brace-expansion" "^1.1.7" + +"minimatch@^5.0.1": + "integrity" "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==" + "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz" + "version" "5.1.6" + dependencies: + "brace-expansion" "^2.0.1" + +"minimatch@^5.1.1": + "integrity" "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==" + "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz" + "version" "5.1.6" + dependencies: + "brace-expansion" "^2.0.1" + +"minimatch@^9.0.0", "minimatch@^9.0.1": + "integrity" "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==" + "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz" + "version" "9.0.1" + dependencies: + "brace-expansion" "^2.0.1" + +"minimist@^1.2.0", "minimist@^1.2.6": + "integrity" "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" + "resolved" "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz" + "version" "1.2.8" + +"minipass-collect@^1.0.2": + "integrity" "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==" + "resolved" "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "minipass" "^3.0.0" + +"minipass-fetch@^2.0.3": + "integrity" "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==" + "resolved" "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz" + "version" "2.1.2" + dependencies: + "minipass" "^3.1.6" + "minipass-sized" "^1.0.3" + "minizlib" "^2.1.2" + optionalDependencies: + "encoding" "^0.1.13" + +"minipass-flush@^1.0.5": + "integrity" "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==" + "resolved" "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz" + "version" "1.0.5" + dependencies: + "minipass" "^3.0.0" + +"minipass-json-stream@^1.0.1": + "integrity" "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==" + "resolved" "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "jsonparse" "^1.3.1" + "minipass" "^3.0.0" + +"minipass-pipeline@^1.2.4": + "integrity" "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==" + "resolved" "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz" + "version" "1.2.4" + dependencies: + "minipass" "^3.0.0" + +"minipass-sized@^1.0.3": + "integrity" "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==" + "resolved" "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "minipass" "^3.0.0" + +"minipass@^3.0.0", "minipass@^3.1.1", "minipass@^3.1.6": + "integrity" "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==" + "resolved" "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz" + "version" "3.3.6" + dependencies: + "yallist" "^4.0.0" + +"minipass@^5.0.0 || ^6.0.2": + "integrity" "sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w==" + "resolved" "https://registry.npmjs.org/minipass/-/minipass-6.0.2.tgz" + "version" "6.0.2" + +"minipass@^5.0.0": + "integrity" "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==" + "resolved" "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz" + "version" "5.0.0" + +"minizlib@^2.1.1", "minizlib@^2.1.2": + "integrity" "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==" + "resolved" "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz" + "version" "2.1.2" + dependencies: + "minipass" "^3.0.0" + "yallist" "^4.0.0" + +"mkdirp@^1.0.3", "mkdirp@^1.0.4": + "integrity" "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + "resolved" "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz" + "version" "1.0.4" + +"mlly@^1.1.0", "mlly@^1.2.0": + "integrity" "sha512-HT5mcgIQKkOrZecOjOX3DJorTikWXwsBfpcr/MGBkhfWcjiqvnaL/9ppxvIUXfjT6xt4DVIAsN9fMUz1ev4bIw==" + "resolved" "https://registry.npmjs.org/mlly/-/mlly-1.3.0.tgz" + "version" "1.3.0" + dependencies: + "acorn" "^8.8.2" + "pathe" "^1.1.0" + "pkg-types" "^1.0.3" + "ufo" "^1.1.2" + +"moment@^2.29.3": + "integrity" "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==" + "resolved" "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz" + "version" "2.29.4" + +"ms@^2.0.0", "ms@^2.1.1": + "integrity" "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" + "version" "2.1.3" + +"ms@2.1.2": + "integrity" "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" + "version" "2.1.2" + +"muggle-string@^0.2.2": + "integrity" "sha512-YVE1mIJ4VpUMqZObFndk9CJu6DBJR/GB13p3tXuNbwD4XExaI5EOuRl6BHeIDxIqXZVxSfAC+y6U1Z/IxCfKUg==" + "resolved" "https://registry.npmjs.org/muggle-string/-/muggle-string-0.2.2.tgz" + "version" "0.2.2" + +"mz@^2.7.0": + "integrity" "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==" + "resolved" "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz" + "version" "2.7.0" + dependencies: + "any-promise" "^1.0.0" + "object-assign" "^4.0.1" + "thenify-all" "^1.0.0" + +"nanoclone@^0.2.1": + "integrity" "sha512-wynEP02LmIbLpcYw8uBKpcfF6dmg2vcpKqxeH5UcoKEYdExslsdUA4ugFauuaeYdTB76ez6gJW8XAZ6CgkXYxA==" + "resolved" "https://registry.npmjs.org/nanoclone/-/nanoclone-0.2.1.tgz" + "version" "0.2.1" + +"nanoid@^3.3.6": + "integrity" "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==" + "resolved" "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz" + "version" "3.3.6" + +"natural-compare-lite@^1.4.0": + "integrity" "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==" + "resolved" "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz" + "version" "1.4.0" + +"natural-compare@^1.4.0": + "integrity" "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + "resolved" "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" + "version" "1.4.0" + +"negotiator@^0.6.3": + "integrity" "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" + "resolved" "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz" + "version" "0.6.3" + +"node-gyp@^9.0.0": + "integrity" "sha512-4Q16ZCqq3g8awk6UplT7AuxQ35XN4R/yf/+wSAwcBUAjg7l58RTactWaP8fIDTi0FzI7YcVLujwExakZlfWkXg==" + "resolved" "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.1.tgz" + "version" "9.3.1" + dependencies: + "env-paths" "^2.2.0" + "glob" "^7.1.4" + "graceful-fs" "^4.2.6" + "make-fetch-happen" "^10.0.3" + "nopt" "^6.0.0" + "npmlog" "^6.0.0" + "rimraf" "^3.0.2" + "semver" "^7.3.5" + "tar" "^6.1.2" + "which" "^2.0.2" + +"node-releases@^2.0.12": + "integrity" "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==" + "resolved" "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz" + "version" "2.0.12" + +"nopt@^6.0.0": + "integrity" "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==" + "resolved" "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "abbrev" "^1.0.0" + +"nopt@^7.0.0": + "integrity" "sha512-ZFPLe9Iu0tnx7oWhFxAo4s7QTn8+NNDDxYNaKLjE7Dp0tbakQ3M1QhQzsnzXHQBTUO3K9BmwaxnyO8Ayn2I95Q==" + "resolved" "https://registry.npmjs.org/nopt/-/nopt-7.1.0.tgz" + "version" "7.1.0" + dependencies: + "abbrev" "^2.0.0" + +"normalize-package-data@^2.5.0": + "integrity" "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==" + "resolved" "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" + "version" "2.5.0" + dependencies: + "hosted-git-info" "^2.1.4" + "resolve" "^1.10.0" + "semver" "2 || 3 || 4 || 5" + "validate-npm-package-license" "^3.0.1" + +"normalize-package-data@^4.0.0": + "integrity" "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==" + "resolved" "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz" + "version" "4.0.1" + dependencies: + "hosted-git-info" "^5.0.0" + "is-core-module" "^2.8.1" + "semver" "^7.3.5" + "validate-npm-package-license" "^3.0.4" + +"normalize-path@^3.0.0", "normalize-path@~3.0.0": + "integrity" "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + "resolved" "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" + "version" "3.0.0" + +"normalize-range@^0.1.2": + "integrity" "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==" + "resolved" "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz" + "version" "0.1.2" + +"npm-bundled@^1.1.1": + "integrity" "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==" + "resolved" "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz" + "version" "1.1.2" + dependencies: + "npm-normalize-package-bin" "^1.0.1" + +"npm-bundled@^2.0.0": + "integrity" "sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw==" + "resolved" "https://registry.npmjs.org/npm-bundled/-/npm-bundled-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "npm-normalize-package-bin" "^2.0.0" + +"npm-install-checks@^5.0.0": + "integrity" "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==" + "resolved" "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "semver" "^7.1.1" + +"npm-normalize-package-bin@^1.0.1": + "integrity" "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==" + "resolved" "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz" + "version" "1.0.1" + +"npm-normalize-package-bin@^2.0.0": + "integrity" "sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==" + "resolved" "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz" + "version" "2.0.0" + +"npm-normalize-package-bin@^3.0.0": + "integrity" "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==" + "resolved" "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz" + "version" "3.0.1" + +"npm-package-arg@^9.0.0", "npm-package-arg@^9.0.1": + "integrity" "sha512-pzd9rLEx4TfNJkovvlBSLGhq31gGu2QDexFPWT19yCDh0JgnRhlBLNo5759N0AJmBk+kQ9Y/hXoLnlgFD+ukmg==" + "resolved" "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.2.tgz" + "version" "9.1.2" + dependencies: + "hosted-git-info" "^5.0.0" + "proc-log" "^2.0.1" + "semver" "^7.3.5" + "validate-npm-package-name" "^4.0.0" + +"npm-packlist@^5.1.0": + "integrity" "sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg==" + "resolved" "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.3.tgz" + "version" "5.1.3" + dependencies: + "glob" "^8.0.1" + "ignore-walk" "^5.0.1" + "npm-bundled" "^2.0.0" + "npm-normalize-package-bin" "^2.0.0" + +"npm-pick-manifest@^7.0.0": + "integrity" "sha512-gk37SyRmlIjvTfcYl6RzDbSmS9Y4TOBXfsPnoYqTHARNgWbyDiCSMLUpmALDj4jjcTZpURiEfsSHJj9k7EV4Rw==" + "resolved" "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.2.tgz" + "version" "7.0.2" + dependencies: + "npm-install-checks" "^5.0.0" + "npm-normalize-package-bin" "^2.0.0" + "npm-package-arg" "^9.0.0" + "semver" "^7.3.5" + +"npm-registry-fetch@^13.0.1": + "integrity" "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==" + "resolved" "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz" + "version" "13.3.1" + dependencies: + "make-fetch-happen" "^10.0.6" + "minipass" "^3.1.6" + "minipass-fetch" "^2.0.3" + "minipass-json-stream" "^1.0.1" + "minizlib" "^2.1.2" + "npm-package-arg" "^9.0.1" + "proc-log" "^2.0.0" + +"npmlog@^6.0.0": + "integrity" "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==" + "resolved" "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz" + "version" "6.0.2" + dependencies: + "are-we-there-yet" "^3.0.0" + "console-control-strings" "^1.1.0" + "gauge" "^4.0.3" + "set-blocking" "^2.0.0" + +"nth-check@^2.0.1": + "integrity" "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==" + "resolved" "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz" + "version" "2.1.1" + dependencies: + "boolbase" "^1.0.0" + +"nwsapi@^2.2.2": + "integrity" "sha512-6xpotnECFy/og7tKSBVmUNft7J3jyXAka4XvG6AUhFWRz+Q/Ljus7znJAA3bxColfQLdS+XsjoodtJfCgeTEFQ==" + "resolved" "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.5.tgz" + "version" "2.2.5" + +"object-assign@^4.0.1": + "integrity" "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + "resolved" "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + "version" "4.1.1" + +"object-hash@^3.0.0": + "integrity" "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==" + "resolved" "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz" + "version" "3.0.0" + +"object-inspect@^1.12.3", "object-inspect@^1.9.0": + "integrity" "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==" + "resolved" "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz" + "version" "1.12.3" + +"object-is@^1.1.5": + "integrity" "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==" + "resolved" "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz" + "version" "1.1.5" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.3" + +"object-keys@^1.1.1": + "integrity" "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + "resolved" "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" + "version" "1.1.1" + +"object.assign@^4.1.4": + "integrity" "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==" + "resolved" "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz" + "version" "4.1.4" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.4" + "has-symbols" "^1.0.3" + "object-keys" "^1.1.1" + +"object.values@^1.1.6": + "integrity" "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==" + "resolved" "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz" + "version" "1.1.6" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.4" + "es-abstract" "^1.20.4" + +"once@^1.3.0": + "integrity" "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==" + "resolved" "https://registry.npmjs.org/once/-/once-1.4.0.tgz" + "version" "1.4.0" + dependencies: + "wrappy" "1" + +"optionator@^0.8.1": + "integrity" "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==" + "resolved" "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz" + "version" "0.8.3" + dependencies: + "deep-is" "~0.1.3" + "fast-levenshtein" "~2.0.6" + "levn" "~0.3.0" + "prelude-ls" "~1.1.2" + "type-check" "~0.3.2" + "word-wrap" "~1.2.3" + +"optionator@^0.9.1": + "integrity" "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==" + "resolved" "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" + "version" "0.9.1" + dependencies: + "deep-is" "^0.1.3" + "fast-levenshtein" "^2.0.6" + "levn" "^0.4.1" + "prelude-ls" "^1.2.1" + "type-check" "^0.4.0" + "word-wrap" "^1.2.3" + +"p-limit@^2.2.0": + "integrity" "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==" + "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" + "version" "2.3.0" + dependencies: + "p-try" "^2.0.0" + +"p-limit@^3.0.2": + "integrity" "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==" + "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "yocto-queue" "^0.1.0" + +"p-locate@^4.1.0": + "integrity" "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==" + "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz" + "version" "4.1.0" + dependencies: + "p-limit" "^2.2.0" + +"p-locate@^5.0.0": + "integrity" "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==" + "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" + "version" "5.0.0" + dependencies: + "p-limit" "^3.0.2" + +"p-map@^4.0.0": + "integrity" "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==" + "resolved" "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "aggregate-error" "^3.0.0" + +"p-try@^2.0.0": + "integrity" "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + "resolved" "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" + "version" "2.2.0" + +"pacote@^13": + "integrity" "sha512-Gu8fU3GsvOPkak2CkbojR7vjs3k3P9cA6uazKTHdsdV0gpCEQq2opelnEv30KRQWgVzP5Vd/5umjcedma3MKtg==" + "resolved" "https://registry.npmjs.org/pacote/-/pacote-13.6.2.tgz" + "version" "13.6.2" + dependencies: + "@npmcli/git" "^3.0.0" + "@npmcli/installed-package-contents" "^1.0.7" + "@npmcli/promise-spawn" "^3.0.0" + "@npmcli/run-script" "^4.1.0" + "cacache" "^16.0.0" + "chownr" "^2.0.0" + "fs-minipass" "^2.1.0" + "infer-owner" "^1.0.4" + "minipass" "^3.1.6" + "mkdirp" "^1.0.4" + "npm-package-arg" "^9.0.0" + "npm-packlist" "^5.1.0" + "npm-pick-manifest" "^7.0.0" + "npm-registry-fetch" "^13.0.1" + "proc-log" "^2.0.0" + "promise-retry" "^2.0.1" + "read-package-json" "^5.0.0" + "read-package-json-fast" "^2.0.3" + "rimraf" "^3.0.2" + "ssri" "^9.0.0" + "tar" "^6.1.11" + +"parent-module@^1.0.0": + "integrity" "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==" + "resolved" "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "callsites" "^3.0.0" + +"parse-code-context@^1.0.0": + "integrity" "sha512-OZQaqKaQnR21iqhlnPfVisFjBWjhnMl5J9MgbP8xC+EwoVqbXrq78lp+9Zb3ahmLzrIX5Us/qbvBnaS3hkH6OA==" + "resolved" "https://registry.npmjs.org/parse-code-context/-/parse-code-context-1.0.0.tgz" + "version" "1.0.0" + +"parse-entities@^2.0.0": + "integrity" "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==" + "resolved" "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "character-entities" "^1.0.0" + "character-entities-legacy" "^1.0.0" + "character-reference-invalid" "^1.0.0" + "is-alphanumerical" "^1.0.0" + "is-decimal" "^1.0.0" + "is-hexadecimal" "^1.0.0" + +"parse-json@^5.0.0": + "integrity" "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==" + "resolved" "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz" + "version" "5.2.0" + dependencies: + "@babel/code-frame" "^7.0.0" + "error-ex" "^1.3.1" + "json-parse-even-better-errors" "^2.3.0" + "lines-and-columns" "^1.1.6" + +"parse5@^7.1.1": + "integrity" "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==" + "resolved" "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz" + "version" "7.1.2" + dependencies: + "entities" "^4.4.0" + +"path-exists@^4.0.0": + "integrity" "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" + "version" "4.0.0" + +"path-is-absolute@^1.0.0": + "integrity" "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" + "resolved" "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + "version" "1.0.1" + +"path-key@^3.1.0": + "integrity" "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + "resolved" "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" + "version" "3.1.1" + +"path-parse@^1.0.7": + "integrity" "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + "resolved" "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" + "version" "1.0.7" + +"path-scurry@^1.7.0": + "integrity" "sha512-qSDLy2aGFPm8i4rsbHd4MNyTcrzHFsLQykrtbuGRknZZCBBVXSv2tSCDN2Cg6Rt/GFRw8GoW9y9Ecw5rIPG1sg==" + "resolved" "https://registry.npmjs.org/path-scurry/-/path-scurry-1.9.2.tgz" + "version" "1.9.2" + dependencies: + "lru-cache" "^9.1.1" + "minipass" "^5.0.0 || ^6.0.2" + +"path-type@^4.0.0": + "integrity" "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" + "resolved" "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" + "version" "4.0.0" + +"pathe@^1.0.0", "pathe@^1.1.0": + "integrity" "sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==" + "resolved" "https://registry.npmjs.org/pathe/-/pathe-1.1.1.tgz" + "version" "1.1.1" + +"pathval@^1.1.1": + "integrity" "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==" + "resolved" "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz" + "version" "1.1.1" + +"picocolors@^1.0.0": + "integrity" "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "resolved" "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz" + "version" "1.0.0" + +"picomatch@^2.0.4", "picomatch@^2.2.1", "picomatch@^2.3.1": + "integrity" "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" + "resolved" "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" + "version" "2.3.1" + +"pify@^2.3.0": + "integrity" "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==" + "resolved" "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz" + "version" "2.3.0" + +"pirates@^4.0.1": + "integrity" "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==" + "resolved" "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz" + "version" "4.0.5" + +"pkg-types@^1.0.1", "pkg-types@^1.0.3": + "integrity" "sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==" + "resolved" "https://registry.npmjs.org/pkg-types/-/pkg-types-1.0.3.tgz" + "version" "1.0.3" + dependencies: + "jsonc-parser" "^3.2.0" + "mlly" "^1.2.0" + "pathe" "^1.1.0" + +"pluralize@^8.0.0": + "integrity" "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==" + "resolved" "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz" + "version" "8.0.0" + +"postcss-import@^15.1.0": + "integrity" "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==" + "resolved" "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz" + "version" "15.1.0" + dependencies: + "postcss-value-parser" "^4.0.0" + "read-cache" "^1.0.0" + "resolve" "^1.1.7" + +"postcss-js@^4.0.1": + "integrity" "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==" + "resolved" "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz" + "version" "4.0.1" + dependencies: + "camelcase-css" "^2.0.1" + +"postcss-load-config@^4.0.1": + "integrity" "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==" + "resolved" "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz" + "version" "4.0.1" + dependencies: + "lilconfig" "^2.0.5" + "yaml" "^2.1.1" + +"postcss-nested@^6.0.1": + "integrity" "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==" + "resolved" "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz" + "version" "6.0.1" + dependencies: + "postcss-selector-parser" "^6.0.11" + +"postcss-selector-parser@^6.0.11", "postcss-selector-parser@^6.0.9": + "integrity" "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==" + "resolved" "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz" + "version" "6.0.13" + dependencies: + "cssesc" "^3.0.0" + "util-deprecate" "^1.0.2" + +"postcss-value-parser@^4.0.0", "postcss-value-parser@^4.2.0": + "integrity" "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + "resolved" "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz" + "version" "4.2.0" + +"postcss@^8.0.0", "postcss@^8.1.0", "postcss@^8.1.10", "postcss@^8.2.14", "postcss@^8.4.18", "postcss@^8.4.21", "postcss@^8.4.23", "postcss@>=8.0.9": + "integrity" "sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==" + "resolved" "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz" + "version" "8.4.24" + dependencies: + "nanoid" "^3.3.6" + "picocolors" "^1.0.0" + "source-map-js" "^1.0.2" + +"prelude-ls@^1.2.1": + "integrity" "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==" + "resolved" "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" + "version" "1.2.1" + +"prelude-ls@~1.1.2": + "integrity" "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==" + "resolved" "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz" + "version" "1.1.2" + +"prettier-linter-helpers@^1.0.0": + "integrity" "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==" + "resolved" "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "fast-diff" "^1.1.2" + +"prettier@^2.7.1", "prettier@>=2.0.0": + "integrity" "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==" + "resolved" "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz" + "version" "2.8.8" + +"proc-log@^2.0.0", "proc-log@^2.0.1": + "integrity" "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==" + "resolved" "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz" + "version" "2.0.1" + +"proc-log@^3.0.0": + "integrity" "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==" + "resolved" "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz" + "version" "3.0.0" + +"promise-inflight@^1.0.1": + "integrity" "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" + "resolved" "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz" + "version" "1.0.1" + +"promise-retry@^2.0.1": + "integrity" "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==" + "resolved" "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "err-code" "^2.0.2" + "retry" "^0.12.0" + +"prompts@^2.4.2": + "integrity" "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==" + "resolved" "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz" + "version" "2.4.2" + dependencies: + "kleur" "^3.0.3" + "sisteransi" "^1.0.5" + +"property-expr@^2.0.4": + "integrity" "sha512-IJUkICM5dP5znhCckHSv30Q4b5/JA5enCtkRHYaOVOAocnH/1BQEYTC5NMfT3AVl/iXKdr3aqQbQn9DxyWknwA==" + "resolved" "https://registry.npmjs.org/property-expr/-/property-expr-2.0.5.tgz" + "version" "2.0.5" + +"proto-list@~1.2.1": + "integrity" "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==" + "resolved" "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz" + "version" "1.2.4" + +"pseudomap@^1.0.2": + "integrity" "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + "resolved" "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz" + "version" "1.0.2" + +"psl@^1.1.33": + "integrity" "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" + "resolved" "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz" + "version" "1.9.0" + +"punycode@^2.1.0", "punycode@^2.1.1": + "integrity" "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==" + "resolved" "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz" + "version" "2.3.0" + +"querystringify@^2.1.1": + "integrity" "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + "resolved" "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz" + "version" "2.2.0" + +"queue-microtask@^1.2.2": + "integrity" "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" + "resolved" "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" + "version" "1.2.3" + +"read-cache@^1.0.0": + "integrity" "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==" + "resolved" "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "pify" "^2.3.0" + +"read-package-json-fast@^2.0.3": + "integrity" "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==" + "resolved" "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz" + "version" "2.0.3" + dependencies: + "json-parse-even-better-errors" "^2.3.0" + "npm-normalize-package-bin" "^1.0.1" + +"read-package-json-fast@^3.0.0": + "integrity" "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==" + "resolved" "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "json-parse-even-better-errors" "^3.0.0" + "npm-normalize-package-bin" "^3.0.0" + +"read-package-json-fast@^3.0.2": + "integrity" "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==" + "resolved" "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "json-parse-even-better-errors" "^3.0.0" + "npm-normalize-package-bin" "^3.0.0" + +"read-package-json@^5.0.0": + "integrity" "sha512-BSzugrt4kQ/Z0krro8zhTwV1Kd79ue25IhNN/VtHFy1mG/6Tluyi+msc0UpwaoQzxSHa28mntAjIZY6kEgfR9Q==" + "resolved" "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.2.tgz" + "version" "5.0.2" + dependencies: + "glob" "^8.0.1" + "json-parse-even-better-errors" "^2.3.1" + "normalize-package-data" "^4.0.0" + "npm-normalize-package-bin" "^2.0.0" + +"read-pkg-up@^7.0.1": + "integrity" "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==" + "resolved" "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz" + "version" "7.0.1" + dependencies: + "find-up" "^4.1.0" + "read-pkg" "^5.2.0" + "type-fest" "^0.8.1" + +"read-pkg@^5.2.0": + "integrity" "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==" + "resolved" "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz" + "version" "5.2.0" + dependencies: + "@types/normalize-package-data" "^2.4.0" + "normalize-package-data" "^2.5.0" + "parse-json" "^5.0.0" + "type-fest" "^0.6.0" + +"readable-stream@^3.6.0": + "integrity" "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==" + "resolved" "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz" + "version" "3.6.2" + dependencies: + "inherits" "^2.0.3" + "string_decoder" "^1.1.1" + "util-deprecate" "^1.0.1" + +"readdirp@~3.6.0": + "integrity" "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==" + "resolved" "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz" + "version" "3.6.0" + dependencies: + "picomatch" "^2.2.1" + +"regenerator-runtime@^0.13.11": + "integrity" "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + "resolved" "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz" + "version" "0.13.11" + +"regexp-tree@^0.1.24", "regexp-tree@~0.1.1": + "integrity" "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==" + "resolved" "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz" + "version" "0.1.27" + +"regexp.prototype.flags@^1.4.3", "regexp.prototype.flags@^1.5.0": + "integrity" "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==" + "resolved" "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz" + "version" "1.5.0" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.2.0" + "functions-have-names" "^1.2.3" + +"regexpp@^3.0.0": + "integrity" "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==" + "resolved" "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" + "version" "3.2.0" + +"require-directory@^2.1.1": + "integrity" "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" + "resolved" "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" + "version" "2.1.1" + +"requires-port@^1.0.0": + "integrity" "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + "resolved" "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz" + "version" "1.0.0" + +"resolve-from@^4.0.0": + "integrity" "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" + "resolved" "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" + "version" "4.0.0" + +"resolve@^1.1.7", "resolve@^1.10.0", "resolve@^1.22.1", "resolve@^1.22.2": + "integrity" "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==" + "resolved" "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz" + "version" "1.22.2" + dependencies: + "is-core-module" "^2.11.0" + "path-parse" "^1.0.7" + "supports-preserve-symlinks-flag" "^1.0.0" + +"retry@^0.12.0": + "integrity" "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==" + "resolved" "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz" + "version" "0.12.0" + +"reusify@^1.0.4": + "integrity" "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" + "resolved" "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz" + "version" "1.0.4" + +"rimraf@^3.0.2": + "integrity" "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==" + "resolved" "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" + "version" "3.0.2" + dependencies: + "glob" "^7.1.3" + +"rollup@^1.20.0||^2.0.0||^3.0.0", "rollup@^2.79.1": + "integrity" "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==" + "resolved" "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz" + "version" "2.79.1" + optionalDependencies: + "fsevents" "~2.3.2" + +"run-parallel@^1.1.9": + "integrity" "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==" + "resolved" "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" + "version" "1.2.0" + dependencies: + "queue-microtask" "^1.2.2" + +"safe-buffer@~5.2.0": + "integrity" "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" + "version" "5.2.1" + +"safe-regex-test@^1.0.0": + "integrity" "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==" + "resolved" "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "call-bind" "^1.0.2" + "get-intrinsic" "^1.1.3" + "is-regex" "^1.1.4" + +"safe-regex@^2.1.1": + "integrity" "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==" + "resolved" "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz" + "version" "2.1.1" + dependencies: + "regexp-tree" "~0.1.1" + +"safer-buffer@>= 2.1.2 < 3.0.0": + "integrity" "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "resolved" "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" + "version" "2.1.2" + +"sass@*", "sass@^1.56.0": + "integrity" "sha512-NHpxIzN29MXvWiuswfc1W3I0N8SXBd8UR26WntmDlRYf0bSADnwnOjsyMZ3lMezSlArD33Vs3YFhp7dWvL770A==" + "resolved" "https://registry.npmjs.org/sass/-/sass-1.62.1.tgz" + "version" "1.62.1" + dependencies: + "chokidar" ">=3.0.0 <4.0.0" + "immutable" "^4.0.0" + "source-map-js" ">=0.6.2 <2.0.0" + +"saxes@^6.0.0": + "integrity" "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==" + "resolved" "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz" + "version" "6.0.0" + dependencies: + "xmlchars" "^2.2.0" + +"scule@^1.0.0": + "integrity" "sha512-4AsO/FrViE/iDNEPaAQlb77tf0csuq27EsVpy6ett584EcRTp6pTDLoGWVxCD77y5iU5FauOvhsI4o1APwPoSQ==" + "resolved" "https://registry.npmjs.org/scule/-/scule-1.0.0.tgz" + "version" "1.0.0" + +"semver@^5.6.0": + "integrity" "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + "resolved" "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" + "version" "5.7.1" + +"semver@^6.3.0": + "integrity" "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + "resolved" "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" + "version" "6.3.0" + +"semver@^7.0.0", "semver@^7.1.1", "semver@^7.3.5", "semver@^7.3.6", "semver@^7.3.7", "semver@^7.3.8": + "integrity" "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==" + "resolved" "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz" + "version" "7.5.1" + dependencies: + "lru-cache" "^6.0.0" + +"semver@2 || 3 || 4 || 5": + "integrity" "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + "resolved" "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" + "version" "5.7.1" + +"set-blocking@^2.0.0": + "integrity" "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" + "resolved" "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz" + "version" "2.0.0" + +"shebang-command@^2.0.0": + "integrity" "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==" + "resolved" "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "shebang-regex" "^3.0.0" + +"shebang-regex@^3.0.0": + "integrity" "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + "resolved" "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" + "version" "3.0.0" + +"side-channel@^1.0.4": + "integrity" "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==" + "resolved" "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "call-bind" "^1.0.0" + "get-intrinsic" "^1.0.2" + "object-inspect" "^1.9.0" + +"sigmund@^1.0.1": + "integrity" "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==" + "resolved" "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz" + "version" "1.0.1" + +"signal-exit@^3.0.7": + "integrity" "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + "resolved" "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" + "version" "3.0.7" + +"signal-exit@^4.0.1": + "integrity" "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==" + "resolved" "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz" + "version" "4.0.2" + +"sisteransi@^1.0.5": + "integrity" "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + "resolved" "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz" + "version" "1.0.5" + +"slash@^3.0.0": + "integrity" "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" + "resolved" "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" + "version" "3.0.0" + +"smart-buffer@^4.2.0": + "integrity" "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==" + "resolved" "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz" + "version" "4.2.0" + +"socks-proxy-agent@^7.0.0": + "integrity" "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==" + "resolved" "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz" + "version" "7.0.0" + dependencies: + "agent-base" "^6.0.2" + "debug" "^4.3.3" + "socks" "^2.6.2" + +"socks@^2.6.2": + "integrity" "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==" + "resolved" "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz" + "version" "2.7.1" + dependencies: + "ip" "^2.0.0" + "smart-buffer" "^4.2.0" + +"source-map-js@^1.0.2", "source-map-js@>=0.6.2 <2.0.0": + "integrity" "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" + "resolved" "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz" + "version" "1.0.2" + +"source-map@~0.6.1": + "integrity" "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" + "version" "0.6.1" + +"sourcemap-codec@^1.4.8": + "integrity" "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" + "resolved" "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz" + "version" "1.4.8" + +"spdx-correct@^3.0.0": + "integrity" "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==" + "resolved" "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz" + "version" "3.2.0" + dependencies: + "spdx-expression-parse" "^3.0.0" + "spdx-license-ids" "^3.0.0" + +"spdx-exceptions@^2.1.0": + "integrity" "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + "resolved" "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" + "version" "2.3.0" + +"spdx-expression-parse@^3.0.0": + "integrity" "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==" + "resolved" "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" + "version" "3.0.1" + dependencies: + "spdx-exceptions" "^2.1.0" + "spdx-license-ids" "^3.0.0" + +"spdx-license-ids@^3.0.0": + "integrity" "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==" + "resolved" "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz" + "version" "3.0.13" + +"ssf@~0.11.2": + "integrity" "sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==" + "resolved" "https://registry.npmjs.org/ssf/-/ssf-0.11.2.tgz" + "version" "0.11.2" + dependencies: + "frac" "~1.1.2" + +"ssri@^9.0.0": + "integrity" "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==" + "resolved" "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz" + "version" "9.0.1" + dependencies: + "minipass" "^3.1.1" + +"stop-iteration-iterator@^1.0.0": + "integrity" "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==" + "resolved" "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz" + "version" "1.0.0" + dependencies: + "internal-slot" "^1.0.4" + +"string_decoder@^1.1.1": + "integrity" "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==" + "resolved" "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" + "version" "1.3.0" + dependencies: + "safe-buffer" "~5.2.0" + +"string-width-cjs@npm:string-width@^4.2.0": + "integrity" "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==" + "resolved" "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" + "version" "4.2.3" + dependencies: + "emoji-regex" "^8.0.0" + "is-fullwidth-code-point" "^3.0.0" + "strip-ansi" "^6.0.1" + +"string-width@^1.0.2 || 2 || 3 || 4", "string-width@^4.1.0", "string-width@^4.2.0", "string-width@^4.2.3": + "integrity" "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==" + "resolved" "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" + "version" "4.2.3" + dependencies: + "emoji-regex" "^8.0.0" + "is-fullwidth-code-point" "^3.0.0" + "strip-ansi" "^6.0.1" + +"string-width@^5.0.1", "string-width@^5.1.2": + "integrity" "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==" + "resolved" "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz" + "version" "5.1.2" + dependencies: + "eastasianwidth" "^0.2.0" + "emoji-regex" "^9.2.2" + "strip-ansi" "^7.0.1" + +"string.prototype.trim@^1.2.7": + "integrity" "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==" + "resolved" "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz" + "version" "1.2.7" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.4" + "es-abstract" "^1.20.4" + +"string.prototype.trimend@^1.0.6": + "integrity" "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==" + "resolved" "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz" + "version" "1.0.6" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.4" + "es-abstract" "^1.20.4" + +"string.prototype.trimstart@^1.0.6": + "integrity" "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==" + "resolved" "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz" + "version" "1.0.6" + dependencies: + "call-bind" "^1.0.2" + "define-properties" "^1.1.4" + "es-abstract" "^1.20.4" + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + "integrity" "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==" + "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" + "version" "6.0.1" + dependencies: + "ansi-regex" "^5.0.1" + +"strip-ansi@^6.0.0", "strip-ansi@^6.0.1": + "integrity" "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==" + "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" + "version" "6.0.1" + dependencies: + "ansi-regex" "^5.0.1" + +"strip-ansi@^7.0.1": + "integrity" "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==" + "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz" + "version" "7.1.0" + dependencies: + "ansi-regex" "^6.0.1" + +"strip-bom@^3.0.0": + "integrity" "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==" + "resolved" "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" + "version" "3.0.0" + +"strip-indent@^3.0.0": + "integrity" "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==" + "resolved" "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "min-indent" "^1.0.0" + +"strip-json-comments@^3.1.0", "strip-json-comments@^3.1.1": + "integrity" "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" + "resolved" "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" + "version" "3.1.1" + +"strip-literal@^0.4.1": + "integrity" "sha512-pv48ybn4iE1O9RLgCAN0iU4Xv7RlBTiit6DKmMiErbs9x1wH6vXBs45tWc0H5wUIF6TLTrKweqkmYF/iraQKNw==" + "resolved" "https://registry.npmjs.org/strip-literal/-/strip-literal-0.4.2.tgz" + "version" "0.4.2" + dependencies: + "acorn" "^8.8.0" + +"strip-literal@^1.0.0": + "integrity" "sha512-QZTsipNpa2Ppr6v1AmJHESqJ3Uz247MUS0OjrnnZjFAvEoWqxuyFuXn2xLgMtRnijJShAa1HL0gtJyUs7u7n3Q==" + "resolved" "https://registry.npmjs.org/strip-literal/-/strip-literal-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "acorn" "^8.8.2" + +"sucrase@^3.32.0": + "integrity" "sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==" + "resolved" "https://registry.npmjs.org/sucrase/-/sucrase-3.32.0.tgz" + "version" "3.32.0" + dependencies: + "@jridgewell/gen-mapping" "^0.3.2" + "commander" "^4.0.0" + "glob" "7.1.6" + "lines-and-columns" "^1.1.6" + "mz" "^2.7.0" + "pirates" "^4.0.1" + "ts-interface-checker" "^0.1.9" + +"supports-color@^5.3.0": + "integrity" "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==" + "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" + "version" "5.5.0" + dependencies: + "has-flag" "^3.0.0" + +"supports-color@^7.1.0": + "integrity" "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==" + "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" + "version" "7.2.0" + dependencies: + "has-flag" "^4.0.0" + +"supports-preserve-symlinks-flag@^1.0.0": + "integrity" "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + "resolved" "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz" + "version" "1.0.0" + +"symbol-tree@^3.2.4": + "integrity" "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" + "resolved" "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz" + "version" "3.2.4" + +"tailwindcss@^3.2.4": + "integrity" "sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==" + "resolved" "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.2.tgz" + "version" "3.3.2" + dependencies: + "@alloc/quick-lru" "^5.2.0" + "arg" "^5.0.2" + "chokidar" "^3.5.3" + "didyoumean" "^1.2.2" + "dlv" "^1.1.3" + "fast-glob" "^3.2.12" + "glob-parent" "^6.0.2" + "is-glob" "^4.0.3" + "jiti" "^1.18.2" + "lilconfig" "^2.1.0" + "micromatch" "^4.0.5" + "normalize-path" "^3.0.0" + "object-hash" "^3.0.0" + "picocolors" "^1.0.0" + "postcss" "^8.4.23" + "postcss-import" "^15.1.0" + "postcss-js" "^4.0.1" + "postcss-load-config" "^4.0.1" + "postcss-nested" "^6.0.1" + "postcss-selector-parser" "^6.0.11" + "postcss-value-parser" "^4.2.0" + "resolve" "^1.22.2" + "sucrase" "^3.32.0" + +"tar@^6.1.11", "tar@^6.1.2": + "integrity" "sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==" + "resolved" "https://registry.npmjs.org/tar/-/tar-6.1.15.tgz" + "version" "6.1.15" + dependencies: + "chownr" "^2.0.0" + "fs-minipass" "^2.0.0" + "minipass" "^5.0.0" + "minizlib" "^2.1.1" + "mkdirp" "^1.0.3" + "yallist" "^4.0.0" + +"taze@^0.8.2": + "integrity" "sha512-4aB/BEfBah5iJJUDY3vW7xjJl7AzV6bsQx0PHC1DxIVlCE+JUFfpE7dDPZv/4Z+ft4Eg3I69NWnMnaAUL++rDQ==" + "resolved" "https://registry.npmjs.org/taze/-/taze-0.8.5.tgz" + "version" "0.8.5" + dependencies: + "@antfu/ni" "^0.18.6" + "@npmcli/config" "^6.1.0" + "detect-indent" "^7.0.1" + "pacote" "^13" + "prompts" "^2.4.2" + "semver" "^7.3.8" + "unconfig" "^0.3.7" + "yargs" "^17.6.2" + +"text-table@^0.2.0": + "integrity" "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + "resolved" "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" + "version" "0.2.0" + +"thenify-all@^1.0.0": + "integrity" "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==" + "resolved" "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz" + "version" "1.6.0" + dependencies: + "thenify" ">= 3.1.0 < 4" + +"thenify@>= 3.1.0 < 4": + "integrity" "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==" + "resolved" "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz" + "version" "3.3.1" + dependencies: + "any-promise" "^1.0.0" + +"tinybench@^2.1.5": + "integrity" "sha512-kRwSG8Zx4tjF9ZiyH4bhaebu+EDz1BOx9hOigYHlUW4xxI/wKIUQUqo018UlU4ar6ATPBsaMrdbKZ+tmPdohFA==" + "resolved" "https://registry.npmjs.org/tinybench/-/tinybench-2.5.0.tgz" + "version" "2.5.0" + +"tinypool@^0.3.0": + "integrity" "sha512-zLA1ZXlstbU2rlpA4CIeVaqvWq41MTWqLY3FfsAXgC8+f7Pk7zroaJQxDgxn1xNudKW6Kmj4808rPFShUlIRmQ==" + "resolved" "https://registry.npmjs.org/tinypool/-/tinypool-0.3.1.tgz" + "version" "0.3.1" + +"tinyspy@^1.0.2": + "integrity" "sha512-UVq5AXt/gQlti7oxoIg5oi/9r0WpF7DGEVwXgqWSMmyN16+e3tl5lIvTaOpJ3TAtu5xFzWccFRM4R5NaWHF+4g==" + "resolved" "https://registry.npmjs.org/tinyspy/-/tinyspy-1.1.1.tgz" + "version" "1.1.1" + +"to-regex-range@^5.0.1": + "integrity" "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==" + "resolved" "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" + "version" "5.0.1" + dependencies: + "is-number" "^7.0.0" + +"toposort@^2.0.2": + "integrity" "sha512-0a5EOkAUp8D4moMi2W8ZF8jcga7BgZd91O/yabJCFY8az+XSzeGyTKs0Aoo897iV1Nj6guFq8orWDS96z91oGg==" + "resolved" "https://registry.npmjs.org/toposort/-/toposort-2.0.2.tgz" + "version" "2.0.2" + +"tough-cookie@^4.1.2": + "integrity" "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==" + "resolved" "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz" + "version" "4.1.3" + dependencies: + "psl" "^1.1.33" + "punycode" "^2.1.1" + "universalify" "^0.2.0" + "url-parse" "^1.5.3" + +"tr46@^3.0.0": + "integrity" "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==" + "resolved" "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "punycode" "^2.1.1" + +"ts-interface-checker@^0.1.9": + "integrity" "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==" + "resolved" "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz" + "version" "0.1.13" + +"tsconfig-paths@^3.14.1": + "integrity" "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==" + "resolved" "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz" + "version" "3.14.2" + dependencies: + "@types/json5" "^0.0.29" + "json5" "^1.0.2" + "minimist" "^1.2.6" + "strip-bom" "^3.0.0" + +"tslib@^1.8.1": + "integrity" "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "resolved" "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" + "version" "1.14.1" + +"tsutils@^3.21.0": + "integrity" "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==" + "resolved" "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz" + "version" "3.21.0" + dependencies: + "tslib" "^1.8.1" + +"type-check@^0.4.0": + "integrity" "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==" + "resolved" "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" + "version" "0.4.0" + dependencies: + "prelude-ls" "^1.2.1" + +"type-check@~0.3.2": + "integrity" "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==" + "resolved" "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz" + "version" "0.3.2" + dependencies: + "prelude-ls" "~1.1.2" + +"type-check@~0.4.0": + "integrity" "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==" + "resolved" "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" + "version" "0.4.0" + dependencies: + "prelude-ls" "^1.2.1" + +"type-detect@^4.0.0", "type-detect@^4.0.5": + "integrity" "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==" + "resolved" "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz" + "version" "4.0.8" + +"type-fest@^0.20.2": + "integrity" "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" + "version" "0.20.2" + +"type-fest@^0.6.0": + "integrity" "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz" + "version" "0.6.0" + +"type-fest@^0.8.1": + "integrity" "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" + "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz" + "version" "0.8.1" + +"typed-array-length@^1.0.4": + "integrity" "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==" + "resolved" "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "call-bind" "^1.0.2" + "for-each" "^0.3.3" + "is-typed-array" "^1.1.9" + +"typescript@*", "typescript@^4.8.3", "typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta", "typescript@>=3.9": + "integrity" "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==" + "resolved" "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz" + "version" "4.9.5" + +"ufo@^1.1.2": + "integrity" "sha512-TrY6DsjTQQgyS3E3dBaOXf0TpPD8u9FVrVYmKVegJuFw51n/YB9XPt+U6ydzFG5ZIN7+DIjPbNmXoBj9esYhgQ==" + "resolved" "https://registry.npmjs.org/ufo/-/ufo-1.1.2.tgz" + "version" "1.1.2" + +"unbox-primitive@^1.0.2": + "integrity" "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==" + "resolved" "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "call-bind" "^1.0.2" + "has-bigints" "^1.0.2" + "has-symbols" "^1.0.3" + "which-boxed-primitive" "^1.0.2" + +"unconfig@^0.3.7": + "integrity" "sha512-8yhetFd48M641mxrkWA+C/lZU4N0rCOdlo3dFsyFPnBHBjMJfjT/3eAZBRT2RxCRqeBMAKBVgikejdS6yeBjMw==" + "resolved" "https://registry.npmjs.org/unconfig/-/unconfig-0.3.9.tgz" + "version" "0.3.9" + dependencies: + "@antfu/utils" "^0.7.2" + "defu" "^6.1.2" + "jiti" "^1.18.2" + +"unimport@^1.0.1": + "integrity" "sha512-fOkrdxglsHd428yegH0wPH/6IfaSdDeMXtdRGn6en/ccyzc2aaoxiUTMrJyc6Bu+xoa18RJRPMfLUHEzjz8atw==" + "resolved" "https://registry.npmjs.org/unimport/-/unimport-1.3.0.tgz" + "version" "1.3.0" + dependencies: + "@rollup/pluginutils" "^5.0.2" + "escape-string-regexp" "^5.0.0" + "fast-glob" "^3.2.12" + "local-pkg" "^0.4.3" + "magic-string" "^0.27.0" + "mlly" "^1.1.0" + "pathe" "^1.0.0" + "pkg-types" "^1.0.1" + "scule" "^1.0.0" + "strip-literal" "^1.0.0" + "unplugin" "^1.0.1" + +"unique-filename@^2.0.0": + "integrity" "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==" + "resolved" "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz" + "version" "2.0.1" + dependencies: + "unique-slug" "^3.0.0" + +"unique-slug@^3.0.0": + "integrity" "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==" + "resolved" "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz" + "version" "3.0.0" + dependencies: + "imurmurhash" "^0.1.4" + +"unist-util-stringify-position@^2.0.0": + "integrity" "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==" + "resolved" "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz" + "version" "2.0.3" + dependencies: + "@types/unist" "^2.0.2" + +"universalify@^0.2.0": + "integrity" "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==" + "resolved" "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz" + "version" "0.2.0" + +"unplugin-auto-import@^0.11.2": + "integrity" "sha512-nvbL2AQwLRR8wbHpJ6L1EBVNmjN045RSedTa4NtsGRkSQFXkI1iKHs4dTqJwcKZsnFrZOAKtLPiN1/oQTObLZw==" + "resolved" "https://registry.npmjs.org/unplugin-auto-import/-/unplugin-auto-import-0.11.5.tgz" + "version" "0.11.5" + dependencies: + "@antfu/utils" "^0.7.0" + "@rollup/pluginutils" "^5.0.2" + "local-pkg" "^0.4.2" + "magic-string" "^0.26.7" + "unimport" "^1.0.1" + "unplugin" "^1.0.0" + +"unplugin-vue-components@^0.22.7": + "integrity" "sha512-FxyzsuBvMCYPIk+8cgscGBQ345tvwVu+qY5IhE++eorkyvA4Z1TiD/HCiim+Kbqozl10i4K+z+NCa2WO2jexRA==" + "resolved" "https://registry.npmjs.org/unplugin-vue-components/-/unplugin-vue-components-0.22.12.tgz" + "version" "0.22.12" + dependencies: + "@antfu/utils" "^0.7.2" + "@rollup/pluginutils" "^5.0.2" + "chokidar" "^3.5.3" + "debug" "^4.3.4" + "fast-glob" "^3.2.12" + "local-pkg" "^0.4.2" + "magic-string" "^0.27.0" + "minimatch" "^5.1.1" + "resolve" "^1.22.1" + "unplugin" "^1.0.1" + +"unplugin@^1.0.0", "unplugin@^1.0.1": + "integrity" "sha512-h4uUTIvFBQRxUKS2Wjys6ivoeofGhxzTe2sRWlooyjHXVttcVfV/JiavNd3d4+jty0SVV0dxGw9AkY9MwiaCEw==" + "resolved" "https://registry.npmjs.org/unplugin/-/unplugin-1.3.1.tgz" + "version" "1.3.1" + dependencies: + "acorn" "^8.8.2" + "chokidar" "^3.5.3" + "webpack-sources" "^3.2.3" + "webpack-virtual-modules" "^0.5.0" + +"update-browserslist-db@^1.0.11": + "integrity" "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==" + "resolved" "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz" + "version" "1.0.11" + dependencies: + "escalade" "^3.1.1" + "picocolors" "^1.0.0" + +"uri-js@^4.2.2": + "integrity" "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==" + "resolved" "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" + "version" "4.4.1" + dependencies: + "punycode" "^2.1.0" + +"url-parse@^1.5.3": + "integrity" "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==" + "resolved" "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz" + "version" "1.5.10" + dependencies: + "querystringify" "^2.1.1" + "requires-port" "^1.0.0" + +"util-deprecate@^1.0.1", "util-deprecate@^1.0.2": + "integrity" "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + "resolved" "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" + "version" "1.0.2" + +"validate-npm-package-license@^3.0.1", "validate-npm-package-license@^3.0.4": + "integrity" "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==" + "resolved" "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" + "version" "3.0.4" + dependencies: + "spdx-correct" "^3.0.0" + "spdx-expression-parse" "^3.0.0" + +"validate-npm-package-name@^4.0.0": + "integrity" "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==" + "resolved" "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "builtins" "^5.0.0" + +"vite-plugin-pages@^0.26.0": + "integrity" "sha512-yJZvwHEt7puYIf19S89IvkDsWPjWleSied4H8hmdW6i8buCA93z1UAU1ipW1d8fNKrC4FzXsUHHbPm6+kl1p9w==" + "resolved" "https://registry.npmjs.org/vite-plugin-pages/-/vite-plugin-pages-0.26.0.tgz" + "version" "0.26.0" + dependencies: + "@types/debug" "^4.1.7" + "debug" "^4.3.4" + "deep-equal" "^2.0.5" + "extract-comments" "^1.1.0" + "fast-glob" "^3.2.11" + "json5" "^2.2.1" + "local-pkg" "^0.4.2" + "picocolors" "^1.0.0" + "yaml" "^2.1.1" + +"vite@^2.0.0 || ^3.0.0-0", "vite@^2.9.12 || ^3.0.0-0", "vite@^3.0.0", "vite@^3.1.3": + "integrity" "sha512-29pdXjk49xAP0QBr0xXqu2s5jiQIXNvE/xwd0vUizYT2Hzqe4BksNNoWllFVXJf4eLZ+UlVQmXfB4lWrc+t18g==" + "resolved" "https://registry.npmjs.org/vite/-/vite-3.2.7.tgz" + "version" "3.2.7" + dependencies: + "esbuild" "^0.15.9" + "postcss" "^8.4.18" + "resolve" "^1.22.1" + "rollup" "^2.79.1" + optionalDependencies: + "fsevents" "~2.3.2" + +"vitest@^0.23.4": + "integrity" "sha512-iukBNWqQAv8EKDBUNntspLp9SfpaVFbmzmM0sNcnTxASQZMzRw3PsM6DMlsHiI+I6GeO5/sYDg3ecpC+SNFLrQ==" + "resolved" "https://registry.npmjs.org/vitest/-/vitest-0.23.4.tgz" + "version" "0.23.4" + dependencies: + "@types/chai" "^4.3.3" + "@types/chai-subset" "^1.3.3" + "@types/node" "*" + "chai" "^4.3.6" + "debug" "^4.3.4" + "local-pkg" "^0.4.2" + "strip-literal" "^0.4.1" + "tinybench" "^2.1.5" + "tinypool" "^0.3.0" + "tinyspy" "^1.0.2" + "vite" "^2.9.12 || ^3.0.0-0" + +"vue-demi@*": + "integrity" "sha512-o9NUVpl/YlsGJ7t+xuqJKx8EBGf1quRhCiT6D/J0pfwmk9zUwYkC7yrF4SZCe6fETvSM3UNL2edcbYrSyc4QHA==" + "resolved" "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.5.tgz" + "version" "0.14.5" + +"vue-eslint-parser@^9.3.0": + "integrity" "sha512-48IxT9d0+wArT1+3wNIy0tascRoywqSUe2E1YalIC1L8jsUGe5aJQItWfRok7DVFGz3UYvzEI7n5wiTXsCMAcQ==" + "resolved" "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.3.0.tgz" + "version" "9.3.0" + dependencies: + "debug" "^4.3.4" + "eslint-scope" "^7.1.1" + "eslint-visitor-keys" "^3.3.0" + "espree" "^9.3.1" + "esquery" "^1.4.0" + "lodash" "^4.17.21" + "semver" "^7.3.6" + +"vue-template-compiler@^2.7.14": + "integrity" "sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ==" + "resolved" "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.14.tgz" + "version" "2.7.14" + dependencies: + "de-indent" "^1.0.2" + "he" "^1.2.0" + +"vue-tsc@^1.0.24": + "integrity" "sha512-Wtw3J7CC+JM2OR56huRd5iKlvFWpvDiU+fO1+rqyu4V2nMTotShz4zbOZpW5g9fUOcjnyZYfBo5q5q+D/q27JA==" + "resolved" "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.6.5.tgz" + "version" "1.6.5" + dependencies: + "@volar/vue-language-core" "1.6.5" + "@volar/vue-typescript" "1.6.5" + "semver" "^7.3.8" + +"vue@^3.0.0", "vue@^3.0.0-0 || ^2.6.0", "vue@^3.0.1", "vue@^3.2.25", "vue@^3.3.2", "vue@2 || 3", "vue@3.3.4": + "integrity" "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==" + "resolved" "https://registry.npmjs.org/vue/-/vue-3.3.4.tgz" + "version" "3.3.4" + dependencies: + "@vue/compiler-dom" "3.3.4" + "@vue/compiler-sfc" "3.3.4" + "@vue/runtime-dom" "3.3.4" + "@vue/server-renderer" "3.3.4" + "@vue/shared" "3.3.4" + +"w3c-xmlserializer@^4.0.0": + "integrity" "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==" + "resolved" "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz" + "version" "4.0.0" + dependencies: + "xml-name-validator" "^4.0.0" + +"walk-up-path@^3.0.1": + "integrity" "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==" + "resolved" "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz" + "version" "3.0.1" + +"webidl-conversions@^7.0.0": + "integrity" "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + "resolved" "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz" + "version" "7.0.0" + +"webpack-sources@^3.2.3": + "integrity" "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==" + "resolved" "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz" + "version" "3.2.3" + +"webpack-virtual-modules@^0.5.0": + "integrity" "sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==" + "resolved" "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.5.0.tgz" + "version" "0.5.0" + +"whatwg-encoding@^2.0.0": + "integrity" "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==" + "resolved" "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz" + "version" "2.0.0" + dependencies: + "iconv-lite" "0.6.3" + +"whatwg-mimetype@^3.0.0": + "integrity" "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==" + "resolved" "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz" + "version" "3.0.0" + +"whatwg-url@^11.0.0": + "integrity" "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==" + "resolved" "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz" + "version" "11.0.0" + dependencies: + "tr46" "^3.0.0" + "webidl-conversions" "^7.0.0" + +"which-boxed-primitive@^1.0.2": + "integrity" "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==" + "resolved" "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" + "version" "1.0.2" + dependencies: + "is-bigint" "^1.0.1" + "is-boolean-object" "^1.1.0" + "is-number-object" "^1.0.4" + "is-string" "^1.0.5" + "is-symbol" "^1.0.3" + +"which-collection@^1.0.1": + "integrity" "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==" + "resolved" "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz" + "version" "1.0.1" + dependencies: + "is-map" "^2.0.1" + "is-set" "^2.0.1" + "is-weakmap" "^2.0.1" + "is-weakset" "^2.0.1" + +"which-typed-array@^1.1.9": + "integrity" "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==" + "resolved" "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz" + "version" "1.1.9" + dependencies: + "available-typed-arrays" "^1.0.5" + "call-bind" "^1.0.2" + "for-each" "^0.3.3" + "gopd" "^1.0.1" + "has-tostringtag" "^1.0.0" + "is-typed-array" "^1.1.10" + +"which@^2.0.1", "which@^2.0.2": + "integrity" "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==" + "resolved" "https://registry.npmjs.org/which/-/which-2.0.2.tgz" + "version" "2.0.2" + dependencies: + "isexe" "^2.0.0" + +"wide-align@^1.1.5": + "integrity" "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==" + "resolved" "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz" + "version" "1.1.5" + dependencies: + "string-width" "^1.0.2 || 2 || 3 || 4" + +"wmf@~1.0.1": + "integrity" "sha512-/p9K7bEh0Dj6WbXg4JG0xvLQmIadrner1bi45VMJTfnbVHsc7yIajZyoSoK60/dtVBs12Fm6WkUI5/3WAVsNMw==" + "resolved" "https://registry.npmjs.org/wmf/-/wmf-1.0.2.tgz" + "version" "1.0.2" + +"word-wrap@^1.2.3", "word-wrap@~1.2.3": + "integrity" "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + "resolved" "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" + "version" "1.2.3" + +"word@~0.3.0": + "integrity" "sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA==" + "resolved" "https://registry.npmjs.org/word/-/word-0.3.0.tgz" + "version" "0.3.0" + +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + "integrity" "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==" + "resolved" "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" + "version" "7.0.0" + dependencies: + "ansi-styles" "^4.0.0" + "string-width" "^4.1.0" + "strip-ansi" "^6.0.0" + +"wrap-ansi@^7.0.0": + "integrity" "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==" + "resolved" "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" + "version" "7.0.0" + dependencies: + "ansi-styles" "^4.0.0" + "string-width" "^4.1.0" + "strip-ansi" "^6.0.0" + +"wrap-ansi@^8.1.0": + "integrity" "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==" + "resolved" "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz" + "version" "8.1.0" + dependencies: + "ansi-styles" "^6.1.0" + "string-width" "^5.0.1" + "strip-ansi" "^7.0.1" + +"wrappy@1": + "integrity" "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + "resolved" "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + "version" "1.0.2" + +"ws@^8.11.0": + "integrity" "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==" + "resolved" "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz" + "version" "8.13.0" + +"xlsx@^0.18.5": + "integrity" "sha512-dmg3LCjBPHZnQp5/F/+nnTa+miPJxUXB6vtk42YjBBKayDNagxGEeIdWApkYPOf3Z3pm3k62Knjzp7lMeTEtFQ==" + "resolved" "https://registry.npmjs.org/xlsx/-/xlsx-0.18.5.tgz" + "version" "0.18.5" + dependencies: + "adler-32" "~1.3.0" + "cfb" "~1.2.1" + "codepage" "~1.15.0" + "crc-32" "~1.2.1" + "ssf" "~0.11.2" + "wmf" "~1.0.1" + "word" "~0.3.0" + +"xml-name-validator@^4.0.0": + "integrity" "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==" + "resolved" "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz" + "version" "4.0.0" + +"xmlchars@^2.2.0": + "integrity" "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==" + "resolved" "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz" + "version" "2.2.0" + +"y18n@^5.0.5": + "integrity" "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" + "resolved" "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" + "version" "5.0.8" + +"yallist@^2.1.2": + "integrity" "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + "resolved" "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz" + "version" "2.1.2" + +"yallist@^4.0.0": + "integrity" "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "resolved" "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" + "version" "4.0.0" + +"yaml-eslint-parser@^1.1.0", "yaml-eslint-parser@^1.2.1": + "integrity" "sha512-pEwzfsKbTrB8G3xc/sN7aw1v6A6c/pKxLAkjclnAyo5g5qOh6eL9WGu0o3cSDQZKrTNk4KL4lQSwZW+nBkANEg==" + "resolved" "https://registry.npmjs.org/yaml-eslint-parser/-/yaml-eslint-parser-1.2.2.tgz" + "version" "1.2.2" + dependencies: + "eslint-visitor-keys" "^3.0.0" + "lodash" "^4.17.21" + "yaml" "^2.0.0" + +"yaml@^2.0.0", "yaml@^2.1.1": + "integrity" "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==" + "resolved" "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz" + "version" "2.3.1" + +"yargs-parser@^21.1.1": + "integrity" "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" + "resolved" "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz" + "version" "21.1.1" + +"yargs@^17.6.2": + "integrity" "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==" + "resolved" "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz" + "version" "17.7.2" + dependencies: + "cliui" "^8.0.1" + "escalade" "^3.1.1" + "get-caller-file" "^2.0.5" + "require-directory" "^2.1.1" + "string-width" "^4.2.3" + "y18n" "^5.0.5" + "yargs-parser" "^21.1.1" + +"yocto-queue@^0.1.0": + "integrity" "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" + "resolved" "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" + "version" "0.1.0" + +"yup@^0.32.11": + "integrity" "sha512-Z2Fe1bn+eLstG8DRR6FTavGD+MeAwyfmouhHsIUgaADz8jvFKbO/fXc2trJKZg+5EBjh4gGm3iU/t3onKlXHIg==" + "resolved" "https://registry.npmjs.org/yup/-/yup-0.32.11.tgz" + "version" "0.32.11" + dependencies: + "@babel/runtime" "^7.15.4" + "@types/lodash" "^4.14.175" + "lodash" "^4.17.21" + "lodash-es" "^4.17.21" + "nanoclone" "^0.2.1" + "property-expr" "^2.0.4" + "toposort" "^2.0.2" + +"zod@^3.20.2": + "integrity" "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==" + "resolved" "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz" + "version" "3.21.4"