├── .changeset ├── README.md └── config.json ├── .eslintignore ├── .eslintrc.cjs ├── .github └── workflows │ └── main.yml ├── .gitignore ├── .husky └── pre-commit ├── .lintstagedrc.cjs ├── .npmrc ├── .prettierignore ├── .prettierrc.cjs ├── .vscode └── settings.json ├── CHANGELOG.md ├── LICENSE ├── README.md ├── package.json ├── pnpm-lock.yaml ├── renovate.json ├── src ├── UmamiApiClient.ts ├── classes │ ├── user-account.ts │ └── website.ts ├── defaults.ts ├── env.d.ts └── index.ts ├── tests ├── 00_negative_cases.test.ts └── 01_getters.test.ts ├── tsconfig.json ├── tsup.config.ts └── vite.config.ts /.changeset/README.md: -------------------------------------------------------------------------------- 1 | # Changesets 2 | 3 | Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works 4 | with multi-package repos, or single-package repos to help you version and publish your code. You can 5 | find the full documentation for it [in our repository](https://github.com/changesets/changesets) 6 | 7 | We have a quick list of common questions to get you started engaging with this project in 8 | [our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md) 9 | -------------------------------------------------------------------------------- /.changeset/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://unpkg.com/@changesets/config@2.2.0/schema.json", 3 | "changelog": ["@changesets/changelog-github", { "repo": "jakobbouchard/umami-api-client" }], 4 | "commit": false, 5 | "fixed": [], 6 | "linked": [], 7 | "access": "restricted", 8 | "baseBranch": "main", 9 | "updateInternalDependencies": "patch", 10 | "ignore": [] 11 | } 12 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | dist/ 3 | **/node_modules 4 | .DS_Store 5 | -------------------------------------------------------------------------------- /.eslintrc.cjs: -------------------------------------------------------------------------------- 1 | /** @type {import('eslint').ESLint.ConfigData} */ 2 | module.exports = { 3 | root: true, 4 | parser: "@typescript-eslint/parser", 5 | extends: ["eslint:recommended", "plugin:@typescript-eslint/recommended", "prettier"], 6 | plugins: ["@typescript-eslint"], 7 | parserOptions: { 8 | sourceType: "module", 9 | }, 10 | env: { 11 | es2020: true, 12 | node: true, 13 | }, 14 | }; 15 | -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- 1 | name: CI 2 | 3 | on: 4 | pull_request: 5 | push: 6 | branches: [$default-branch] 7 | 8 | jobs: 9 | packages: 10 | name: Check npm install 11 | runs-on: ubuntu-latest 12 | steps: 13 | - uses: actions/checkout@v4 14 | - uses: pnpm/action-setup@v2 15 | with: 16 | version: 8 17 | - name: Use Node.js 18 | uses: actions/setup-node@v4 19 | with: 20 | node-version: "16.x" 21 | cache: "pnpm" 22 | - name: Install dependencies 23 | run: pnpm install 24 | lint: 25 | name: Run ESLint 26 | runs-on: ubuntu-latest 27 | needs: [packages] 28 | steps: 29 | - uses: actions/checkout@v4 30 | - uses: pnpm/action-setup@v2 31 | with: 32 | version: 8 33 | - name: Use Node.js 34 | uses: actions/setup-node@v4 35 | with: 36 | node-version: "16.x" 37 | cache: "pnpm" 38 | - name: Install dependencies 39 | run: pnpm install 40 | - name: Run ESLint 41 | run: pnpm eslint . 42 | format: 43 | name: Run Prettier 44 | runs-on: ubuntu-latest 45 | needs: [packages] 46 | steps: 47 | - uses: actions/checkout@v4 48 | - uses: pnpm/action-setup@v2 49 | with: 50 | version: 8 51 | - name: Use Node.js 52 | uses: actions/setup-node@v4 53 | with: 54 | node-version: "16.x" 55 | cache: "pnpm" 56 | - name: Install dependencies 57 | run: pnpm install 58 | - name: Run Prettier 59 | run: pnpm prettier --check . 60 | typecheck: 61 | name: Run TypeScript 62 | runs-on: ubuntu-latest 63 | needs: [packages] 64 | steps: 65 | - uses: actions/checkout@v4 66 | - uses: pnpm/action-setup@v2 67 | with: 68 | version: 8 69 | - name: Use Node.js 70 | uses: actions/setup-node@v4 71 | with: 72 | node-version: "16.x" 73 | cache: "pnpm" 74 | - name: Install dependencies 75 | run: pnpm install 76 | - name: Run TypeScript 77 | run: pnpm tsc --noEmit 78 | build: 79 | name: Build 80 | runs-on: ubuntu-latest 81 | needs: [packages] 82 | steps: 83 | - uses: actions/checkout@v4 84 | - uses: pnpm/action-setup@v2 85 | with: 86 | version: 8 87 | - name: Use Node.js 88 | uses: actions/setup-node@v4 89 | with: 90 | node-version: "16.x" 91 | cache: "pnpm" 92 | - name: Install dependencies 93 | run: pnpm install 94 | - name: Build 95 | run: pnpm build 96 | test: 97 | name: Run tests 98 | runs-on: ubuntu-latest 99 | needs: [packages] 100 | steps: 101 | - uses: actions/checkout@v4 102 | - uses: pnpm/action-setup@v2 103 | with: 104 | version: 8 105 | - name: Use Node.js ${{ matrix.node-version }} 106 | uses: actions/setup-node@v4 107 | with: 108 | node-version: ${{ matrix.node-version }} 109 | cache: "pnpm" 110 | - name: Install dependencies 111 | run: pnpm install 112 | - name: Run tests 113 | run: pnpm test 114 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Editors 2 | *.iml 3 | .vs/ 4 | .nova/ 5 | .idea/ 6 | .vscode/* 7 | !.vscode/settings.json 8 | !.vscode/tasks.json 9 | !.vscode/launch.json 10 | !.vscode/extensions.json 11 | !.vscode/*.code-snippets 12 | 13 | # macOS 14 | .DS_Store 15 | .AppleDouble 16 | .LSOverride 17 | ._* 18 | 19 | # Build and tests 20 | dist/ 21 | coverage/ 22 | .eslintcache 23 | 24 | # Node 25 | **/node_modules/ 26 | npm-debug.log 27 | 28 | -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | pnpm lint-staged 2 | -------------------------------------------------------------------------------- /.lintstagedrc.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | // Run TypeScript check on whole project 3 | "*.ts": () => "tsc --noEmit", 4 | // Run ESLint on TS files 5 | "*.ts": "eslint --cache --fix", 6 | // Run Prettier everywhere 7 | "*": "prettier --cache --write --ignore-unknown", 8 | }; 9 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | sign-git-tag=true 2 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | dist/ 3 | **/node_modules 4 | .DS_Store 5 | .eslintcache 6 | pnpm-lock.yaml 7 | -------------------------------------------------------------------------------- /.prettierrc.cjs: -------------------------------------------------------------------------------- 1 | /** @type {import("prettier").Config} */ 2 | module.exports = { 3 | endOfLine: "lf", 4 | printWidth: 100, 5 | trailingComma: "all", 6 | useTabs: true, 7 | overrides: [ 8 | { 9 | files: "*.yml", 10 | options: { useTabs: false }, 11 | }, 12 | ], 13 | }; 14 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "typescript.tsdk": "node_modules/typescript/lib", 3 | "explorer.fileNesting.patterns": { 4 | "package.json": ".eslint*, .lintstaged*, .npm*, .prettier*, pnpm-lock.yaml, tsconfig.json, tsup.config.ts, vite.config.ts", 5 | "readme*": "changelog*, license*" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## 0.7.3 4 | 5 | ### Patch Changes 6 | 7 | - Remove ko-fi from funding 8 | 9 | ## 0.7.2 10 | 11 | ### Patch Changes 12 | 13 | - [`95d0783`](https://github.com/jakobbouchard/umami-api-client/commit/95d07835a8d4adcfbc349ac17680e9d5001eff78) Thanks [@jakobbouchard](https://github.com/jakobbouchard)! - Bump vitest 14 | 15 | ## 0.7.1 16 | 17 | ### Patch Changes 18 | 19 | - [`db93efa`](https://github.com/jakobbouchard/umami-api-client/commit/db93efacbdd8aa65eb684e0b4d6b985d27e6e253) Thanks [@jakobbouchard](https://github.com/jakobbouchard)! - Update dependencies 20 | 21 | - Update dependencies 22 | 23 | ## 0.7.0 24 | 25 | ### Changed 26 | 27 | - The API client now only returns classes. This means that `getWebsite()` will return a `Website` class, and `getWebsites()` will return an array of `Website` classes. This is a breaking change, but it's better for typings, and it's clearer. 28 | - Default parameters (user agent, time period, time unit, timezone and metric type) are now defined using environment variables. They cannot be set using functions anymore. This is a breaking change. 29 | - Errors are not caught anymore, so you can handle them yourself. This is a breaking change. 30 | - The package is now bundled using tsup, instead of microbundle. This might break compatibility with some environments, but it's smaller and faster. 31 | - Updated dependencies. 32 | 33 | ### Removed 34 | 35 | - The website and account functions (except those to get them) have been removed, in favour of classes. This is a breaking change. 36 | 37 | ## 0.6.2 38 | 39 | ### Changed 40 | 41 | - Updated dependencies. 42 | 43 | ## 0.6.1 44 | 45 | ### Fixed 46 | 47 | - Uh, after adding husky, the package wouldn't install anymore, so I fixed that! 48 | 49 | ## 0.6.0 ⚠️ SKIP THIS RELEASE 50 | 51 | **IMPORTANT**: This release cannot be installed due to `husky install` being run in the `postinstall` script instead of `prepare`. As such, please upgrade to the 0.6.1 release ASAP. 52 | 53 | **WARNING**: This release contains a lot of breaking changes due to the fact that Umami's API moved from using IDs to UUIDs for most operations. As such, you should update your code to use UUIDs instead of IDs. Also, some parameters changed from `snake_case` to `camelCase`, due to changes in the Umami API. Sadly, it's not super consistent, so some items still require `snake_case`. 54 | 55 | ### Added 56 | 57 | - Hound CI for PRs. 58 | - Convert tests from jest to vitest. 59 | - ESLint, Prettier, Husky. 60 | - Auto-signing version tags. 61 | 62 | ### Changed 63 | 64 | - Most functions now require the website UUID instead of its ID, per Umami's new API. 65 | - Changing an account's password now requires its UUID instead of its ID. 66 | - Most options now take `camelCase` params instead of `snake_case`. 67 | - Update axios. 68 | 69 | ### Removed 70 | 71 | - `getEventsByName(...)` has been removed, since events now use names by default. 72 | 73 | ## 0.5.2 74 | 75 | ### Added 76 | 77 | - Axios timeout, in case the server is slow. 78 | - Basic tests! 79 | 80 | ### Fixed 81 | 82 | - Makes `returnClasses` required. It's better for typings, and it's clearer. 83 | 84 | ## 0.5.1 85 | 86 | ### Fixed 87 | 88 | - Sometimes `_richError` didn't show the options. 89 | 90 | ## 0.5.0 91 | 92 | ### Added 93 | 94 | - Support for UTM parameters in `getMetrics`. 95 | 96 | ### Changed 97 | 98 | - Makes `returnClasses` required. It's better for typings, and it's clearer. 99 | 100 | ## 0.4.2 101 | 102 | ### Fixed 103 | 104 | - Correctly type the return values with the introduction of `returnClasses` in 0.4.0. 105 | - Won't die when `options` is not provided. 106 | 107 | ## 0.4.1 108 | 109 | Awkward... Forgot to build before publishing... 110 | 111 | ## 0.4.0 112 | 113 | ### Added 114 | 115 | - `returnClasses` options in API Client constructor. Enabling this returns classes when getting websites or accounts. Example: 116 | 117 | ```ts 118 | import UmamiAPIClient from "umami-api"; 119 | 120 | const umami = new UmamiAPIClient("stats.example.com", "admin", "1234"); 121 | const website = umami.getWebsite(); 122 | website.update({ 123 | domain: "test.com", 124 | }); 125 | ``` 126 | 127 | ### Changed 128 | 129 | - [BREAKING] `getEventsByName(...)`'s `name` parameter has been removed from its `options` object, because its uh a bit more logic isn't it? 130 | - Now uses [`microbundle`](https://github.com/developit/microbundle) for bundling, which should help with compatibility. 131 | 132 | ## 0.3.1 - 2022-07-18 133 | 134 | ### Fixed 135 | 136 | - `changePassword(...)` pointed to the wrong endpoint. 137 | 138 | ## 0.3.0 - 2022-07-15 139 | 140 | This release contains a small breaking change. And all the available endpoints now! 141 | 142 | ### Added 143 | 144 | - `getEventsByName(...)` – Get events by their name/value. Now with full info! 145 | - [**Admin only**] `createAccount(...)` – Create a user account. 146 | - `updateAccount(...)` – Update account info. `username` and `is_admin` can only be changed by admins. 147 | - `changePassword(...)` – Change your password. 148 | - [**Admin only**] `getAccount(...)` – Get a user account. 149 | - [**Admin only**] `deleteAccount(...)` – Delete a user account. 150 | - All the available API options. 151 | 152 | ### Removed 153 | 154 | - [BREAKING] `getEventsBy(...)` is gone, since you can request the event type in the regular `getEvents(...)` function now. 155 | - Does not check manually for admin rights anymore, since the API does it for us. 156 | 157 | ## 0.2.0 - 2022-07-15 158 | 159 | This release contains a LOT of breaking changes. Also a lot of new stuff! 160 | 161 | ### Added 162 | 163 | - `static UmamiAPIClient.collect(...)` – Collect pageviews and events without initializing a client. 164 | - `setDefaultUnit(...)` – Set the default unit of time when getting pageviews or events. 165 | - `setDefaultTZ(...)` – Set the default timezone when getting pageviews or events. 166 | - `setDefaultMetricType(...)` – Set the default type when getting metrics. 167 | - `setDefaultUserAgent(...)` – Set the default user agent when calling `collect(...)` on an instance. Does **not** affect the new static method. 168 | - `getWebsiteBy(...)` – Replaces part of the functionality of `getWebsite(...)`. 169 | 170 | ### Changed 171 | 172 | - [BREAKING] Authentication is done directly in the constructor now. 173 | - [BREAKING] There previously were 2 classes, now there is only one. 174 | - [BREAKING] Rename `getPageViews(...)` to `getPageviews(...)` 175 | - [BREAKING] The `period` parameter is now in the options, to make it optional. This affects `getStats(...)`, `getPageviews(...)`, `getEvents(...)`, `getEventsBy(...)` and `getMetrics(...)`. 176 | - [BREAKING] The `getWebsite(...)` function was split. 177 | - Better error messages 178 | 179 | ### Removed 180 | 181 | - `getDefaultPeriod(...)` as it's unnecessary. 182 | 183 | ## 0.1.5 - 2022-07-15 184 | 185 | ### Changed 186 | 187 | - Remove explicit return type in `auth(...)` function. 188 | 189 | ## 0.1.4 - 2022-07-15 190 | 191 | ### Added 192 | 193 | - **Lots** of JSDoc comments. Not everything is done or typed yet however, especially the new stuff. 194 | - The authentication token gets checked about every hour. 195 | - `setDefaultPeriod(...)` and `getDefaultPeriod()` – Set and get the default time period. Defaults to `24h`. 196 | - `getCurrentUser()` – Get the currently logged in user's info. 197 | - `updateWebsite(...)` – Update a website's name, domain or enable the share URL. 198 | - `getWebsite(...)` – Get a single website, either by specifying a property it has, its ID, or nothing (returns the first website in the list). 199 | - `resetWebsite(...)` – Reset a website by ID. 200 | - `deleteWebsite(...)` – Delete a website by ID. 201 | - `getEventsBy(...)` – Get the total number of events in a time period, filtered by their value or their type. 202 | - `getActiveVisitors(...)` – Get the number of active visitors. 203 | - `getActiveVisitors(...)` – Get the number of active visitors. 204 | - [**Admin only**] `getAccounts(...)` – Get all of the user accounts 205 | 206 | ## 0.1.3 - 2022-07-14 207 | 208 | ### Changed 209 | 210 | - Fix package name in README. 211 | 212 | ## 0.1.2 - 2022-07-14 213 | 214 | ### Changed 215 | 216 | - Fix README instructions. 217 | 218 | ## 0.1.1 - 2022-07-14 219 | 220 | ### Fixed 221 | 222 | - Fix `collect(...)` function. It was pointing to the wrong endpoint and needed a "User-Agent" header. 223 | 224 | ## 0.1.0 - 2022-07-14 225 | 226 | ### Added 227 | 228 | - Initial release 229 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2022 Jakob Bouchard 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | > [!WARNING] 2 | > I no longer work in web development and I don't really have the time or interest in maintaining this repository anymore. It has been incompatible with umami for a while and it would take me too much time to update it. However, if anybody is interested in maintaining it, I would gladly transfer the repository and NPM package 3 | 4 | # Umami API Client 5 | 6 | ![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/jakobbouchard/umami-api-client/test.yml?branch=main&label=tests&style=flat-square) 7 | ![npm](https://img.shields.io/npm/v/umami-api?style=flat-square) 8 | ![npm bundle size](https://img.shields.io/bundlephobia/minzip/umami-api?style=flat-square) 9 | ![npm downloads](https://img.shields.io/npm/dt/umami-api?style=flat-square) 10 | 11 | 🍙 Simple, tiny API client for Umami analytics. 12 | 13 | ## Installation 14 | 15 | ```shell 16 | npm install umami-api 17 | ``` 18 | 19 | ## Usage 20 | 21 | ```ts 22 | import UmamiAPIClient from "umami-api"; 23 | ``` 24 | 25 | ### Setting default options 26 | 27 | Default options can be set with the following environment variables: 28 | 29 | - `UMAMI_CLIENT_TIMEOUT_MS`: Axios timeout in milliseconds. Default: `2000`. 30 | - `UMAMI_CLIENT_USER_AGENT`: User agent to use for requests. Default: `Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Firefox/102.0`. 31 | - `UMAMI_CLIENT_TIME_PERIOD`: Default time period for pageviews, events, etc. Default: `24h`. 32 | - `UMAMI_CLIENT_TIME_UNIT`: Default time unit for pageviews, events, etc. Default: `hour`. 33 | - `UMAMI_CLIENT_TIMEZONE`: Default timezone for pageviews, events, etc. Default: `America/Toronto`. 34 | - `UMAMI_CLIENT_METRIC_TYPE`: Default metric type to get. Default: `url`. 35 | 36 | ## Example 37 | 38 | ```ts 39 | import UmamiAPIClient from "umami-api"; 40 | 41 | const umami = new UmamiAPIClient("stats.example.com", "username", "password"); 42 | 43 | const newWebsite = await umami.createWebsite({ 44 | domain: "test.com", 45 | name: "test.com", 46 | enableShareUrl: false, 47 | }); 48 | 49 | const pageviews = await newWebsite.getPageviews(); 50 | const metrics = await newWebsite.getMetrics(); 51 | ``` 52 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "umami-api", 3 | "version": "0.7.3", 4 | "publishConfig": { 5 | "access": "public" 6 | }, 7 | "description": "A simple API client for Umami analytics", 8 | "author": "Jakob Bouchard (https://jakobbouchard.dev/)", 9 | "contributors": [ 10 | "Brice Vandeputte " 11 | ], 12 | "funding": [ 13 | "https://github.com/sponsors/jakobbouchard" 14 | ], 15 | "license": "MIT", 16 | "repository": "github:jakobbouchard/umami-api-client", 17 | "homepage": "https://github.com/jakobbouchard/umami-api-client#readme", 18 | "bugs": "https://github.com/jakobbouchard/umami-api-client/issues", 19 | "keywords": [ 20 | "node", 21 | "umami", 22 | "umami-api", 23 | "analytics", 24 | "umami-analytics", 25 | "rest", 26 | "api", 27 | "client" 28 | ], 29 | "type": "module", 30 | "packageManager": "pnpm@9.0.6", 31 | "engines": { 32 | "node": ">=16.0.0" 33 | }, 34 | "main": "./dist/index.cjs", 35 | "module": "./dist/index.module.js", 36 | "types": "./dist/index.d.ts", 37 | "exports": { 38 | ".": { 39 | "import": "./dist/index.js", 40 | "require": "./dist/index.cjs", 41 | "types": "./dist/index.d.ts" 42 | } 43 | }, 44 | "files": [ 45 | "dist" 46 | ], 47 | "scripts": { 48 | "prepare": "husky", 49 | "prepublish": "pnpm build", 50 | "build": "tsup", 51 | "dev": "tsup --watch", 52 | "test": "vitest", 53 | "coverage": "vitest run --coverage", 54 | "typecheck": "tsc --noEmit", 55 | "lint": "eslint --cache .", 56 | "format": "prettier --cache --write ." 57 | }, 58 | "dependencies": { 59 | "axios": "^1.3.4" 60 | }, 61 | "devDependencies": { 62 | "@changesets/changelog-github": "0.5.0", 63 | "@changesets/cli": "2.27.1", 64 | "@types/node": "18.19.31", 65 | "@typescript-eslint/eslint-plugin": "7.8.0", 66 | "@typescript-eslint/parser": "7.8.0", 67 | "@vitest/coverage-c8": "0.33.0", 68 | "axios-mock-adapter": "1.22.0", 69 | "eslint": "8.57.0", 70 | "eslint-config-prettier": "9.1.0", 71 | "husky": "9.0.11", 72 | "lint-staged": "15.2.2", 73 | "prettier": "3.2.5", 74 | "tsup": "8.0.2", 75 | "typescript": "5.4.5", 76 | "vitest": "1.5.3", 77 | "vitest-github-actions-reporter": "0.11.1" 78 | }, 79 | "mangle": { 80 | "regex": "^_" 81 | } 82 | } 83 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | dependencies: 11 | axios: 12 | specifier: ^1.3.4 13 | version: 1.3.4 14 | devDependencies: 15 | '@changesets/changelog-github': 16 | specifier: 0.5.0 17 | version: 0.5.0 18 | '@changesets/cli': 19 | specifier: 2.27.1 20 | version: 2.27.1 21 | '@types/node': 22 | specifier: 18.19.31 23 | version: 18.19.31 24 | '@typescript-eslint/eslint-plugin': 25 | specifier: 7.8.0 26 | version: 7.8.0(@typescript-eslint/parser@7.8.0)(eslint@8.57.0)(typescript@5.4.5) 27 | '@typescript-eslint/parser': 28 | specifier: 7.8.0 29 | version: 7.8.0(eslint@8.57.0)(typescript@5.4.5) 30 | '@vitest/coverage-c8': 31 | specifier: 0.33.0 32 | version: 0.33.0(vitest@1.5.3) 33 | axios-mock-adapter: 34 | specifier: 1.22.0 35 | version: 1.22.0(axios@1.3.4) 36 | eslint: 37 | specifier: 8.57.0 38 | version: 8.57.0 39 | eslint-config-prettier: 40 | specifier: 9.1.0 41 | version: 9.1.0(eslint@8.57.0) 42 | husky: 43 | specifier: 9.0.11 44 | version: 9.0.11 45 | lint-staged: 46 | specifier: 15.2.2 47 | version: 15.2.2 48 | prettier: 49 | specifier: 3.2.5 50 | version: 3.2.5 51 | tsup: 52 | specifier: 8.0.2 53 | version: 8.0.2(typescript@5.4.5) 54 | typescript: 55 | specifier: 5.4.5 56 | version: 5.4.5 57 | vitest: 58 | specifier: 1.5.3 59 | version: 1.5.3(@types/node@18.19.31) 60 | vitest-github-actions-reporter: 61 | specifier: 0.11.1 62 | version: 0.11.1(vitest@1.5.3) 63 | 64 | packages: 65 | 66 | '@aashutoshrathi/word-wrap@1.2.6': 67 | resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} 68 | engines: {node: '>=0.10.0'} 69 | 70 | '@actions/core@1.10.0': 71 | resolution: {integrity: sha512-2aZDDa3zrrZbP5ZYg159sNoLRb61nQ7awl5pSvIq5Qpj81vwDzdMRKzkWJGJuwVvWpvZKx7vspJALyvaaIQyug==} 72 | 73 | '@actions/http-client@2.1.0': 74 | resolution: {integrity: sha512-BonhODnXr3amchh4qkmjPMUO8mFi/zLaaCeCAJZqch8iQqyDnVIkySjB38VHAC8IJ+bnlgfOqlhpyCUZHlQsqw==} 75 | 76 | '@ampproject/remapping@2.2.1': 77 | resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} 78 | engines: {node: '>=6.0.0'} 79 | 80 | '@babel/code-frame@7.18.6': 81 | resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} 82 | engines: {node: '>=6.9.0'} 83 | 84 | '@babel/helper-validator-identifier@7.19.1': 85 | resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==} 86 | engines: {node: '>=6.9.0'} 87 | 88 | '@babel/highlight@7.18.6': 89 | resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} 90 | engines: {node: '>=6.9.0'} 91 | 92 | '@babel/runtime@7.21.0': 93 | resolution: {integrity: sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==} 94 | engines: {node: '>=6.9.0'} 95 | 96 | '@bcoe/v8-coverage@0.2.3': 97 | resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} 98 | 99 | '@changesets/apply-release-plan@7.0.0': 100 | resolution: {integrity: sha512-vfi69JR416qC9hWmFGSxj7N6wA5J222XNBmezSVATPWDVPIF7gkd4d8CpbEbXmRWbVrkoli3oerGS6dcL/BGsQ==} 101 | 102 | '@changesets/assemble-release-plan@6.0.0': 103 | resolution: {integrity: sha512-4QG7NuisAjisbW4hkLCmGW2lRYdPrKzro+fCtZaILX+3zdUELSvYjpL4GTv0E4aM9Mef3PuIQp89VmHJ4y2bfw==} 104 | 105 | '@changesets/changelog-git@0.2.0': 106 | resolution: {integrity: sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==} 107 | 108 | '@changesets/changelog-github@0.5.0': 109 | resolution: {integrity: sha512-zoeq2LJJVcPJcIotHRJEEA2qCqX0AQIeFE+L21L8sRLPVqDhSXY8ZWAt2sohtBpFZkBwu+LUwMSKRr2lMy3LJA==} 110 | 111 | '@changesets/cli@2.27.1': 112 | resolution: {integrity: sha512-iJ91xlvRnnrJnELTp4eJJEOPjgpF3NOh4qeQehM6Ugiz9gJPRZ2t+TsXun6E3AMN4hScZKjqVXl0TX+C7AB3ZQ==} 113 | hasBin: true 114 | 115 | '@changesets/config@3.0.0': 116 | resolution: {integrity: sha512-o/rwLNnAo/+j9Yvw9mkBQOZySDYyOr/q+wptRLcAVGlU6djOeP9v1nlalbL9MFsobuBVQbZCTp+dIzdq+CLQUA==} 117 | 118 | '@changesets/errors@0.2.0': 119 | resolution: {integrity: sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==} 120 | 121 | '@changesets/get-dependents-graph@2.0.0': 122 | resolution: {integrity: sha512-cafUXponivK4vBgZ3yLu944mTvam06XEn2IZGjjKc0antpenkYANXiiE6GExV/yKdsCnE8dXVZ25yGqLYZmScA==} 123 | 124 | '@changesets/get-github-info@0.6.0': 125 | resolution: {integrity: sha512-v/TSnFVXI8vzX9/w3DU2Ol+UlTZcu3m0kXTjTT4KlAdwSvwutcByYwyYn9hwerPWfPkT2JfpoX0KgvCEi8Q/SA==} 126 | 127 | '@changesets/get-release-plan@4.0.0': 128 | resolution: {integrity: sha512-9L9xCUeD/Tb6L/oKmpm8nyzsOzhdNBBbt/ZNcjynbHC07WW4E1eX8NMGC5g5SbM5z/V+MOrYsJ4lRW41GCbg3w==} 129 | 130 | '@changesets/get-version-range-type@0.4.0': 131 | resolution: {integrity: sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==} 132 | 133 | '@changesets/git@3.0.0': 134 | resolution: {integrity: sha512-vvhnZDHe2eiBNRFHEgMiGd2CT+164dfYyrJDhwwxTVD/OW0FUD6G7+4DIx1dNwkwjHyzisxGAU96q0sVNBns0w==} 135 | 136 | '@changesets/logger@0.1.0': 137 | resolution: {integrity: sha512-pBrJm4CQm9VqFVwWnSqKEfsS2ESnwqwH+xR7jETxIErZcfd1u2zBSqrHbRHR7xjhSgep9x2PSKFKY//FAshA3g==} 138 | 139 | '@changesets/parse@0.4.0': 140 | resolution: {integrity: sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==} 141 | 142 | '@changesets/pre@2.0.0': 143 | resolution: {integrity: sha512-HLTNYX/A4jZxc+Sq8D1AMBsv+1qD6rmmJtjsCJa/9MSRybdxh0mjbTvE6JYZQ/ZiQ0mMlDOlGPXTm9KLTU3jyw==} 144 | 145 | '@changesets/read@0.6.0': 146 | resolution: {integrity: sha512-ZypqX8+/im1Fm98K4YcZtmLKgjs1kDQ5zHpc2U1qdtNBmZZfo/IBiG162RoP0CUF05tvp2y4IspH11PLnPxuuw==} 147 | 148 | '@changesets/types@4.1.0': 149 | resolution: {integrity: sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==} 150 | 151 | '@changesets/types@6.0.0': 152 | resolution: {integrity: sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==} 153 | 154 | '@changesets/write@0.3.0': 155 | resolution: {integrity: sha512-slGLb21fxZVUYbyea+94uFiD6ntQW0M2hIKNznFizDhZPDgn2c/fv1UzzlW43RVzh1BEDuIqW6hzlJ1OflNmcw==} 156 | 157 | '@esbuild/android-arm64@0.19.7': 158 | resolution: {integrity: sha512-YEDcw5IT7hW3sFKZBkCAQaOCJQLONVcD4bOyTXMZz5fr66pTHnAet46XAtbXAkJRfIn2YVhdC6R9g4xa27jQ1w==} 159 | engines: {node: '>=12'} 160 | cpu: [arm64] 161 | os: [android] 162 | 163 | '@esbuild/android-arm@0.19.7': 164 | resolution: {integrity: sha512-YGSPnndkcLo4PmVl2tKatEn+0mlVMr3yEpOOT0BeMria87PhvoJb5dg5f5Ft9fbCVgtAz4pWMzZVgSEGpDAlww==} 165 | engines: {node: '>=12'} 166 | cpu: [arm] 167 | os: [android] 168 | 169 | '@esbuild/android-x64@0.19.7': 170 | resolution: {integrity: sha512-jhINx8DEjz68cChFvM72YzrqfwJuFbfvSxZAk4bebpngGfNNRm+zRl4rtT9oAX6N9b6gBcFaJHFew5Blf6CvUw==} 171 | engines: {node: '>=12'} 172 | cpu: [x64] 173 | os: [android] 174 | 175 | '@esbuild/darwin-arm64@0.19.7': 176 | resolution: {integrity: sha512-dr81gbmWN//3ZnBIm6YNCl4p3pjnabg1/ZVOgz2fJoUO1a3mq9WQ/1iuEluMs7mCL+Zwv7AY5e3g1hjXqQZ9Iw==} 177 | engines: {node: '>=12'} 178 | cpu: [arm64] 179 | os: [darwin] 180 | 181 | '@esbuild/darwin-x64@0.19.7': 182 | resolution: {integrity: sha512-Lc0q5HouGlzQEwLkgEKnWcSazqr9l9OdV2HhVasWJzLKeOt0PLhHaUHuzb8s/UIya38DJDoUm74GToZ6Wc7NGQ==} 183 | engines: {node: '>=12'} 184 | cpu: [x64] 185 | os: [darwin] 186 | 187 | '@esbuild/freebsd-arm64@0.19.7': 188 | resolution: {integrity: sha512-+y2YsUr0CxDFF7GWiegWjGtTUF6gac2zFasfFkRJPkMAuMy9O7+2EH550VlqVdpEEchWMynkdhC9ZjtnMiHImQ==} 189 | engines: {node: '>=12'} 190 | cpu: [arm64] 191 | os: [freebsd] 192 | 193 | '@esbuild/freebsd-x64@0.19.7': 194 | resolution: {integrity: sha512-CdXOxIbIzPJmJhrpmJTLx+o35NoiKBIgOvmvT+jeSadYiWJn0vFKsl+0bSG/5lwjNHoIDEyMYc/GAPR9jxusTA==} 195 | engines: {node: '>=12'} 196 | cpu: [x64] 197 | os: [freebsd] 198 | 199 | '@esbuild/linux-arm64@0.19.7': 200 | resolution: {integrity: sha512-inHqdOVCkUhHNvuQPT1oCB7cWz9qQ/Cz46xmVe0b7UXcuIJU3166aqSunsqkgSGMtUCWOZw3+KMwI6otINuC9g==} 201 | engines: {node: '>=12'} 202 | cpu: [arm64] 203 | os: [linux] 204 | 205 | '@esbuild/linux-arm@0.19.7': 206 | resolution: {integrity: sha512-Y+SCmWxsJOdQtjcBxoacn/pGW9HDZpwsoof0ttL+2vGcHokFlfqV666JpfLCSP2xLxFpF1lj7T3Ox3sr95YXww==} 207 | engines: {node: '>=12'} 208 | cpu: [arm] 209 | os: [linux] 210 | 211 | '@esbuild/linux-ia32@0.19.7': 212 | resolution: {integrity: sha512-2BbiL7nLS5ZO96bxTQkdO0euGZIUQEUXMTrqLxKUmk/Y5pmrWU84f+CMJpM8+EHaBPfFSPnomEaQiG/+Gmh61g==} 213 | engines: {node: '>=12'} 214 | cpu: [ia32] 215 | os: [linux] 216 | 217 | '@esbuild/linux-loong64@0.19.7': 218 | resolution: {integrity: sha512-BVFQla72KXv3yyTFCQXF7MORvpTo4uTA8FVFgmwVrqbB/4DsBFWilUm1i2Oq6zN36DOZKSVUTb16jbjedhfSHw==} 219 | engines: {node: '>=12'} 220 | cpu: [loong64] 221 | os: [linux] 222 | 223 | '@esbuild/linux-mips64el@0.19.7': 224 | resolution: {integrity: sha512-DzAYckIaK+pS31Q/rGpvUKu7M+5/t+jI+cdleDgUwbU7KdG2eC3SUbZHlo6Q4P1CfVKZ1lUERRFP8+q0ob9i2w==} 225 | engines: {node: '>=12'} 226 | cpu: [mips64el] 227 | os: [linux] 228 | 229 | '@esbuild/linux-ppc64@0.19.7': 230 | resolution: {integrity: sha512-JQ1p0SmUteNdUaaiRtyS59GkkfTW0Edo+e0O2sihnY4FoZLz5glpWUQEKMSzMhA430ctkylkS7+vn8ziuhUugQ==} 231 | engines: {node: '>=12'} 232 | cpu: [ppc64] 233 | os: [linux] 234 | 235 | '@esbuild/linux-riscv64@0.19.7': 236 | resolution: {integrity: sha512-xGwVJ7eGhkprY/nB7L7MXysHduqjpzUl40+XoYDGC4UPLbnG+gsyS1wQPJ9lFPcxYAaDXbdRXd1ACs9AE9lxuw==} 237 | engines: {node: '>=12'} 238 | cpu: [riscv64] 239 | os: [linux] 240 | 241 | '@esbuild/linux-s390x@0.19.7': 242 | resolution: {integrity: sha512-U8Rhki5PVU0L0nvk+E8FjkV8r4Lh4hVEb9duR6Zl21eIEYEwXz8RScj4LZWA2i3V70V4UHVgiqMpszXvG0Yqhg==} 243 | engines: {node: '>=12'} 244 | cpu: [s390x] 245 | os: [linux] 246 | 247 | '@esbuild/linux-x64@0.19.7': 248 | resolution: {integrity: sha512-ZYZopyLhm4mcoZXjFt25itRlocKlcazDVkB4AhioiL9hOWhDldU9n38g62fhOI4Pth6vp+Mrd5rFKxD0/S+7aQ==} 249 | engines: {node: '>=12'} 250 | cpu: [x64] 251 | os: [linux] 252 | 253 | '@esbuild/netbsd-x64@0.19.7': 254 | resolution: {integrity: sha512-/yfjlsYmT1O3cum3J6cmGG16Fd5tqKMcg5D+sBYLaOQExheAJhqr8xOAEIuLo8JYkevmjM5zFD9rVs3VBcsjtQ==} 255 | engines: {node: '>=12'} 256 | cpu: [x64] 257 | os: [netbsd] 258 | 259 | '@esbuild/openbsd-x64@0.19.7': 260 | resolution: {integrity: sha512-MYDFyV0EW1cTP46IgUJ38OnEY5TaXxjoDmwiTXPjezahQgZd+j3T55Ht8/Q9YXBM0+T9HJygrSRGV5QNF/YVDQ==} 261 | engines: {node: '>=12'} 262 | cpu: [x64] 263 | os: [openbsd] 264 | 265 | '@esbuild/sunos-x64@0.19.7': 266 | resolution: {integrity: sha512-JcPvgzf2NN/y6X3UUSqP6jSS06V0DZAV/8q0PjsZyGSXsIGcG110XsdmuWiHM+pno7/mJF6fjH5/vhUz/vA9fw==} 267 | engines: {node: '>=12'} 268 | cpu: [x64] 269 | os: [sunos] 270 | 271 | '@esbuild/win32-arm64@0.19.7': 272 | resolution: {integrity: sha512-ZA0KSYti5w5toax5FpmfcAgu3ZNJxYSRm0AW/Dao5up0YV1hDVof1NvwLomjEN+3/GMtaWDI+CIyJOMTRSTdMw==} 273 | engines: {node: '>=12'} 274 | cpu: [arm64] 275 | os: [win32] 276 | 277 | '@esbuild/win32-ia32@0.19.7': 278 | resolution: {integrity: sha512-CTOnijBKc5Jpk6/W9hQMMvJnsSYRYgveN6O75DTACCY18RA2nqka8dTZR+x/JqXCRiKk84+5+bRKXUSbbwsS0A==} 279 | engines: {node: '>=12'} 280 | cpu: [ia32] 281 | os: [win32] 282 | 283 | '@esbuild/win32-x64@0.19.7': 284 | resolution: {integrity: sha512-gRaP2sk6hc98N734luX4VpF318l3w+ofrtTu9j5L8EQXF+FzQKV6alCOHMVoJJHvVK/mGbwBXfOL1HETQu9IGQ==} 285 | engines: {node: '>=12'} 286 | cpu: [x64] 287 | os: [win32] 288 | 289 | '@eslint-community/eslint-utils@4.4.0': 290 | resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} 291 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 292 | peerDependencies: 293 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 294 | 295 | '@eslint-community/regexpp@4.10.0': 296 | resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} 297 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 298 | 299 | '@eslint-community/regexpp@4.6.2': 300 | resolution: {integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==} 301 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 302 | 303 | '@eslint/eslintrc@2.1.4': 304 | resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} 305 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 306 | 307 | '@eslint/js@8.57.0': 308 | resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} 309 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 310 | 311 | '@humanwhocodes/config-array@0.11.14': 312 | resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} 313 | engines: {node: '>=10.10.0'} 314 | 315 | '@humanwhocodes/module-importer@1.0.1': 316 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 317 | engines: {node: '>=12.22'} 318 | 319 | '@humanwhocodes/object-schema@2.0.2': 320 | resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==} 321 | 322 | '@istanbuljs/schema@0.1.3': 323 | resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} 324 | engines: {node: '>=8'} 325 | 326 | '@jest/schemas@29.6.3': 327 | resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} 328 | engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 329 | 330 | '@jridgewell/gen-mapping@0.3.3': 331 | resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} 332 | engines: {node: '>=6.0.0'} 333 | 334 | '@jridgewell/resolve-uri@3.1.0': 335 | resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} 336 | engines: {node: '>=6.0.0'} 337 | 338 | '@jridgewell/set-array@1.1.2': 339 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} 340 | engines: {node: '>=6.0.0'} 341 | 342 | '@jridgewell/sourcemap-codec@1.4.14': 343 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} 344 | 345 | '@jridgewell/sourcemap-codec@1.4.15': 346 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} 347 | 348 | '@jridgewell/trace-mapping@0.3.17': 349 | resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==} 350 | 351 | '@manypkg/find-root@1.1.0': 352 | resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} 353 | 354 | '@manypkg/get-packages@1.1.3': 355 | resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} 356 | 357 | '@nodelib/fs.scandir@2.1.5': 358 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 359 | engines: {node: '>= 8'} 360 | 361 | '@nodelib/fs.stat@2.0.5': 362 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 363 | engines: {node: '>= 8'} 364 | 365 | '@nodelib/fs.walk@1.2.8': 366 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 367 | engines: {node: '>= 8'} 368 | 369 | '@rollup/rollup-android-arm-eabi@4.5.1': 370 | resolution: {integrity: sha512-YaN43wTyEBaMqLDYeze+gQ4ZrW5RbTEGtT5o1GVDkhpdNcsLTnLRcLccvwy3E9wiDKWg9RIhuoy3JQKDRBfaZA==} 371 | cpu: [arm] 372 | os: [android] 373 | 374 | '@rollup/rollup-android-arm64@4.5.1': 375 | resolution: {integrity: sha512-n1bX+LCGlQVuPlCofO0zOKe1b2XkFozAVRoczT+yxWZPGnkEAKTTYVOGZz8N4sKuBnKMxDbfhUsB1uwYdup/sw==} 376 | cpu: [arm64] 377 | os: [android] 378 | 379 | '@rollup/rollup-darwin-arm64@4.5.1': 380 | resolution: {integrity: sha512-QqJBumdvfBqBBmyGHlKxje+iowZwrHna7pokj/Go3dV1PJekSKfmjKrjKQ/e6ESTGhkfPNLq3VXdYLAc+UtAQw==} 381 | cpu: [arm64] 382 | os: [darwin] 383 | 384 | '@rollup/rollup-darwin-x64@4.5.1': 385 | resolution: {integrity: sha512-RrkDNkR/P5AEQSPkxQPmd2ri8WTjSl0RYmuFOiEABkEY/FSg0a4riihWQGKDJ4LnV9gigWZlTMx2DtFGzUrYQw==} 386 | cpu: [x64] 387 | os: [darwin] 388 | 389 | '@rollup/rollup-linux-arm-gnueabihf@4.5.1': 390 | resolution: {integrity: sha512-ZFPxvUZmE+fkB/8D9y/SWl/XaDzNSaxd1TJUSE27XAKlRpQ2VNce/86bGd9mEUgL3qrvjJ9XTGwoX0BrJkYK/A==} 391 | cpu: [arm] 392 | os: [linux] 393 | 394 | '@rollup/rollup-linux-arm64-gnu@4.5.1': 395 | resolution: {integrity: sha512-FEuAjzVIld5WVhu+M2OewLmjmbXWd3q7Zcx+Rwy4QObQCqfblriDMMS7p7+pwgjZoo9BLkP3wa9uglQXzsB9ww==} 396 | cpu: [arm64] 397 | os: [linux] 398 | 399 | '@rollup/rollup-linux-arm64-musl@4.5.1': 400 | resolution: {integrity: sha512-f5Gs8WQixqGRtI0Iq/cMqvFYmgFzMinuJO24KRfnv7Ohi/HQclwrBCYkzQu1XfLEEt3DZyvveq9HWo4bLJf1Lw==} 401 | cpu: [arm64] 402 | os: [linux] 403 | 404 | '@rollup/rollup-linux-x64-gnu@4.5.1': 405 | resolution: {integrity: sha512-CWPkPGrFfN2vj3mw+S7A/4ZaU3rTV7AkXUr08W9lNP+UzOvKLVf34tWCqrKrfwQ0NTk5GFqUr2XGpeR2p6R4gw==} 406 | cpu: [x64] 407 | os: [linux] 408 | 409 | '@rollup/rollup-linux-x64-musl@4.5.1': 410 | resolution: {integrity: sha512-ZRETMFA0uVukUC9u31Ed1nx++29073goCxZtmZARwk5aF/ltuENaeTtRVsSQzFlzdd4J6L3qUm+EW8cbGt0CKQ==} 411 | cpu: [x64] 412 | os: [linux] 413 | 414 | '@rollup/rollup-win32-arm64-msvc@4.5.1': 415 | resolution: {integrity: sha512-ihqfNJNb2XtoZMSCPeoo0cYMgU04ksyFIoOw5S0JUVbOhafLot+KD82vpKXOurE2+9o/awrqIxku9MRR9hozHQ==} 416 | cpu: [arm64] 417 | os: [win32] 418 | 419 | '@rollup/rollup-win32-ia32-msvc@4.5.1': 420 | resolution: {integrity: sha512-zK9MRpC8946lQ9ypFn4gLpdwr5a01aQ/odiIJeL9EbgZDMgbZjjT/XzTqJvDfTmnE1kHdbG20sAeNlpc91/wbg==} 421 | cpu: [ia32] 422 | os: [win32] 423 | 424 | '@rollup/rollup-win32-x64-msvc@4.5.1': 425 | resolution: {integrity: sha512-5I3Nz4Sb9TYOtkRwlH0ow+BhMH2vnh38tZ4J4mggE48M/YyJyp/0sPSxhw1UeS1+oBgQ8q7maFtSeKpeRJu41Q==} 426 | cpu: [x64] 427 | os: [win32] 428 | 429 | '@sinclair/typebox@0.27.8': 430 | resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} 431 | 432 | '@types/estree@1.0.5': 433 | resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} 434 | 435 | '@types/istanbul-lib-coverage@2.0.4': 436 | resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==} 437 | 438 | '@types/json-schema@7.0.15': 439 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 440 | 441 | '@types/minimist@1.2.2': 442 | resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==} 443 | 444 | '@types/node@12.20.55': 445 | resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} 446 | 447 | '@types/node@18.19.31': 448 | resolution: {integrity: sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA==} 449 | 450 | '@types/normalize-package-data@2.4.1': 451 | resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} 452 | 453 | '@types/semver@7.5.0': 454 | resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==} 455 | 456 | '@types/semver@7.5.8': 457 | resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} 458 | 459 | '@typescript-eslint/eslint-plugin@7.8.0': 460 | resolution: {integrity: sha512-gFTT+ezJmkwutUPmB0skOj3GZJtlEGnlssems4AjkVweUPGj7jRwwqg0Hhg7++kPGJqKtTYx+R05Ftww372aIg==} 461 | engines: {node: ^18.18.0 || >=20.0.0} 462 | peerDependencies: 463 | '@typescript-eslint/parser': ^7.0.0 464 | eslint: ^8.56.0 465 | typescript: '*' 466 | peerDependenciesMeta: 467 | typescript: 468 | optional: true 469 | 470 | '@typescript-eslint/parser@7.8.0': 471 | resolution: {integrity: sha512-KgKQly1pv0l4ltcftP59uQZCi4HUYswCLbTqVZEJu7uLX8CTLyswqMLqLN+2QFz4jCptqWVV4SB7vdxcH2+0kQ==} 472 | engines: {node: ^18.18.0 || >=20.0.0} 473 | peerDependencies: 474 | eslint: ^8.56.0 475 | typescript: '*' 476 | peerDependenciesMeta: 477 | typescript: 478 | optional: true 479 | 480 | '@typescript-eslint/scope-manager@7.8.0': 481 | resolution: {integrity: sha512-viEmZ1LmwsGcnr85gIq+FCYI7nO90DVbE37/ll51hjv9aG+YZMb4WDE2fyWpUR4O/UrhGRpYXK/XajcGTk2B8g==} 482 | engines: {node: ^18.18.0 || >=20.0.0} 483 | 484 | '@typescript-eslint/type-utils@7.8.0': 485 | resolution: {integrity: sha512-H70R3AefQDQpz9mGv13Uhi121FNMh+WEaRqcXTX09YEDky21km4dV1ZXJIp8QjXc4ZaVkXVdohvWDzbnbHDS+A==} 486 | engines: {node: ^18.18.0 || >=20.0.0} 487 | peerDependencies: 488 | eslint: ^8.56.0 489 | typescript: '*' 490 | peerDependenciesMeta: 491 | typescript: 492 | optional: true 493 | 494 | '@typescript-eslint/types@7.8.0': 495 | resolution: {integrity: sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw==} 496 | engines: {node: ^18.18.0 || >=20.0.0} 497 | 498 | '@typescript-eslint/typescript-estree@7.8.0': 499 | resolution: {integrity: sha512-5pfUCOwK5yjPaJQNy44prjCwtr981dO8Qo9J9PwYXZ0MosgAbfEMB008dJ5sNo3+/BN6ytBPuSvXUg9SAqB0dg==} 500 | engines: {node: ^18.18.0 || >=20.0.0} 501 | peerDependencies: 502 | typescript: '*' 503 | peerDependenciesMeta: 504 | typescript: 505 | optional: true 506 | 507 | '@typescript-eslint/utils@7.8.0': 508 | resolution: {integrity: sha512-L0yFqOCflVqXxiZyXrDr80lnahQfSOfc9ELAAZ75sqicqp2i36kEZZGuUymHNFoYOqxRT05up760b4iGsl02nQ==} 509 | engines: {node: ^18.18.0 || >=20.0.0} 510 | peerDependencies: 511 | eslint: ^8.56.0 512 | 513 | '@typescript-eslint/visitor-keys@7.8.0': 514 | resolution: {integrity: sha512-q4/gibTNBQNA0lGyYQCmWRS5D15n8rXh4QjK3KV+MBPlTYHpfBUT3D3PaPR/HeNiI9W6R7FvlkcGhNyAoP+caA==} 515 | engines: {node: ^18.18.0 || >=20.0.0} 516 | 517 | '@ungap/structured-clone@1.2.0': 518 | resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} 519 | 520 | '@vitest/coverage-c8@0.33.0': 521 | resolution: {integrity: sha512-DaF1zJz4dcOZS4k/neiQJokmOWqsGXwhthfmUdPGorXIQHjdPvV6JQSYhQDI41MyI8c+IieQUdIDs5XAMHtDDw==} 522 | peerDependencies: 523 | vitest: '>=0.30.0 <1' 524 | 525 | '@vitest/expect@1.5.3': 526 | resolution: {integrity: sha512-y+waPz31pOFr3rD7vWTbwiLe5+MgsMm40jTZbQE8p8/qXyBX3CQsIXRx9XK12IbY7q/t5a5aM/ckt33b4PxK2g==} 527 | 528 | '@vitest/runner@1.5.3': 529 | resolution: {integrity: sha512-7PlfuReN8692IKQIdCxwir1AOaP5THfNkp0Uc4BKr2na+9lALNit7ub9l3/R7MP8aV61+mHKRGiqEKRIwu6iiQ==} 530 | 531 | '@vitest/snapshot@1.5.3': 532 | resolution: {integrity: sha512-K3mvIsjyKYBhNIDujMD2gfQEzddLe51nNOAf45yKRt/QFJcUIeTQd2trRvv6M6oCBHNVnZwFWbQ4yj96ibiDsA==} 533 | 534 | '@vitest/spy@1.5.3': 535 | resolution: {integrity: sha512-Llj7Jgs6lbnL55WoshJUUacdJfjU2honvGcAJBxhra5TPEzTJH8ZuhI3p/JwqqfnTr4PmP7nDmOXP53MS7GJlg==} 536 | 537 | '@vitest/utils@1.5.3': 538 | resolution: {integrity: sha512-rE9DTN1BRhzkzqNQO+kw8ZgfeEBCLXiHJwetk668shmNBpSagQxneT5eSqEBLP+cqSiAeecvQmbpFfdMyLcIQA==} 539 | 540 | acorn-jsx@5.3.2: 541 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 542 | peerDependencies: 543 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 544 | 545 | acorn-walk@8.3.2: 546 | resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} 547 | engines: {node: '>=0.4.0'} 548 | 549 | acorn@8.10.0: 550 | resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} 551 | engines: {node: '>=0.4.0'} 552 | hasBin: true 553 | 554 | ajv@6.12.6: 555 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 556 | 557 | ansi-colors@4.1.3: 558 | resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} 559 | engines: {node: '>=6'} 560 | 561 | ansi-escapes@6.2.0: 562 | resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==} 563 | engines: {node: '>=14.16'} 564 | 565 | ansi-regex@5.0.1: 566 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 567 | engines: {node: '>=8'} 568 | 569 | ansi-regex@6.0.1: 570 | resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} 571 | engines: {node: '>=12'} 572 | 573 | ansi-styles@3.2.1: 574 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 575 | engines: {node: '>=4'} 576 | 577 | ansi-styles@4.3.0: 578 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 579 | engines: {node: '>=8'} 580 | 581 | ansi-styles@5.2.0: 582 | resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} 583 | engines: {node: '>=10'} 584 | 585 | ansi-styles@6.2.1: 586 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 587 | engines: {node: '>=12'} 588 | 589 | any-promise@1.3.0: 590 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 591 | 592 | anymatch@3.1.3: 593 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} 594 | engines: {node: '>= 8'} 595 | 596 | argparse@1.0.10: 597 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} 598 | 599 | argparse@2.0.1: 600 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 601 | 602 | array-buffer-byte-length@1.0.0: 603 | resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} 604 | 605 | array-union@2.1.0: 606 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 607 | engines: {node: '>=8'} 608 | 609 | array.prototype.flat@1.3.1: 610 | resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} 611 | engines: {node: '>= 0.4'} 612 | 613 | arrify@1.0.1: 614 | resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} 615 | engines: {node: '>=0.10.0'} 616 | 617 | assertion-error@1.1.0: 618 | resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} 619 | 620 | asynckit@0.4.0: 621 | resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} 622 | 623 | available-typed-arrays@1.0.5: 624 | resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} 625 | engines: {node: '>= 0.4'} 626 | 627 | axios-mock-adapter@1.22.0: 628 | resolution: {integrity: sha512-dmI0KbkyAhntUR05YY96qg2H6gg0XMl2+qTW0xmYg6Up+BFBAJYRLROMXRdDEL06/Wqwa0TJThAYvFtSFdRCZw==} 629 | peerDependencies: 630 | axios: '>= 0.17.0' 631 | 632 | axios@1.3.4: 633 | resolution: {integrity: sha512-toYm+Bsyl6VC5wSkfkbbNB6ROv7KY93PEBBL6xyDczaIHasAiv4wPqQ/c4RjoQzipxRD2W5g21cOqQulZ7rHwQ==} 634 | 635 | balanced-match@1.0.2: 636 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 637 | 638 | better-path-resolve@1.0.0: 639 | resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} 640 | engines: {node: '>=4'} 641 | 642 | binary-extensions@2.2.0: 643 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} 644 | engines: {node: '>=8'} 645 | 646 | brace-expansion@1.1.11: 647 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 648 | 649 | brace-expansion@2.0.1: 650 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 651 | 652 | braces@3.0.2: 653 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 654 | engines: {node: '>=8'} 655 | 656 | breakword@1.0.5: 657 | resolution: {integrity: sha512-ex5W9DoOQ/LUEU3PMdLs9ua/CYZl1678NUkKOdUSi8Aw5F1idieaiRURCBFJCwVcrD1J8Iy3vfWSloaMwO2qFg==} 658 | 659 | bundle-require@4.0.1: 660 | resolution: {integrity: sha512-9NQkRHlNdNpDBGmLpngF3EFDcwodhMUuLz9PaWYciVcQF9SE4LFjM2DB/xV1Li5JiuDMv7ZUWuC3rGbqR0MAXQ==} 661 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 662 | peerDependencies: 663 | esbuild: '>=0.17' 664 | 665 | c8@7.14.0: 666 | resolution: {integrity: sha512-i04rtkkcNcCf7zsQcSv/T9EbUn4RXQ6mropeMcjFOsQXQ0iGLAr/xT6TImQg4+U9hmNpN9XdvPkjUL1IzbgxJw==} 667 | engines: {node: '>=10.12.0'} 668 | hasBin: true 669 | 670 | cac@6.7.14: 671 | resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} 672 | engines: {node: '>=8'} 673 | 674 | call-bind@1.0.2: 675 | resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} 676 | 677 | callsites@3.1.0: 678 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 679 | engines: {node: '>=6'} 680 | 681 | camelcase-keys@6.2.2: 682 | resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==} 683 | engines: {node: '>=8'} 684 | 685 | camelcase@5.3.1: 686 | resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} 687 | engines: {node: '>=6'} 688 | 689 | chai@4.3.10: 690 | resolution: {integrity: sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==} 691 | engines: {node: '>=4'} 692 | 693 | chalk@2.4.2: 694 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 695 | engines: {node: '>=4'} 696 | 697 | chalk@4.1.2: 698 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 699 | engines: {node: '>=10'} 700 | 701 | chalk@5.3.0: 702 | resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} 703 | engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} 704 | 705 | chardet@0.7.0: 706 | resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} 707 | 708 | check-error@1.0.3: 709 | resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} 710 | 711 | chokidar@3.5.3: 712 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} 713 | engines: {node: '>= 8.10.0'} 714 | 715 | ci-info@3.8.0: 716 | resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} 717 | engines: {node: '>=8'} 718 | 719 | cli-cursor@4.0.0: 720 | resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} 721 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 722 | 723 | cli-truncate@4.0.0: 724 | resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==} 725 | engines: {node: '>=18'} 726 | 727 | cliui@6.0.0: 728 | resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} 729 | 730 | cliui@7.0.4: 731 | resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} 732 | 733 | cliui@8.0.1: 734 | resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} 735 | engines: {node: '>=12'} 736 | 737 | clone@1.0.4: 738 | resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} 739 | engines: {node: '>=0.8'} 740 | 741 | color-convert@1.9.3: 742 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 743 | 744 | color-convert@2.0.1: 745 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 746 | engines: {node: '>=7.0.0'} 747 | 748 | color-name@1.1.3: 749 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} 750 | 751 | color-name@1.1.4: 752 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 753 | 754 | colorette@2.0.20: 755 | resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} 756 | 757 | combined-stream@1.0.8: 758 | resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} 759 | engines: {node: '>= 0.8'} 760 | 761 | commander@11.1.0: 762 | resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==} 763 | engines: {node: '>=16'} 764 | 765 | commander@4.1.1: 766 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} 767 | engines: {node: '>= 6'} 768 | 769 | concat-map@0.0.1: 770 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 771 | 772 | convert-source-map@1.9.0: 773 | resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} 774 | 775 | cross-spawn@5.1.0: 776 | resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} 777 | 778 | cross-spawn@7.0.3: 779 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 780 | engines: {node: '>= 8'} 781 | 782 | csv-generate@3.4.3: 783 | resolution: {integrity: sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==} 784 | 785 | csv-parse@4.16.3: 786 | resolution: {integrity: sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg==} 787 | 788 | csv-stringify@5.6.5: 789 | resolution: {integrity: sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A==} 790 | 791 | csv@5.5.3: 792 | resolution: {integrity: sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g==} 793 | engines: {node: '>= 0.1.90'} 794 | 795 | dataloader@1.4.0: 796 | resolution: {integrity: sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==} 797 | 798 | debug@4.3.4: 799 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 800 | engines: {node: '>=6.0'} 801 | peerDependencies: 802 | supports-color: '*' 803 | peerDependenciesMeta: 804 | supports-color: 805 | optional: true 806 | 807 | decamelize-keys@1.1.1: 808 | resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==} 809 | engines: {node: '>=0.10.0'} 810 | 811 | decamelize@1.2.0: 812 | resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} 813 | engines: {node: '>=0.10.0'} 814 | 815 | deep-eql@4.1.3: 816 | resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} 817 | engines: {node: '>=6'} 818 | 819 | deep-is@0.1.4: 820 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 821 | 822 | defaults@1.0.4: 823 | resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} 824 | 825 | define-properties@1.2.0: 826 | resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} 827 | engines: {node: '>= 0.4'} 828 | 829 | delayed-stream@1.0.0: 830 | resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} 831 | engines: {node: '>=0.4.0'} 832 | 833 | detect-indent@6.1.0: 834 | resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} 835 | engines: {node: '>=8'} 836 | 837 | diff-sequences@29.6.3: 838 | resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} 839 | engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 840 | 841 | dir-glob@3.0.1: 842 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 843 | engines: {node: '>=8'} 844 | 845 | doctrine@3.0.0: 846 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 847 | engines: {node: '>=6.0.0'} 848 | 849 | dotenv@8.6.0: 850 | resolution: {integrity: sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==} 851 | engines: {node: '>=10'} 852 | 853 | emoji-regex@10.3.0: 854 | resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==} 855 | 856 | emoji-regex@8.0.0: 857 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 858 | 859 | enquirer@2.3.6: 860 | resolution: {integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==} 861 | engines: {node: '>=8.6'} 862 | 863 | error-ex@1.3.2: 864 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} 865 | 866 | es-abstract@1.21.2: 867 | resolution: {integrity: sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==} 868 | engines: {node: '>= 0.4'} 869 | 870 | es-set-tostringtag@2.0.1: 871 | resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} 872 | engines: {node: '>= 0.4'} 873 | 874 | es-shim-unscopables@1.0.0: 875 | resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} 876 | 877 | es-to-primitive@1.2.1: 878 | resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} 879 | engines: {node: '>= 0.4'} 880 | 881 | esbuild@0.19.7: 882 | resolution: {integrity: sha512-6brbTZVqxhqgbpqBR5MzErImcpA0SQdoKOkcWK/U30HtQxnokIpG3TX2r0IJqbFUzqLjhU/zC1S5ndgakObVCQ==} 883 | engines: {node: '>=12'} 884 | hasBin: true 885 | 886 | escalade@3.1.1: 887 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 888 | engines: {node: '>=6'} 889 | 890 | escape-string-regexp@1.0.5: 891 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} 892 | engines: {node: '>=0.8.0'} 893 | 894 | escape-string-regexp@4.0.0: 895 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 896 | engines: {node: '>=10'} 897 | 898 | eslint-config-prettier@9.1.0: 899 | resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} 900 | hasBin: true 901 | peerDependencies: 902 | eslint: '>=7.0.0' 903 | 904 | eslint-scope@7.2.2: 905 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} 906 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 907 | 908 | eslint-visitor-keys@3.4.3: 909 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 910 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 911 | 912 | eslint@8.57.0: 913 | resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} 914 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 915 | hasBin: true 916 | 917 | espree@9.6.1: 918 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} 919 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 920 | 921 | esprima@4.0.1: 922 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 923 | engines: {node: '>=4'} 924 | hasBin: true 925 | 926 | esquery@1.5.0: 927 | resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} 928 | engines: {node: '>=0.10'} 929 | 930 | esrecurse@4.3.0: 931 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 932 | engines: {node: '>=4.0'} 933 | 934 | estraverse@5.3.0: 935 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 936 | engines: {node: '>=4.0'} 937 | 938 | estree-walker@3.0.3: 939 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 940 | 941 | esutils@2.0.3: 942 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 943 | engines: {node: '>=0.10.0'} 944 | 945 | eventemitter3@5.0.1: 946 | resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} 947 | 948 | execa@5.1.1: 949 | resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} 950 | engines: {node: '>=10'} 951 | 952 | execa@8.0.1: 953 | resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} 954 | engines: {node: '>=16.17'} 955 | 956 | extendable-error@0.1.7: 957 | resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} 958 | 959 | external-editor@3.1.0: 960 | resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} 961 | engines: {node: '>=4'} 962 | 963 | fast-deep-equal@3.1.3: 964 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 965 | 966 | fast-glob@3.2.12: 967 | resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} 968 | engines: {node: '>=8.6.0'} 969 | 970 | fast-json-stable-stringify@2.1.0: 971 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 972 | 973 | fast-levenshtein@2.0.6: 974 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 975 | 976 | fastq@1.15.0: 977 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} 978 | 979 | file-entry-cache@6.0.1: 980 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 981 | engines: {node: ^10.12.0 || >=12.0.0} 982 | 983 | fill-range@7.0.1: 984 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 985 | engines: {node: '>=8'} 986 | 987 | find-up@4.1.0: 988 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} 989 | engines: {node: '>=8'} 990 | 991 | find-up@5.0.0: 992 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 993 | engines: {node: '>=10'} 994 | 995 | find-yarn-workspace-root2@1.2.16: 996 | resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} 997 | 998 | flat-cache@3.0.4: 999 | resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} 1000 | engines: {node: ^10.12.0 || >=12.0.0} 1001 | 1002 | flatted@3.2.7: 1003 | resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} 1004 | 1005 | follow-redirects@1.15.2: 1006 | resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} 1007 | engines: {node: '>=4.0'} 1008 | peerDependencies: 1009 | debug: '*' 1010 | peerDependenciesMeta: 1011 | debug: 1012 | optional: true 1013 | 1014 | for-each@0.3.3: 1015 | resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} 1016 | 1017 | foreground-child@2.0.0: 1018 | resolution: {integrity: sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==} 1019 | engines: {node: '>=8.0.0'} 1020 | 1021 | form-data@4.0.0: 1022 | resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} 1023 | engines: {node: '>= 6'} 1024 | 1025 | fs-extra@7.0.1: 1026 | resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} 1027 | engines: {node: '>=6 <7 || >=8'} 1028 | 1029 | fs-extra@8.1.0: 1030 | resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} 1031 | engines: {node: '>=6 <7 || >=8'} 1032 | 1033 | fs.realpath@1.0.0: 1034 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1035 | 1036 | fsevents@2.3.3: 1037 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 1038 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 1039 | os: [darwin] 1040 | 1041 | function-bind@1.1.1: 1042 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 1043 | 1044 | function.prototype.name@1.1.5: 1045 | resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} 1046 | engines: {node: '>= 0.4'} 1047 | 1048 | functions-have-names@1.2.3: 1049 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} 1050 | 1051 | get-caller-file@2.0.5: 1052 | resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} 1053 | engines: {node: 6.* || 8.* || >= 10.*} 1054 | 1055 | get-east-asian-width@1.2.0: 1056 | resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==} 1057 | engines: {node: '>=18'} 1058 | 1059 | get-func-name@2.0.2: 1060 | resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} 1061 | 1062 | get-intrinsic@1.2.0: 1063 | resolution: {integrity: sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==} 1064 | 1065 | get-stream@6.0.1: 1066 | resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} 1067 | engines: {node: '>=10'} 1068 | 1069 | get-stream@8.0.1: 1070 | resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} 1071 | engines: {node: '>=16'} 1072 | 1073 | get-symbol-description@1.0.0: 1074 | resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} 1075 | engines: {node: '>= 0.4'} 1076 | 1077 | glob-parent@5.1.2: 1078 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 1079 | engines: {node: '>= 6'} 1080 | 1081 | glob-parent@6.0.2: 1082 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 1083 | engines: {node: '>=10.13.0'} 1084 | 1085 | glob@7.1.6: 1086 | resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} 1087 | 1088 | glob@7.2.3: 1089 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 1090 | 1091 | globals@13.20.0: 1092 | resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} 1093 | engines: {node: '>=8'} 1094 | 1095 | globalthis@1.0.3: 1096 | resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} 1097 | engines: {node: '>= 0.4'} 1098 | 1099 | globby@11.1.0: 1100 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 1101 | engines: {node: '>=10'} 1102 | 1103 | gopd@1.0.1: 1104 | resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} 1105 | 1106 | graceful-fs@4.2.10: 1107 | resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} 1108 | 1109 | grapheme-splitter@1.0.4: 1110 | resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} 1111 | 1112 | graphemer@1.4.0: 1113 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 1114 | 1115 | hard-rejection@2.1.0: 1116 | resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} 1117 | engines: {node: '>=6'} 1118 | 1119 | has-bigints@1.0.2: 1120 | resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} 1121 | 1122 | has-flag@3.0.0: 1123 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} 1124 | engines: {node: '>=4'} 1125 | 1126 | has-flag@4.0.0: 1127 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1128 | engines: {node: '>=8'} 1129 | 1130 | has-property-descriptors@1.0.0: 1131 | resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} 1132 | 1133 | has-proto@1.0.1: 1134 | resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} 1135 | engines: {node: '>= 0.4'} 1136 | 1137 | has-symbols@1.0.3: 1138 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} 1139 | engines: {node: '>= 0.4'} 1140 | 1141 | has-tostringtag@1.0.0: 1142 | resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} 1143 | engines: {node: '>= 0.4'} 1144 | 1145 | has@1.0.3: 1146 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 1147 | engines: {node: '>= 0.4.0'} 1148 | 1149 | hosted-git-info@2.8.9: 1150 | resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} 1151 | 1152 | html-escaper@2.0.2: 1153 | resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} 1154 | 1155 | human-id@1.0.2: 1156 | resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} 1157 | 1158 | human-signals@2.1.0: 1159 | resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} 1160 | engines: {node: '>=10.17.0'} 1161 | 1162 | human-signals@5.0.0: 1163 | resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} 1164 | engines: {node: '>=16.17.0'} 1165 | 1166 | husky@9.0.11: 1167 | resolution: {integrity: sha512-AB6lFlbwwyIqMdHYhwPe+kjOC3Oc5P3nThEoW/AaO2BX3vJDjWPFxYLxokUZOo6RNX20He3AaT8sESs9NJcmEw==} 1168 | engines: {node: '>=18'} 1169 | hasBin: true 1170 | 1171 | iconv-lite@0.4.24: 1172 | resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} 1173 | engines: {node: '>=0.10.0'} 1174 | 1175 | ignore@5.2.4: 1176 | resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} 1177 | engines: {node: '>= 4'} 1178 | 1179 | ignore@5.3.1: 1180 | resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} 1181 | engines: {node: '>= 4'} 1182 | 1183 | import-fresh@3.3.0: 1184 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 1185 | engines: {node: '>=6'} 1186 | 1187 | imurmurhash@0.1.4: 1188 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 1189 | engines: {node: '>=0.8.19'} 1190 | 1191 | indent-string@4.0.0: 1192 | resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} 1193 | engines: {node: '>=8'} 1194 | 1195 | inflight@1.0.6: 1196 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 1197 | 1198 | inherits@2.0.4: 1199 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1200 | 1201 | internal-slot@1.0.5: 1202 | resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} 1203 | engines: {node: '>= 0.4'} 1204 | 1205 | is-array-buffer@3.0.2: 1206 | resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} 1207 | 1208 | is-arrayish@0.2.1: 1209 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} 1210 | 1211 | is-bigint@1.0.4: 1212 | resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} 1213 | 1214 | is-binary-path@2.1.0: 1215 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 1216 | engines: {node: '>=8'} 1217 | 1218 | is-boolean-object@1.1.2: 1219 | resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} 1220 | engines: {node: '>= 0.4'} 1221 | 1222 | is-buffer@2.0.5: 1223 | resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} 1224 | engines: {node: '>=4'} 1225 | 1226 | is-callable@1.2.7: 1227 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} 1228 | engines: {node: '>= 0.4'} 1229 | 1230 | is-core-module@2.11.0: 1231 | resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} 1232 | 1233 | is-date-object@1.0.5: 1234 | resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} 1235 | engines: {node: '>= 0.4'} 1236 | 1237 | is-extglob@2.1.1: 1238 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1239 | engines: {node: '>=0.10.0'} 1240 | 1241 | is-fullwidth-code-point@3.0.0: 1242 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 1243 | engines: {node: '>=8'} 1244 | 1245 | is-fullwidth-code-point@4.0.0: 1246 | resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} 1247 | engines: {node: '>=12'} 1248 | 1249 | is-fullwidth-code-point@5.0.0: 1250 | resolution: {integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==} 1251 | engines: {node: '>=18'} 1252 | 1253 | is-glob@4.0.3: 1254 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1255 | engines: {node: '>=0.10.0'} 1256 | 1257 | is-negative-zero@2.0.2: 1258 | resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} 1259 | engines: {node: '>= 0.4'} 1260 | 1261 | is-number-object@1.0.7: 1262 | resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} 1263 | engines: {node: '>= 0.4'} 1264 | 1265 | is-number@7.0.0: 1266 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1267 | engines: {node: '>=0.12.0'} 1268 | 1269 | is-path-inside@3.0.3: 1270 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} 1271 | engines: {node: '>=8'} 1272 | 1273 | is-plain-obj@1.1.0: 1274 | resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} 1275 | engines: {node: '>=0.10.0'} 1276 | 1277 | is-regex@1.1.4: 1278 | resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} 1279 | engines: {node: '>= 0.4'} 1280 | 1281 | is-shared-array-buffer@1.0.2: 1282 | resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} 1283 | 1284 | is-stream@2.0.1: 1285 | resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} 1286 | engines: {node: '>=8'} 1287 | 1288 | is-stream@3.0.0: 1289 | resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} 1290 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1291 | 1292 | is-string@1.0.7: 1293 | resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} 1294 | engines: {node: '>= 0.4'} 1295 | 1296 | is-subdir@1.2.0: 1297 | resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} 1298 | engines: {node: '>=4'} 1299 | 1300 | is-symbol@1.0.4: 1301 | resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} 1302 | engines: {node: '>= 0.4'} 1303 | 1304 | is-typed-array@1.1.10: 1305 | resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==} 1306 | engines: {node: '>= 0.4'} 1307 | 1308 | is-weakref@1.0.2: 1309 | resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} 1310 | 1311 | is-windows@1.0.2: 1312 | resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} 1313 | engines: {node: '>=0.10.0'} 1314 | 1315 | isexe@2.0.0: 1316 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1317 | 1318 | istanbul-lib-coverage@3.2.0: 1319 | resolution: {integrity: sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==} 1320 | engines: {node: '>=8'} 1321 | 1322 | istanbul-lib-report@3.0.0: 1323 | resolution: {integrity: sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==} 1324 | engines: {node: '>=8'} 1325 | 1326 | istanbul-reports@3.1.5: 1327 | resolution: {integrity: sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==} 1328 | engines: {node: '>=8'} 1329 | 1330 | joycon@3.1.1: 1331 | resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} 1332 | engines: {node: '>=10'} 1333 | 1334 | js-tokens@4.0.0: 1335 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 1336 | 1337 | js-tokens@8.0.3: 1338 | resolution: {integrity: sha512-UfJMcSJc+SEXEl9lH/VLHSZbThQyLpw1vLO1Lb+j4RWDvG3N2f7yj3PVQA3cmkTBNldJ9eFnM+xEXxHIXrYiJw==} 1339 | 1340 | js-yaml@3.14.1: 1341 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} 1342 | hasBin: true 1343 | 1344 | js-yaml@4.1.0: 1345 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 1346 | hasBin: true 1347 | 1348 | json-parse-even-better-errors@2.3.1: 1349 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} 1350 | 1351 | json-schema-traverse@0.4.1: 1352 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1353 | 1354 | json-stable-stringify-without-jsonify@1.0.1: 1355 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 1356 | 1357 | jsonc-parser@3.2.0: 1358 | resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} 1359 | 1360 | jsonfile@4.0.0: 1361 | resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} 1362 | 1363 | kind-of@6.0.3: 1364 | resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} 1365 | engines: {node: '>=0.10.0'} 1366 | 1367 | kleur@4.1.5: 1368 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 1369 | engines: {node: '>=6'} 1370 | 1371 | levn@0.4.1: 1372 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 1373 | engines: {node: '>= 0.8.0'} 1374 | 1375 | lilconfig@2.1.0: 1376 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} 1377 | engines: {node: '>=10'} 1378 | 1379 | lilconfig@3.0.0: 1380 | resolution: {integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==} 1381 | engines: {node: '>=14'} 1382 | 1383 | lines-and-columns@1.2.4: 1384 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 1385 | 1386 | lint-staged@15.2.2: 1387 | resolution: {integrity: sha512-TiTt93OPh1OZOsb5B7k96A/ATl2AjIZo+vnzFZ6oHK5FuTk63ByDtxGQpHm+kFETjEWqgkF95M8FRXKR/LEBcw==} 1388 | engines: {node: '>=18.12.0'} 1389 | hasBin: true 1390 | 1391 | listr2@8.0.1: 1392 | resolution: {integrity: sha512-ovJXBXkKGfq+CwmKTjluEqFi3p4h8xvkxGQQAQan22YCgef4KZ1mKGjzfGh6PL6AW5Csw0QiQPNuQyH+6Xk3hA==} 1393 | engines: {node: '>=18.0.0'} 1394 | 1395 | load-tsconfig@0.2.3: 1396 | resolution: {integrity: sha512-iyT2MXws+dc2Wi6o3grCFtGXpeMvHmJqS27sMPGtV2eUu4PeFnG+33I8BlFK1t1NWMjOpcx9bridn5yxLDX2gQ==} 1397 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1398 | 1399 | load-yaml-file@0.2.0: 1400 | resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} 1401 | engines: {node: '>=6'} 1402 | 1403 | local-pkg@0.5.0: 1404 | resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} 1405 | engines: {node: '>=14'} 1406 | 1407 | locate-path@5.0.0: 1408 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} 1409 | engines: {node: '>=8'} 1410 | 1411 | locate-path@6.0.0: 1412 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 1413 | engines: {node: '>=10'} 1414 | 1415 | lodash.merge@4.6.2: 1416 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 1417 | 1418 | lodash.sortby@4.7.0: 1419 | resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} 1420 | 1421 | lodash.startcase@4.4.0: 1422 | resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} 1423 | 1424 | log-update@6.0.0: 1425 | resolution: {integrity: sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw==} 1426 | engines: {node: '>=18'} 1427 | 1428 | loupe@2.3.7: 1429 | resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} 1430 | 1431 | lru-cache@4.1.5: 1432 | resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} 1433 | 1434 | lru-cache@6.0.0: 1435 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 1436 | engines: {node: '>=10'} 1437 | 1438 | magic-string@0.30.1: 1439 | resolution: {integrity: sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==} 1440 | engines: {node: '>=12'} 1441 | 1442 | magic-string@0.30.5: 1443 | resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==} 1444 | engines: {node: '>=12'} 1445 | 1446 | make-dir@3.1.0: 1447 | resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} 1448 | engines: {node: '>=8'} 1449 | 1450 | map-obj@1.0.1: 1451 | resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} 1452 | engines: {node: '>=0.10.0'} 1453 | 1454 | map-obj@4.3.0: 1455 | resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} 1456 | engines: {node: '>=8'} 1457 | 1458 | meow@6.1.1: 1459 | resolution: {integrity: sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==} 1460 | engines: {node: '>=8'} 1461 | 1462 | merge-stream@2.0.0: 1463 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} 1464 | 1465 | merge2@1.4.1: 1466 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1467 | engines: {node: '>= 8'} 1468 | 1469 | micromatch@4.0.5: 1470 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 1471 | engines: {node: '>=8.6'} 1472 | 1473 | mime-db@1.52.0: 1474 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} 1475 | engines: {node: '>= 0.6'} 1476 | 1477 | mime-types@2.1.35: 1478 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} 1479 | engines: {node: '>= 0.6'} 1480 | 1481 | mimic-fn@2.1.0: 1482 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} 1483 | engines: {node: '>=6'} 1484 | 1485 | mimic-fn@4.0.0: 1486 | resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} 1487 | engines: {node: '>=12'} 1488 | 1489 | min-indent@1.0.1: 1490 | resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} 1491 | engines: {node: '>=4'} 1492 | 1493 | minimatch@3.1.2: 1494 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 1495 | 1496 | minimatch@9.0.4: 1497 | resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} 1498 | engines: {node: '>=16 || 14 >=14.17'} 1499 | 1500 | minimist-options@4.1.0: 1501 | resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} 1502 | engines: {node: '>= 6'} 1503 | 1504 | mixme@0.5.5: 1505 | resolution: {integrity: sha512-/6IupbRx32s7jjEwHcycXikJwFD5UujbVNuJFkeKLYje+92OvtuPniF6JhnFm5JCTDUhS+kYK3W/4BWYQYXz7w==} 1506 | engines: {node: '>= 8.0.0'} 1507 | 1508 | mlly@1.4.2: 1509 | resolution: {integrity: sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==} 1510 | 1511 | ms@2.1.2: 1512 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 1513 | 1514 | mz@2.7.0: 1515 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} 1516 | 1517 | nanoid@3.3.7: 1518 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} 1519 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 1520 | hasBin: true 1521 | 1522 | natural-compare@1.4.0: 1523 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 1524 | 1525 | node-fetch@2.6.9: 1526 | resolution: {integrity: sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==} 1527 | engines: {node: 4.x || >=6.0.0} 1528 | peerDependencies: 1529 | encoding: ^0.1.0 1530 | peerDependenciesMeta: 1531 | encoding: 1532 | optional: true 1533 | 1534 | normalize-package-data@2.5.0: 1535 | resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} 1536 | 1537 | normalize-path@3.0.0: 1538 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 1539 | engines: {node: '>=0.10.0'} 1540 | 1541 | npm-run-path@4.0.1: 1542 | resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} 1543 | engines: {node: '>=8'} 1544 | 1545 | npm-run-path@5.1.0: 1546 | resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} 1547 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1548 | 1549 | object-assign@4.1.1: 1550 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 1551 | engines: {node: '>=0.10.0'} 1552 | 1553 | object-inspect@1.12.3: 1554 | resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} 1555 | 1556 | object-keys@1.1.1: 1557 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} 1558 | engines: {node: '>= 0.4'} 1559 | 1560 | object.assign@4.1.4: 1561 | resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} 1562 | engines: {node: '>= 0.4'} 1563 | 1564 | once@1.4.0: 1565 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 1566 | 1567 | onetime@5.1.2: 1568 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} 1569 | engines: {node: '>=6'} 1570 | 1571 | onetime@6.0.0: 1572 | resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} 1573 | engines: {node: '>=12'} 1574 | 1575 | optionator@0.9.3: 1576 | resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} 1577 | engines: {node: '>= 0.8.0'} 1578 | 1579 | os-tmpdir@1.0.2: 1580 | resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} 1581 | engines: {node: '>=0.10.0'} 1582 | 1583 | outdent@0.5.0: 1584 | resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} 1585 | 1586 | p-filter@2.1.0: 1587 | resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} 1588 | engines: {node: '>=8'} 1589 | 1590 | p-limit@2.3.0: 1591 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} 1592 | engines: {node: '>=6'} 1593 | 1594 | p-limit@3.1.0: 1595 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 1596 | engines: {node: '>=10'} 1597 | 1598 | p-limit@5.0.0: 1599 | resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} 1600 | engines: {node: '>=18'} 1601 | 1602 | p-locate@4.1.0: 1603 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} 1604 | engines: {node: '>=8'} 1605 | 1606 | p-locate@5.0.0: 1607 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 1608 | engines: {node: '>=10'} 1609 | 1610 | p-map@2.1.0: 1611 | resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} 1612 | engines: {node: '>=6'} 1613 | 1614 | p-try@2.2.0: 1615 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} 1616 | engines: {node: '>=6'} 1617 | 1618 | parent-module@1.0.1: 1619 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 1620 | engines: {node: '>=6'} 1621 | 1622 | parse-json@5.2.0: 1623 | resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} 1624 | engines: {node: '>=8'} 1625 | 1626 | path-exists@4.0.0: 1627 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 1628 | engines: {node: '>=8'} 1629 | 1630 | path-is-absolute@1.0.1: 1631 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 1632 | engines: {node: '>=0.10.0'} 1633 | 1634 | path-key@3.1.1: 1635 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 1636 | engines: {node: '>=8'} 1637 | 1638 | path-key@4.0.0: 1639 | resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} 1640 | engines: {node: '>=12'} 1641 | 1642 | path-parse@1.0.7: 1643 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 1644 | 1645 | path-type@4.0.0: 1646 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 1647 | engines: {node: '>=8'} 1648 | 1649 | pathe@1.1.1: 1650 | resolution: {integrity: sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==} 1651 | 1652 | pathval@1.1.1: 1653 | resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} 1654 | 1655 | picocolors@1.0.0: 1656 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 1657 | 1658 | picomatch@2.3.1: 1659 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1660 | engines: {node: '>=8.6'} 1661 | 1662 | pidtree@0.6.0: 1663 | resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} 1664 | engines: {node: '>=0.10'} 1665 | hasBin: true 1666 | 1667 | pify@4.0.1: 1668 | resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} 1669 | engines: {node: '>=6'} 1670 | 1671 | pirates@4.0.5: 1672 | resolution: {integrity: sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==} 1673 | engines: {node: '>= 6'} 1674 | 1675 | pkg-dir@4.2.0: 1676 | resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} 1677 | engines: {node: '>=8'} 1678 | 1679 | pkg-types@1.0.3: 1680 | resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} 1681 | 1682 | postcss-load-config@4.0.1: 1683 | resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==} 1684 | engines: {node: '>= 14'} 1685 | peerDependencies: 1686 | postcss: '>=8.0.9' 1687 | ts-node: '>=9.0.0' 1688 | peerDependenciesMeta: 1689 | postcss: 1690 | optional: true 1691 | ts-node: 1692 | optional: true 1693 | 1694 | postcss@8.4.32: 1695 | resolution: {integrity: sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==} 1696 | engines: {node: ^10 || ^12 || >=14} 1697 | 1698 | preferred-pm@3.0.3: 1699 | resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==} 1700 | engines: {node: '>=10'} 1701 | 1702 | prelude-ls@1.2.1: 1703 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 1704 | engines: {node: '>= 0.8.0'} 1705 | 1706 | prettier@2.8.4: 1707 | resolution: {integrity: sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==} 1708 | engines: {node: '>=10.13.0'} 1709 | hasBin: true 1710 | 1711 | prettier@3.2.5: 1712 | resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} 1713 | engines: {node: '>=14'} 1714 | hasBin: true 1715 | 1716 | pretty-format@29.7.0: 1717 | resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} 1718 | engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 1719 | 1720 | proxy-from-env@1.1.0: 1721 | resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} 1722 | 1723 | pseudomap@1.0.2: 1724 | resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} 1725 | 1726 | punycode@2.3.0: 1727 | resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} 1728 | engines: {node: '>=6'} 1729 | 1730 | queue-microtask@1.2.3: 1731 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1732 | 1733 | quick-lru@4.0.1: 1734 | resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==} 1735 | engines: {node: '>=8'} 1736 | 1737 | react-is@18.2.0: 1738 | resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} 1739 | 1740 | read-pkg-up@7.0.1: 1741 | resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} 1742 | engines: {node: '>=8'} 1743 | 1744 | read-pkg@5.2.0: 1745 | resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} 1746 | engines: {node: '>=8'} 1747 | 1748 | read-yaml-file@1.1.0: 1749 | resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} 1750 | engines: {node: '>=6'} 1751 | 1752 | readdirp@3.6.0: 1753 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 1754 | engines: {node: '>=8.10.0'} 1755 | 1756 | redent@3.0.0: 1757 | resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} 1758 | engines: {node: '>=8'} 1759 | 1760 | regenerator-runtime@0.13.11: 1761 | resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} 1762 | 1763 | regexp.prototype.flags@1.4.3: 1764 | resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==} 1765 | engines: {node: '>= 0.4'} 1766 | 1767 | require-directory@2.1.1: 1768 | resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} 1769 | engines: {node: '>=0.10.0'} 1770 | 1771 | require-main-filename@2.0.0: 1772 | resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} 1773 | 1774 | resolve-from@4.0.0: 1775 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 1776 | engines: {node: '>=4'} 1777 | 1778 | resolve-from@5.0.0: 1779 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} 1780 | engines: {node: '>=8'} 1781 | 1782 | resolve@1.22.1: 1783 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} 1784 | hasBin: true 1785 | 1786 | restore-cursor@4.0.0: 1787 | resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} 1788 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1789 | 1790 | reusify@1.0.4: 1791 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1792 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1793 | 1794 | rfdc@1.3.0: 1795 | resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} 1796 | 1797 | rimraf@3.0.2: 1798 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 1799 | hasBin: true 1800 | 1801 | rollup@4.5.1: 1802 | resolution: {integrity: sha512-0EQribZoPKpb5z1NW/QYm3XSR//Xr8BeEXU49Lc/mQmpmVVG5jPUVrpc2iptup/0WMrY9mzas0fxH+TjYvG2CA==} 1803 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 1804 | hasBin: true 1805 | 1806 | run-parallel@1.2.0: 1807 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1808 | 1809 | safe-regex-test@1.0.0: 1810 | resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} 1811 | 1812 | safer-buffer@2.1.2: 1813 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} 1814 | 1815 | semver@5.7.1: 1816 | resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} 1817 | hasBin: true 1818 | 1819 | semver@6.3.0: 1820 | resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} 1821 | hasBin: true 1822 | 1823 | semver@7.5.4: 1824 | resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} 1825 | engines: {node: '>=10'} 1826 | hasBin: true 1827 | 1828 | semver@7.6.0: 1829 | resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==} 1830 | engines: {node: '>=10'} 1831 | hasBin: true 1832 | 1833 | set-blocking@2.0.0: 1834 | resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} 1835 | 1836 | shebang-command@1.2.0: 1837 | resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} 1838 | engines: {node: '>=0.10.0'} 1839 | 1840 | shebang-command@2.0.0: 1841 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 1842 | engines: {node: '>=8'} 1843 | 1844 | shebang-regex@1.0.0: 1845 | resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} 1846 | engines: {node: '>=0.10.0'} 1847 | 1848 | shebang-regex@3.0.0: 1849 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 1850 | engines: {node: '>=8'} 1851 | 1852 | side-channel@1.0.4: 1853 | resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} 1854 | 1855 | siginfo@2.0.0: 1856 | resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} 1857 | 1858 | signal-exit@3.0.7: 1859 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 1860 | 1861 | signal-exit@4.1.0: 1862 | resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 1863 | engines: {node: '>=14'} 1864 | 1865 | slash@3.0.0: 1866 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 1867 | engines: {node: '>=8'} 1868 | 1869 | slice-ansi@5.0.0: 1870 | resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} 1871 | engines: {node: '>=12'} 1872 | 1873 | slice-ansi@7.1.0: 1874 | resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==} 1875 | engines: {node: '>=18'} 1876 | 1877 | smartwrap@2.0.2: 1878 | resolution: {integrity: sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==} 1879 | engines: {node: '>=6'} 1880 | hasBin: true 1881 | 1882 | source-map-js@1.0.2: 1883 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 1884 | engines: {node: '>=0.10.0'} 1885 | 1886 | source-map@0.8.0-beta.0: 1887 | resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} 1888 | engines: {node: '>= 8'} 1889 | 1890 | spawndamnit@2.0.0: 1891 | resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==} 1892 | 1893 | spdx-correct@3.2.0: 1894 | resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} 1895 | 1896 | spdx-exceptions@2.3.0: 1897 | resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} 1898 | 1899 | spdx-expression-parse@3.0.1: 1900 | resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} 1901 | 1902 | spdx-license-ids@3.0.13: 1903 | resolution: {integrity: sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==} 1904 | 1905 | sprintf-js@1.0.3: 1906 | resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} 1907 | 1908 | stackback@0.0.2: 1909 | resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} 1910 | 1911 | std-env@3.3.3: 1912 | resolution: {integrity: sha512-Rz6yejtVyWnVjC1RFvNmYL10kgjC49EOghxWn0RFqlCHGFpQx+Xe7yW3I4ceK1SGrWIGMjD5Kbue8W/udkbMJg==} 1913 | 1914 | std-env@3.6.0: 1915 | resolution: {integrity: sha512-aFZ19IgVmhdB2uX599ve2kE6BIE3YMnQ6Gp6BURhW/oIzpXGKr878TQfAQZn1+i0Flcc/UKUy1gOlcfaUBCryg==} 1916 | 1917 | stream-transform@2.1.3: 1918 | resolution: {integrity: sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==} 1919 | 1920 | string-argv@0.3.2: 1921 | resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} 1922 | engines: {node: '>=0.6.19'} 1923 | 1924 | string-width@4.2.3: 1925 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 1926 | engines: {node: '>=8'} 1927 | 1928 | string-width@7.0.0: 1929 | resolution: {integrity: sha512-GPQHj7row82Hjo9hKZieKcHIhaAIKOJvFSIZXuCU9OASVZrMNUaZuz++SPVrBjnLsnk4k+z9f2EIypgxf2vNFw==} 1930 | engines: {node: '>=18'} 1931 | 1932 | string.prototype.trim@1.2.7: 1933 | resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} 1934 | engines: {node: '>= 0.4'} 1935 | 1936 | string.prototype.trimend@1.0.6: 1937 | resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} 1938 | 1939 | string.prototype.trimstart@1.0.6: 1940 | resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} 1941 | 1942 | strip-ansi@6.0.1: 1943 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 1944 | engines: {node: '>=8'} 1945 | 1946 | strip-ansi@7.1.0: 1947 | resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 1948 | engines: {node: '>=12'} 1949 | 1950 | strip-bom@3.0.0: 1951 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 1952 | engines: {node: '>=4'} 1953 | 1954 | strip-final-newline@2.0.0: 1955 | resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} 1956 | engines: {node: '>=6'} 1957 | 1958 | strip-final-newline@3.0.0: 1959 | resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} 1960 | engines: {node: '>=12'} 1961 | 1962 | strip-indent@3.0.0: 1963 | resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} 1964 | engines: {node: '>=8'} 1965 | 1966 | strip-json-comments@3.1.1: 1967 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 1968 | engines: {node: '>=8'} 1969 | 1970 | strip-literal@2.0.0: 1971 | resolution: {integrity: sha512-f9vHgsCWBq2ugHAkGMiiYY+AYG0D/cbloKKg0nhaaaSNsujdGIpVXCNsrJpCKr5M0f4aI31mr13UjY6GAuXCKA==} 1972 | 1973 | sucrase@3.29.0: 1974 | resolution: {integrity: sha512-bZPAuGA5SdFHuzqIhTAqt9fvNEo9rESqXIG3oiKdF8K4UmkQxC4KlNL3lVyAErXp+mPvUqZ5l13qx6TrDIGf3A==} 1975 | engines: {node: '>=8'} 1976 | hasBin: true 1977 | 1978 | supports-color@5.5.0: 1979 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 1980 | engines: {node: '>=4'} 1981 | 1982 | supports-color@7.2.0: 1983 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 1984 | engines: {node: '>=8'} 1985 | 1986 | supports-preserve-symlinks-flag@1.0.0: 1987 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 1988 | engines: {node: '>= 0.4'} 1989 | 1990 | term-size@2.2.1: 1991 | resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} 1992 | engines: {node: '>=8'} 1993 | 1994 | test-exclude@6.0.0: 1995 | resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} 1996 | engines: {node: '>=8'} 1997 | 1998 | text-table@0.2.0: 1999 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 2000 | 2001 | thenify-all@1.6.0: 2002 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} 2003 | engines: {node: '>=0.8'} 2004 | 2005 | thenify@3.3.1: 2006 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 2007 | 2008 | tinybench@2.5.1: 2009 | resolution: {integrity: sha512-65NKvSuAVDP/n4CqH+a9w2kTlLReS9vhsAP06MWx+/89nMinJyB2icyl58RIcqCmIggpojIGeuJGhjU1aGMBSg==} 2010 | 2011 | tinypool@0.8.4: 2012 | resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==} 2013 | engines: {node: '>=14.0.0'} 2014 | 2015 | tinyspy@2.2.0: 2016 | resolution: {integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==} 2017 | engines: {node: '>=14.0.0'} 2018 | 2019 | tmp@0.0.33: 2020 | resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} 2021 | engines: {node: '>=0.6.0'} 2022 | 2023 | to-regex-range@5.0.1: 2024 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 2025 | engines: {node: '>=8.0'} 2026 | 2027 | tr46@0.0.3: 2028 | resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} 2029 | 2030 | tr46@1.0.1: 2031 | resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} 2032 | 2033 | tree-kill@1.2.2: 2034 | resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} 2035 | hasBin: true 2036 | 2037 | trim-newlines@3.0.1: 2038 | resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} 2039 | engines: {node: '>=8'} 2040 | 2041 | ts-api-utils@1.3.0: 2042 | resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} 2043 | engines: {node: '>=16'} 2044 | peerDependencies: 2045 | typescript: '>=4.2.0' 2046 | 2047 | ts-interface-checker@0.1.13: 2048 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} 2049 | 2050 | tsup@8.0.2: 2051 | resolution: {integrity: sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==} 2052 | engines: {node: '>=18'} 2053 | hasBin: true 2054 | peerDependencies: 2055 | '@microsoft/api-extractor': ^7.36.0 2056 | '@swc/core': ^1 2057 | postcss: ^8.4.12 2058 | typescript: '>=4.5.0' 2059 | peerDependenciesMeta: 2060 | '@microsoft/api-extractor': 2061 | optional: true 2062 | '@swc/core': 2063 | optional: true 2064 | postcss: 2065 | optional: true 2066 | typescript: 2067 | optional: true 2068 | 2069 | tty-table@4.1.6: 2070 | resolution: {integrity: sha512-kRj5CBzOrakV4VRRY5kUWbNYvo/FpOsz65DzI5op9P+cHov3+IqPbo1JE1ZnQGkHdZgNFDsrEjrfqqy/Ply9fw==} 2071 | engines: {node: '>=8.0.0'} 2072 | hasBin: true 2073 | 2074 | tunnel@0.0.6: 2075 | resolution: {integrity: sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==} 2076 | engines: {node: '>=0.6.11 <=0.7.0 || >=0.7.3'} 2077 | 2078 | type-check@0.4.0: 2079 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 2080 | engines: {node: '>= 0.8.0'} 2081 | 2082 | type-detect@4.0.8: 2083 | resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} 2084 | engines: {node: '>=4'} 2085 | 2086 | type-fest@0.13.1: 2087 | resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} 2088 | engines: {node: '>=10'} 2089 | 2090 | type-fest@0.20.2: 2091 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 2092 | engines: {node: '>=10'} 2093 | 2094 | type-fest@0.6.0: 2095 | resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} 2096 | engines: {node: '>=8'} 2097 | 2098 | type-fest@0.8.1: 2099 | resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} 2100 | engines: {node: '>=8'} 2101 | 2102 | type-fest@3.13.1: 2103 | resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} 2104 | engines: {node: '>=14.16'} 2105 | 2106 | typed-array-length@1.0.4: 2107 | resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} 2108 | 2109 | typescript@5.4.5: 2110 | resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} 2111 | engines: {node: '>=14.17'} 2112 | hasBin: true 2113 | 2114 | ufo@1.3.2: 2115 | resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==} 2116 | 2117 | unbox-primitive@1.0.2: 2118 | resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} 2119 | 2120 | undici-types@5.26.5: 2121 | resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} 2122 | 2123 | universalify@0.1.2: 2124 | resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} 2125 | engines: {node: '>= 4.0.0'} 2126 | 2127 | uri-js@4.4.1: 2128 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 2129 | 2130 | uuid@8.3.2: 2131 | resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} 2132 | hasBin: true 2133 | 2134 | v8-to-istanbul@9.1.0: 2135 | resolution: {integrity: sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==} 2136 | engines: {node: '>=10.12.0'} 2137 | 2138 | validate-npm-package-license@3.0.4: 2139 | resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} 2140 | 2141 | vite-node@1.5.3: 2142 | resolution: {integrity: sha512-axFo00qiCpU/JLd8N1gu9iEYL3xTbMbMrbe5nDp9GL0nb6gurIdZLkkFogZXWnE8Oyy5kfSLwNVIcVsnhE7lgQ==} 2143 | engines: {node: ^18.0.0 || >=20.0.0} 2144 | hasBin: true 2145 | 2146 | vite@5.0.7: 2147 | resolution: {integrity: sha512-B4T4rJCDPihrQo2B+h1MbeGL/k/GMAHzhQ8S0LjQ142s6/+l3hHTT095ORvsshj4QCkoWu3Xtmob5mazvakaOw==} 2148 | engines: {node: ^18.0.0 || >=20.0.0} 2149 | hasBin: true 2150 | peerDependencies: 2151 | '@types/node': ^18.0.0 || >=20.0.0 2152 | less: '*' 2153 | lightningcss: ^1.21.0 2154 | sass: '*' 2155 | stylus: '*' 2156 | sugarss: '*' 2157 | terser: ^5.4.0 2158 | peerDependenciesMeta: 2159 | '@types/node': 2160 | optional: true 2161 | less: 2162 | optional: true 2163 | lightningcss: 2164 | optional: true 2165 | sass: 2166 | optional: true 2167 | stylus: 2168 | optional: true 2169 | sugarss: 2170 | optional: true 2171 | terser: 2172 | optional: true 2173 | 2174 | vitest-github-actions-reporter@0.11.1: 2175 | resolution: {integrity: sha512-ZHHB0wBgOPhMYCB17WKVlJZa+5SdudBZFoVoebwfq3ioIUTeLQGYHwh85vpdJAxRghLP8d0qI/6eCTueGyDVXA==} 2176 | engines: {node: '>=14.16.0'} 2177 | peerDependencies: 2178 | vitest: '>=0.28.5' 2179 | 2180 | vitest@1.5.3: 2181 | resolution: {integrity: sha512-2oM7nLXylw3mQlW6GXnRriw+7YvZFk/YNV8AxIC3Z3MfFbuziLGWP9GPxxu/7nRlXhqyxBikpamr+lEEj1sUEw==} 2182 | engines: {node: ^18.0.0 || >=20.0.0} 2183 | hasBin: true 2184 | peerDependencies: 2185 | '@edge-runtime/vm': '*' 2186 | '@types/node': ^18.0.0 || >=20.0.0 2187 | '@vitest/browser': 1.5.3 2188 | '@vitest/ui': 1.5.3 2189 | happy-dom: '*' 2190 | jsdom: '*' 2191 | peerDependenciesMeta: 2192 | '@edge-runtime/vm': 2193 | optional: true 2194 | '@types/node': 2195 | optional: true 2196 | '@vitest/browser': 2197 | optional: true 2198 | '@vitest/ui': 2199 | optional: true 2200 | happy-dom: 2201 | optional: true 2202 | jsdom: 2203 | optional: true 2204 | 2205 | wcwidth@1.0.1: 2206 | resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} 2207 | 2208 | webidl-conversions@3.0.1: 2209 | resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} 2210 | 2211 | webidl-conversions@4.0.2: 2212 | resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} 2213 | 2214 | whatwg-url@5.0.0: 2215 | resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} 2216 | 2217 | whatwg-url@7.1.0: 2218 | resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} 2219 | 2220 | which-boxed-primitive@1.0.2: 2221 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} 2222 | 2223 | which-module@2.0.0: 2224 | resolution: {integrity: sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==} 2225 | 2226 | which-pm@2.0.0: 2227 | resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==} 2228 | engines: {node: '>=8.15'} 2229 | 2230 | which-typed-array@1.1.9: 2231 | resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==} 2232 | engines: {node: '>= 0.4'} 2233 | 2234 | which@1.3.1: 2235 | resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} 2236 | hasBin: true 2237 | 2238 | which@2.0.2: 2239 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 2240 | engines: {node: '>= 8'} 2241 | hasBin: true 2242 | 2243 | why-is-node-running@2.2.2: 2244 | resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==} 2245 | engines: {node: '>=8'} 2246 | hasBin: true 2247 | 2248 | wrap-ansi@6.2.0: 2249 | resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} 2250 | engines: {node: '>=8'} 2251 | 2252 | wrap-ansi@7.0.0: 2253 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 2254 | engines: {node: '>=10'} 2255 | 2256 | wrap-ansi@9.0.0: 2257 | resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==} 2258 | engines: {node: '>=18'} 2259 | 2260 | wrappy@1.0.2: 2261 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 2262 | 2263 | y18n@4.0.3: 2264 | resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} 2265 | 2266 | y18n@5.0.8: 2267 | resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} 2268 | engines: {node: '>=10'} 2269 | 2270 | yallist@2.1.2: 2271 | resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} 2272 | 2273 | yallist@4.0.0: 2274 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 2275 | 2276 | yaml@2.3.4: 2277 | resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} 2278 | engines: {node: '>= 14'} 2279 | 2280 | yargs-parser@18.1.3: 2281 | resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} 2282 | engines: {node: '>=6'} 2283 | 2284 | yargs-parser@20.2.9: 2285 | resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} 2286 | engines: {node: '>=10'} 2287 | 2288 | yargs-parser@21.1.1: 2289 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} 2290 | engines: {node: '>=12'} 2291 | 2292 | yargs@15.4.1: 2293 | resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==} 2294 | engines: {node: '>=8'} 2295 | 2296 | yargs@16.2.0: 2297 | resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} 2298 | engines: {node: '>=10'} 2299 | 2300 | yargs@17.7.1: 2301 | resolution: {integrity: sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==} 2302 | engines: {node: '>=12'} 2303 | 2304 | yocto-queue@0.1.0: 2305 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 2306 | engines: {node: '>=10'} 2307 | 2308 | yocto-queue@1.0.0: 2309 | resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} 2310 | engines: {node: '>=12.20'} 2311 | 2312 | snapshots: 2313 | 2314 | '@aashutoshrathi/word-wrap@1.2.6': {} 2315 | 2316 | '@actions/core@1.10.0': 2317 | dependencies: 2318 | '@actions/http-client': 2.1.0 2319 | uuid: 8.3.2 2320 | 2321 | '@actions/http-client@2.1.0': 2322 | dependencies: 2323 | tunnel: 0.0.6 2324 | 2325 | '@ampproject/remapping@2.2.1': 2326 | dependencies: 2327 | '@jridgewell/gen-mapping': 0.3.3 2328 | '@jridgewell/trace-mapping': 0.3.17 2329 | 2330 | '@babel/code-frame@7.18.6': 2331 | dependencies: 2332 | '@babel/highlight': 7.18.6 2333 | 2334 | '@babel/helper-validator-identifier@7.19.1': {} 2335 | 2336 | '@babel/highlight@7.18.6': 2337 | dependencies: 2338 | '@babel/helper-validator-identifier': 7.19.1 2339 | chalk: 2.4.2 2340 | js-tokens: 4.0.0 2341 | 2342 | '@babel/runtime@7.21.0': 2343 | dependencies: 2344 | regenerator-runtime: 0.13.11 2345 | 2346 | '@bcoe/v8-coverage@0.2.3': {} 2347 | 2348 | '@changesets/apply-release-plan@7.0.0': 2349 | dependencies: 2350 | '@babel/runtime': 7.21.0 2351 | '@changesets/config': 3.0.0 2352 | '@changesets/get-version-range-type': 0.4.0 2353 | '@changesets/git': 3.0.0 2354 | '@changesets/types': 6.0.0 2355 | '@manypkg/get-packages': 1.1.3 2356 | detect-indent: 6.1.0 2357 | fs-extra: 7.0.1 2358 | lodash.startcase: 4.4.0 2359 | outdent: 0.5.0 2360 | prettier: 2.8.4 2361 | resolve-from: 5.0.0 2362 | semver: 7.5.4 2363 | 2364 | '@changesets/assemble-release-plan@6.0.0': 2365 | dependencies: 2366 | '@babel/runtime': 7.21.0 2367 | '@changesets/errors': 0.2.0 2368 | '@changesets/get-dependents-graph': 2.0.0 2369 | '@changesets/types': 6.0.0 2370 | '@manypkg/get-packages': 1.1.3 2371 | semver: 7.5.4 2372 | 2373 | '@changesets/changelog-git@0.2.0': 2374 | dependencies: 2375 | '@changesets/types': 6.0.0 2376 | 2377 | '@changesets/changelog-github@0.5.0': 2378 | dependencies: 2379 | '@changesets/get-github-info': 0.6.0 2380 | '@changesets/types': 6.0.0 2381 | dotenv: 8.6.0 2382 | transitivePeerDependencies: 2383 | - encoding 2384 | 2385 | '@changesets/cli@2.27.1': 2386 | dependencies: 2387 | '@babel/runtime': 7.21.0 2388 | '@changesets/apply-release-plan': 7.0.0 2389 | '@changesets/assemble-release-plan': 6.0.0 2390 | '@changesets/changelog-git': 0.2.0 2391 | '@changesets/config': 3.0.0 2392 | '@changesets/errors': 0.2.0 2393 | '@changesets/get-dependents-graph': 2.0.0 2394 | '@changesets/get-release-plan': 4.0.0 2395 | '@changesets/git': 3.0.0 2396 | '@changesets/logger': 0.1.0 2397 | '@changesets/pre': 2.0.0 2398 | '@changesets/read': 0.6.0 2399 | '@changesets/types': 6.0.0 2400 | '@changesets/write': 0.3.0 2401 | '@manypkg/get-packages': 1.1.3 2402 | '@types/semver': 7.5.0 2403 | ansi-colors: 4.1.3 2404 | chalk: 2.4.2 2405 | ci-info: 3.8.0 2406 | enquirer: 2.3.6 2407 | external-editor: 3.1.0 2408 | fs-extra: 7.0.1 2409 | human-id: 1.0.2 2410 | meow: 6.1.1 2411 | outdent: 0.5.0 2412 | p-limit: 2.3.0 2413 | preferred-pm: 3.0.3 2414 | resolve-from: 5.0.0 2415 | semver: 7.5.4 2416 | spawndamnit: 2.0.0 2417 | term-size: 2.2.1 2418 | tty-table: 4.1.6 2419 | 2420 | '@changesets/config@3.0.0': 2421 | dependencies: 2422 | '@changesets/errors': 0.2.0 2423 | '@changesets/get-dependents-graph': 2.0.0 2424 | '@changesets/logger': 0.1.0 2425 | '@changesets/types': 6.0.0 2426 | '@manypkg/get-packages': 1.1.3 2427 | fs-extra: 7.0.1 2428 | micromatch: 4.0.5 2429 | 2430 | '@changesets/errors@0.2.0': 2431 | dependencies: 2432 | extendable-error: 0.1.7 2433 | 2434 | '@changesets/get-dependents-graph@2.0.0': 2435 | dependencies: 2436 | '@changesets/types': 6.0.0 2437 | '@manypkg/get-packages': 1.1.3 2438 | chalk: 2.4.2 2439 | fs-extra: 7.0.1 2440 | semver: 7.5.4 2441 | 2442 | '@changesets/get-github-info@0.6.0': 2443 | dependencies: 2444 | dataloader: 1.4.0 2445 | node-fetch: 2.6.9 2446 | transitivePeerDependencies: 2447 | - encoding 2448 | 2449 | '@changesets/get-release-plan@4.0.0': 2450 | dependencies: 2451 | '@babel/runtime': 7.21.0 2452 | '@changesets/assemble-release-plan': 6.0.0 2453 | '@changesets/config': 3.0.0 2454 | '@changesets/pre': 2.0.0 2455 | '@changesets/read': 0.6.0 2456 | '@changesets/types': 6.0.0 2457 | '@manypkg/get-packages': 1.1.3 2458 | 2459 | '@changesets/get-version-range-type@0.4.0': {} 2460 | 2461 | '@changesets/git@3.0.0': 2462 | dependencies: 2463 | '@babel/runtime': 7.21.0 2464 | '@changesets/errors': 0.2.0 2465 | '@changesets/types': 6.0.0 2466 | '@manypkg/get-packages': 1.1.3 2467 | is-subdir: 1.2.0 2468 | micromatch: 4.0.5 2469 | spawndamnit: 2.0.0 2470 | 2471 | '@changesets/logger@0.1.0': 2472 | dependencies: 2473 | chalk: 2.4.2 2474 | 2475 | '@changesets/parse@0.4.0': 2476 | dependencies: 2477 | '@changesets/types': 6.0.0 2478 | js-yaml: 3.14.1 2479 | 2480 | '@changesets/pre@2.0.0': 2481 | dependencies: 2482 | '@babel/runtime': 7.21.0 2483 | '@changesets/errors': 0.2.0 2484 | '@changesets/types': 6.0.0 2485 | '@manypkg/get-packages': 1.1.3 2486 | fs-extra: 7.0.1 2487 | 2488 | '@changesets/read@0.6.0': 2489 | dependencies: 2490 | '@babel/runtime': 7.21.0 2491 | '@changesets/git': 3.0.0 2492 | '@changesets/logger': 0.1.0 2493 | '@changesets/parse': 0.4.0 2494 | '@changesets/types': 6.0.0 2495 | chalk: 2.4.2 2496 | fs-extra: 7.0.1 2497 | p-filter: 2.1.0 2498 | 2499 | '@changesets/types@4.1.0': {} 2500 | 2501 | '@changesets/types@6.0.0': {} 2502 | 2503 | '@changesets/write@0.3.0': 2504 | dependencies: 2505 | '@babel/runtime': 7.21.0 2506 | '@changesets/types': 6.0.0 2507 | fs-extra: 7.0.1 2508 | human-id: 1.0.2 2509 | prettier: 2.8.4 2510 | 2511 | '@esbuild/android-arm64@0.19.7': 2512 | optional: true 2513 | 2514 | '@esbuild/android-arm@0.19.7': 2515 | optional: true 2516 | 2517 | '@esbuild/android-x64@0.19.7': 2518 | optional: true 2519 | 2520 | '@esbuild/darwin-arm64@0.19.7': 2521 | optional: true 2522 | 2523 | '@esbuild/darwin-x64@0.19.7': 2524 | optional: true 2525 | 2526 | '@esbuild/freebsd-arm64@0.19.7': 2527 | optional: true 2528 | 2529 | '@esbuild/freebsd-x64@0.19.7': 2530 | optional: true 2531 | 2532 | '@esbuild/linux-arm64@0.19.7': 2533 | optional: true 2534 | 2535 | '@esbuild/linux-arm@0.19.7': 2536 | optional: true 2537 | 2538 | '@esbuild/linux-ia32@0.19.7': 2539 | optional: true 2540 | 2541 | '@esbuild/linux-loong64@0.19.7': 2542 | optional: true 2543 | 2544 | '@esbuild/linux-mips64el@0.19.7': 2545 | optional: true 2546 | 2547 | '@esbuild/linux-ppc64@0.19.7': 2548 | optional: true 2549 | 2550 | '@esbuild/linux-riscv64@0.19.7': 2551 | optional: true 2552 | 2553 | '@esbuild/linux-s390x@0.19.7': 2554 | optional: true 2555 | 2556 | '@esbuild/linux-x64@0.19.7': 2557 | optional: true 2558 | 2559 | '@esbuild/netbsd-x64@0.19.7': 2560 | optional: true 2561 | 2562 | '@esbuild/openbsd-x64@0.19.7': 2563 | optional: true 2564 | 2565 | '@esbuild/sunos-x64@0.19.7': 2566 | optional: true 2567 | 2568 | '@esbuild/win32-arm64@0.19.7': 2569 | optional: true 2570 | 2571 | '@esbuild/win32-ia32@0.19.7': 2572 | optional: true 2573 | 2574 | '@esbuild/win32-x64@0.19.7': 2575 | optional: true 2576 | 2577 | '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': 2578 | dependencies: 2579 | eslint: 8.57.0 2580 | eslint-visitor-keys: 3.4.3 2581 | 2582 | '@eslint-community/regexpp@4.10.0': {} 2583 | 2584 | '@eslint-community/regexpp@4.6.2': {} 2585 | 2586 | '@eslint/eslintrc@2.1.4': 2587 | dependencies: 2588 | ajv: 6.12.6 2589 | debug: 4.3.4 2590 | espree: 9.6.1 2591 | globals: 13.20.0 2592 | ignore: 5.2.4 2593 | import-fresh: 3.3.0 2594 | js-yaml: 4.1.0 2595 | minimatch: 3.1.2 2596 | strip-json-comments: 3.1.1 2597 | transitivePeerDependencies: 2598 | - supports-color 2599 | 2600 | '@eslint/js@8.57.0': {} 2601 | 2602 | '@humanwhocodes/config-array@0.11.14': 2603 | dependencies: 2604 | '@humanwhocodes/object-schema': 2.0.2 2605 | debug: 4.3.4 2606 | minimatch: 3.1.2 2607 | transitivePeerDependencies: 2608 | - supports-color 2609 | 2610 | '@humanwhocodes/module-importer@1.0.1': {} 2611 | 2612 | '@humanwhocodes/object-schema@2.0.2': {} 2613 | 2614 | '@istanbuljs/schema@0.1.3': {} 2615 | 2616 | '@jest/schemas@29.6.3': 2617 | dependencies: 2618 | '@sinclair/typebox': 0.27.8 2619 | 2620 | '@jridgewell/gen-mapping@0.3.3': 2621 | dependencies: 2622 | '@jridgewell/set-array': 1.1.2 2623 | '@jridgewell/sourcemap-codec': 1.4.15 2624 | '@jridgewell/trace-mapping': 0.3.17 2625 | 2626 | '@jridgewell/resolve-uri@3.1.0': {} 2627 | 2628 | '@jridgewell/set-array@1.1.2': {} 2629 | 2630 | '@jridgewell/sourcemap-codec@1.4.14': {} 2631 | 2632 | '@jridgewell/sourcemap-codec@1.4.15': {} 2633 | 2634 | '@jridgewell/trace-mapping@0.3.17': 2635 | dependencies: 2636 | '@jridgewell/resolve-uri': 3.1.0 2637 | '@jridgewell/sourcemap-codec': 1.4.14 2638 | 2639 | '@manypkg/find-root@1.1.0': 2640 | dependencies: 2641 | '@babel/runtime': 7.21.0 2642 | '@types/node': 12.20.55 2643 | find-up: 4.1.0 2644 | fs-extra: 8.1.0 2645 | 2646 | '@manypkg/get-packages@1.1.3': 2647 | dependencies: 2648 | '@babel/runtime': 7.21.0 2649 | '@changesets/types': 4.1.0 2650 | '@manypkg/find-root': 1.1.0 2651 | fs-extra: 8.1.0 2652 | globby: 11.1.0 2653 | read-yaml-file: 1.1.0 2654 | 2655 | '@nodelib/fs.scandir@2.1.5': 2656 | dependencies: 2657 | '@nodelib/fs.stat': 2.0.5 2658 | run-parallel: 1.2.0 2659 | 2660 | '@nodelib/fs.stat@2.0.5': {} 2661 | 2662 | '@nodelib/fs.walk@1.2.8': 2663 | dependencies: 2664 | '@nodelib/fs.scandir': 2.1.5 2665 | fastq: 1.15.0 2666 | 2667 | '@rollup/rollup-android-arm-eabi@4.5.1': 2668 | optional: true 2669 | 2670 | '@rollup/rollup-android-arm64@4.5.1': 2671 | optional: true 2672 | 2673 | '@rollup/rollup-darwin-arm64@4.5.1': 2674 | optional: true 2675 | 2676 | '@rollup/rollup-darwin-x64@4.5.1': 2677 | optional: true 2678 | 2679 | '@rollup/rollup-linux-arm-gnueabihf@4.5.1': 2680 | optional: true 2681 | 2682 | '@rollup/rollup-linux-arm64-gnu@4.5.1': 2683 | optional: true 2684 | 2685 | '@rollup/rollup-linux-arm64-musl@4.5.1': 2686 | optional: true 2687 | 2688 | '@rollup/rollup-linux-x64-gnu@4.5.1': 2689 | optional: true 2690 | 2691 | '@rollup/rollup-linux-x64-musl@4.5.1': 2692 | optional: true 2693 | 2694 | '@rollup/rollup-win32-arm64-msvc@4.5.1': 2695 | optional: true 2696 | 2697 | '@rollup/rollup-win32-ia32-msvc@4.5.1': 2698 | optional: true 2699 | 2700 | '@rollup/rollup-win32-x64-msvc@4.5.1': 2701 | optional: true 2702 | 2703 | '@sinclair/typebox@0.27.8': {} 2704 | 2705 | '@types/estree@1.0.5': {} 2706 | 2707 | '@types/istanbul-lib-coverage@2.0.4': {} 2708 | 2709 | '@types/json-schema@7.0.15': {} 2710 | 2711 | '@types/minimist@1.2.2': {} 2712 | 2713 | '@types/node@12.20.55': {} 2714 | 2715 | '@types/node@18.19.31': 2716 | dependencies: 2717 | undici-types: 5.26.5 2718 | 2719 | '@types/normalize-package-data@2.4.1': {} 2720 | 2721 | '@types/semver@7.5.0': {} 2722 | 2723 | '@types/semver@7.5.8': {} 2724 | 2725 | '@typescript-eslint/eslint-plugin@7.8.0(@typescript-eslint/parser@7.8.0)(eslint@8.57.0)(typescript@5.4.5)': 2726 | dependencies: 2727 | '@eslint-community/regexpp': 4.10.0 2728 | '@typescript-eslint/parser': 7.8.0(eslint@8.57.0)(typescript@5.4.5) 2729 | '@typescript-eslint/scope-manager': 7.8.0 2730 | '@typescript-eslint/type-utils': 7.8.0(eslint@8.57.0)(typescript@5.4.5) 2731 | '@typescript-eslint/utils': 7.8.0(eslint@8.57.0)(typescript@5.4.5) 2732 | '@typescript-eslint/visitor-keys': 7.8.0 2733 | debug: 4.3.4 2734 | eslint: 8.57.0 2735 | graphemer: 1.4.0 2736 | ignore: 5.3.1 2737 | natural-compare: 1.4.0 2738 | semver: 7.6.0 2739 | ts-api-utils: 1.3.0(typescript@5.4.5) 2740 | typescript: 5.4.5 2741 | transitivePeerDependencies: 2742 | - supports-color 2743 | 2744 | '@typescript-eslint/parser@7.8.0(eslint@8.57.0)(typescript@5.4.5)': 2745 | dependencies: 2746 | '@typescript-eslint/scope-manager': 7.8.0 2747 | '@typescript-eslint/types': 7.8.0 2748 | '@typescript-eslint/typescript-estree': 7.8.0(typescript@5.4.5) 2749 | '@typescript-eslint/visitor-keys': 7.8.0 2750 | debug: 4.3.4 2751 | eslint: 8.57.0 2752 | typescript: 5.4.5 2753 | transitivePeerDependencies: 2754 | - supports-color 2755 | 2756 | '@typescript-eslint/scope-manager@7.8.0': 2757 | dependencies: 2758 | '@typescript-eslint/types': 7.8.0 2759 | '@typescript-eslint/visitor-keys': 7.8.0 2760 | 2761 | '@typescript-eslint/type-utils@7.8.0(eslint@8.57.0)(typescript@5.4.5)': 2762 | dependencies: 2763 | '@typescript-eslint/typescript-estree': 7.8.0(typescript@5.4.5) 2764 | '@typescript-eslint/utils': 7.8.0(eslint@8.57.0)(typescript@5.4.5) 2765 | debug: 4.3.4 2766 | eslint: 8.57.0 2767 | ts-api-utils: 1.3.0(typescript@5.4.5) 2768 | typescript: 5.4.5 2769 | transitivePeerDependencies: 2770 | - supports-color 2771 | 2772 | '@typescript-eslint/types@7.8.0': {} 2773 | 2774 | '@typescript-eslint/typescript-estree@7.8.0(typescript@5.4.5)': 2775 | dependencies: 2776 | '@typescript-eslint/types': 7.8.0 2777 | '@typescript-eslint/visitor-keys': 7.8.0 2778 | debug: 4.3.4 2779 | globby: 11.1.0 2780 | is-glob: 4.0.3 2781 | minimatch: 9.0.4 2782 | semver: 7.6.0 2783 | ts-api-utils: 1.3.0(typescript@5.4.5) 2784 | typescript: 5.4.5 2785 | transitivePeerDependencies: 2786 | - supports-color 2787 | 2788 | '@typescript-eslint/utils@7.8.0(eslint@8.57.0)(typescript@5.4.5)': 2789 | dependencies: 2790 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) 2791 | '@types/json-schema': 7.0.15 2792 | '@types/semver': 7.5.8 2793 | '@typescript-eslint/scope-manager': 7.8.0 2794 | '@typescript-eslint/types': 7.8.0 2795 | '@typescript-eslint/typescript-estree': 7.8.0(typescript@5.4.5) 2796 | eslint: 8.57.0 2797 | semver: 7.6.0 2798 | transitivePeerDependencies: 2799 | - supports-color 2800 | - typescript 2801 | 2802 | '@typescript-eslint/visitor-keys@7.8.0': 2803 | dependencies: 2804 | '@typescript-eslint/types': 7.8.0 2805 | eslint-visitor-keys: 3.4.3 2806 | 2807 | '@ungap/structured-clone@1.2.0': {} 2808 | 2809 | '@vitest/coverage-c8@0.33.0(vitest@1.5.3)': 2810 | dependencies: 2811 | '@ampproject/remapping': 2.2.1 2812 | c8: 7.14.0 2813 | magic-string: 0.30.1 2814 | picocolors: 1.0.0 2815 | std-env: 3.3.3 2816 | vitest: 1.5.3(@types/node@18.19.31) 2817 | 2818 | '@vitest/expect@1.5.3': 2819 | dependencies: 2820 | '@vitest/spy': 1.5.3 2821 | '@vitest/utils': 1.5.3 2822 | chai: 4.3.10 2823 | 2824 | '@vitest/runner@1.5.3': 2825 | dependencies: 2826 | '@vitest/utils': 1.5.3 2827 | p-limit: 5.0.0 2828 | pathe: 1.1.1 2829 | 2830 | '@vitest/snapshot@1.5.3': 2831 | dependencies: 2832 | magic-string: 0.30.5 2833 | pathe: 1.1.1 2834 | pretty-format: 29.7.0 2835 | 2836 | '@vitest/spy@1.5.3': 2837 | dependencies: 2838 | tinyspy: 2.2.0 2839 | 2840 | '@vitest/utils@1.5.3': 2841 | dependencies: 2842 | diff-sequences: 29.6.3 2843 | estree-walker: 3.0.3 2844 | loupe: 2.3.7 2845 | pretty-format: 29.7.0 2846 | 2847 | acorn-jsx@5.3.2(acorn@8.10.0): 2848 | dependencies: 2849 | acorn: 8.10.0 2850 | 2851 | acorn-walk@8.3.2: {} 2852 | 2853 | acorn@8.10.0: {} 2854 | 2855 | ajv@6.12.6: 2856 | dependencies: 2857 | fast-deep-equal: 3.1.3 2858 | fast-json-stable-stringify: 2.1.0 2859 | json-schema-traverse: 0.4.1 2860 | uri-js: 4.4.1 2861 | 2862 | ansi-colors@4.1.3: {} 2863 | 2864 | ansi-escapes@6.2.0: 2865 | dependencies: 2866 | type-fest: 3.13.1 2867 | 2868 | ansi-regex@5.0.1: {} 2869 | 2870 | ansi-regex@6.0.1: {} 2871 | 2872 | ansi-styles@3.2.1: 2873 | dependencies: 2874 | color-convert: 1.9.3 2875 | 2876 | ansi-styles@4.3.0: 2877 | dependencies: 2878 | color-convert: 2.0.1 2879 | 2880 | ansi-styles@5.2.0: {} 2881 | 2882 | ansi-styles@6.2.1: {} 2883 | 2884 | any-promise@1.3.0: {} 2885 | 2886 | anymatch@3.1.3: 2887 | dependencies: 2888 | normalize-path: 3.0.0 2889 | picomatch: 2.3.1 2890 | 2891 | argparse@1.0.10: 2892 | dependencies: 2893 | sprintf-js: 1.0.3 2894 | 2895 | argparse@2.0.1: {} 2896 | 2897 | array-buffer-byte-length@1.0.0: 2898 | dependencies: 2899 | call-bind: 1.0.2 2900 | is-array-buffer: 3.0.2 2901 | 2902 | array-union@2.1.0: {} 2903 | 2904 | array.prototype.flat@1.3.1: 2905 | dependencies: 2906 | call-bind: 1.0.2 2907 | define-properties: 1.2.0 2908 | es-abstract: 1.21.2 2909 | es-shim-unscopables: 1.0.0 2910 | 2911 | arrify@1.0.1: {} 2912 | 2913 | assertion-error@1.1.0: {} 2914 | 2915 | asynckit@0.4.0: {} 2916 | 2917 | available-typed-arrays@1.0.5: {} 2918 | 2919 | axios-mock-adapter@1.22.0(axios@1.3.4): 2920 | dependencies: 2921 | axios: 1.3.4 2922 | fast-deep-equal: 3.1.3 2923 | is-buffer: 2.0.5 2924 | 2925 | axios@1.3.4: 2926 | dependencies: 2927 | follow-redirects: 1.15.2 2928 | form-data: 4.0.0 2929 | proxy-from-env: 1.1.0 2930 | transitivePeerDependencies: 2931 | - debug 2932 | 2933 | balanced-match@1.0.2: {} 2934 | 2935 | better-path-resolve@1.0.0: 2936 | dependencies: 2937 | is-windows: 1.0.2 2938 | 2939 | binary-extensions@2.2.0: {} 2940 | 2941 | brace-expansion@1.1.11: 2942 | dependencies: 2943 | balanced-match: 1.0.2 2944 | concat-map: 0.0.1 2945 | 2946 | brace-expansion@2.0.1: 2947 | dependencies: 2948 | balanced-match: 1.0.2 2949 | 2950 | braces@3.0.2: 2951 | dependencies: 2952 | fill-range: 7.0.1 2953 | 2954 | breakword@1.0.5: 2955 | dependencies: 2956 | wcwidth: 1.0.1 2957 | 2958 | bundle-require@4.0.1(esbuild@0.19.7): 2959 | dependencies: 2960 | esbuild: 0.19.7 2961 | load-tsconfig: 0.2.3 2962 | 2963 | c8@7.14.0: 2964 | dependencies: 2965 | '@bcoe/v8-coverage': 0.2.3 2966 | '@istanbuljs/schema': 0.1.3 2967 | find-up: 5.0.0 2968 | foreground-child: 2.0.0 2969 | istanbul-lib-coverage: 3.2.0 2970 | istanbul-lib-report: 3.0.0 2971 | istanbul-reports: 3.1.5 2972 | rimraf: 3.0.2 2973 | test-exclude: 6.0.0 2974 | v8-to-istanbul: 9.1.0 2975 | yargs: 16.2.0 2976 | yargs-parser: 20.2.9 2977 | 2978 | cac@6.7.14: {} 2979 | 2980 | call-bind@1.0.2: 2981 | dependencies: 2982 | function-bind: 1.1.1 2983 | get-intrinsic: 1.2.0 2984 | 2985 | callsites@3.1.0: {} 2986 | 2987 | camelcase-keys@6.2.2: 2988 | dependencies: 2989 | camelcase: 5.3.1 2990 | map-obj: 4.3.0 2991 | quick-lru: 4.0.1 2992 | 2993 | camelcase@5.3.1: {} 2994 | 2995 | chai@4.3.10: 2996 | dependencies: 2997 | assertion-error: 1.1.0 2998 | check-error: 1.0.3 2999 | deep-eql: 4.1.3 3000 | get-func-name: 2.0.2 3001 | loupe: 2.3.7 3002 | pathval: 1.1.1 3003 | type-detect: 4.0.8 3004 | 3005 | chalk@2.4.2: 3006 | dependencies: 3007 | ansi-styles: 3.2.1 3008 | escape-string-regexp: 1.0.5 3009 | supports-color: 5.5.0 3010 | 3011 | chalk@4.1.2: 3012 | dependencies: 3013 | ansi-styles: 4.3.0 3014 | supports-color: 7.2.0 3015 | 3016 | chalk@5.3.0: {} 3017 | 3018 | chardet@0.7.0: {} 3019 | 3020 | check-error@1.0.3: 3021 | dependencies: 3022 | get-func-name: 2.0.2 3023 | 3024 | chokidar@3.5.3: 3025 | dependencies: 3026 | anymatch: 3.1.3 3027 | braces: 3.0.2 3028 | glob-parent: 5.1.2 3029 | is-binary-path: 2.1.0 3030 | is-glob: 4.0.3 3031 | normalize-path: 3.0.0 3032 | readdirp: 3.6.0 3033 | optionalDependencies: 3034 | fsevents: 2.3.3 3035 | 3036 | ci-info@3.8.0: {} 3037 | 3038 | cli-cursor@4.0.0: 3039 | dependencies: 3040 | restore-cursor: 4.0.0 3041 | 3042 | cli-truncate@4.0.0: 3043 | dependencies: 3044 | slice-ansi: 5.0.0 3045 | string-width: 7.0.0 3046 | 3047 | cliui@6.0.0: 3048 | dependencies: 3049 | string-width: 4.2.3 3050 | strip-ansi: 6.0.1 3051 | wrap-ansi: 6.2.0 3052 | 3053 | cliui@7.0.4: 3054 | dependencies: 3055 | string-width: 4.2.3 3056 | strip-ansi: 6.0.1 3057 | wrap-ansi: 7.0.0 3058 | 3059 | cliui@8.0.1: 3060 | dependencies: 3061 | string-width: 4.2.3 3062 | strip-ansi: 6.0.1 3063 | wrap-ansi: 7.0.0 3064 | 3065 | clone@1.0.4: {} 3066 | 3067 | color-convert@1.9.3: 3068 | dependencies: 3069 | color-name: 1.1.3 3070 | 3071 | color-convert@2.0.1: 3072 | dependencies: 3073 | color-name: 1.1.4 3074 | 3075 | color-name@1.1.3: {} 3076 | 3077 | color-name@1.1.4: {} 3078 | 3079 | colorette@2.0.20: {} 3080 | 3081 | combined-stream@1.0.8: 3082 | dependencies: 3083 | delayed-stream: 1.0.0 3084 | 3085 | commander@11.1.0: {} 3086 | 3087 | commander@4.1.1: {} 3088 | 3089 | concat-map@0.0.1: {} 3090 | 3091 | convert-source-map@1.9.0: {} 3092 | 3093 | cross-spawn@5.1.0: 3094 | dependencies: 3095 | lru-cache: 4.1.5 3096 | shebang-command: 1.2.0 3097 | which: 1.3.1 3098 | 3099 | cross-spawn@7.0.3: 3100 | dependencies: 3101 | path-key: 3.1.1 3102 | shebang-command: 2.0.0 3103 | which: 2.0.2 3104 | 3105 | csv-generate@3.4.3: {} 3106 | 3107 | csv-parse@4.16.3: {} 3108 | 3109 | csv-stringify@5.6.5: {} 3110 | 3111 | csv@5.5.3: 3112 | dependencies: 3113 | csv-generate: 3.4.3 3114 | csv-parse: 4.16.3 3115 | csv-stringify: 5.6.5 3116 | stream-transform: 2.1.3 3117 | 3118 | dataloader@1.4.0: {} 3119 | 3120 | debug@4.3.4: 3121 | dependencies: 3122 | ms: 2.1.2 3123 | 3124 | decamelize-keys@1.1.1: 3125 | dependencies: 3126 | decamelize: 1.2.0 3127 | map-obj: 1.0.1 3128 | 3129 | decamelize@1.2.0: {} 3130 | 3131 | deep-eql@4.1.3: 3132 | dependencies: 3133 | type-detect: 4.0.8 3134 | 3135 | deep-is@0.1.4: {} 3136 | 3137 | defaults@1.0.4: 3138 | dependencies: 3139 | clone: 1.0.4 3140 | 3141 | define-properties@1.2.0: 3142 | dependencies: 3143 | has-property-descriptors: 1.0.0 3144 | object-keys: 1.1.1 3145 | 3146 | delayed-stream@1.0.0: {} 3147 | 3148 | detect-indent@6.1.0: {} 3149 | 3150 | diff-sequences@29.6.3: {} 3151 | 3152 | dir-glob@3.0.1: 3153 | dependencies: 3154 | path-type: 4.0.0 3155 | 3156 | doctrine@3.0.0: 3157 | dependencies: 3158 | esutils: 2.0.3 3159 | 3160 | dotenv@8.6.0: {} 3161 | 3162 | emoji-regex@10.3.0: {} 3163 | 3164 | emoji-regex@8.0.0: {} 3165 | 3166 | enquirer@2.3.6: 3167 | dependencies: 3168 | ansi-colors: 4.1.3 3169 | 3170 | error-ex@1.3.2: 3171 | dependencies: 3172 | is-arrayish: 0.2.1 3173 | 3174 | es-abstract@1.21.2: 3175 | dependencies: 3176 | array-buffer-byte-length: 1.0.0 3177 | available-typed-arrays: 1.0.5 3178 | call-bind: 1.0.2 3179 | es-set-tostringtag: 2.0.1 3180 | es-to-primitive: 1.2.1 3181 | function.prototype.name: 1.1.5 3182 | get-intrinsic: 1.2.0 3183 | get-symbol-description: 1.0.0 3184 | globalthis: 1.0.3 3185 | gopd: 1.0.1 3186 | has: 1.0.3 3187 | has-property-descriptors: 1.0.0 3188 | has-proto: 1.0.1 3189 | has-symbols: 1.0.3 3190 | internal-slot: 1.0.5 3191 | is-array-buffer: 3.0.2 3192 | is-callable: 1.2.7 3193 | is-negative-zero: 2.0.2 3194 | is-regex: 1.1.4 3195 | is-shared-array-buffer: 1.0.2 3196 | is-string: 1.0.7 3197 | is-typed-array: 1.1.10 3198 | is-weakref: 1.0.2 3199 | object-inspect: 1.12.3 3200 | object-keys: 1.1.1 3201 | object.assign: 4.1.4 3202 | regexp.prototype.flags: 1.4.3 3203 | safe-regex-test: 1.0.0 3204 | string.prototype.trim: 1.2.7 3205 | string.prototype.trimend: 1.0.6 3206 | string.prototype.trimstart: 1.0.6 3207 | typed-array-length: 1.0.4 3208 | unbox-primitive: 1.0.2 3209 | which-typed-array: 1.1.9 3210 | 3211 | es-set-tostringtag@2.0.1: 3212 | dependencies: 3213 | get-intrinsic: 1.2.0 3214 | has: 1.0.3 3215 | has-tostringtag: 1.0.0 3216 | 3217 | es-shim-unscopables@1.0.0: 3218 | dependencies: 3219 | has: 1.0.3 3220 | 3221 | es-to-primitive@1.2.1: 3222 | dependencies: 3223 | is-callable: 1.2.7 3224 | is-date-object: 1.0.5 3225 | is-symbol: 1.0.4 3226 | 3227 | esbuild@0.19.7: 3228 | optionalDependencies: 3229 | '@esbuild/android-arm': 0.19.7 3230 | '@esbuild/android-arm64': 0.19.7 3231 | '@esbuild/android-x64': 0.19.7 3232 | '@esbuild/darwin-arm64': 0.19.7 3233 | '@esbuild/darwin-x64': 0.19.7 3234 | '@esbuild/freebsd-arm64': 0.19.7 3235 | '@esbuild/freebsd-x64': 0.19.7 3236 | '@esbuild/linux-arm': 0.19.7 3237 | '@esbuild/linux-arm64': 0.19.7 3238 | '@esbuild/linux-ia32': 0.19.7 3239 | '@esbuild/linux-loong64': 0.19.7 3240 | '@esbuild/linux-mips64el': 0.19.7 3241 | '@esbuild/linux-ppc64': 0.19.7 3242 | '@esbuild/linux-riscv64': 0.19.7 3243 | '@esbuild/linux-s390x': 0.19.7 3244 | '@esbuild/linux-x64': 0.19.7 3245 | '@esbuild/netbsd-x64': 0.19.7 3246 | '@esbuild/openbsd-x64': 0.19.7 3247 | '@esbuild/sunos-x64': 0.19.7 3248 | '@esbuild/win32-arm64': 0.19.7 3249 | '@esbuild/win32-ia32': 0.19.7 3250 | '@esbuild/win32-x64': 0.19.7 3251 | 3252 | escalade@3.1.1: {} 3253 | 3254 | escape-string-regexp@1.0.5: {} 3255 | 3256 | escape-string-regexp@4.0.0: {} 3257 | 3258 | eslint-config-prettier@9.1.0(eslint@8.57.0): 3259 | dependencies: 3260 | eslint: 8.57.0 3261 | 3262 | eslint-scope@7.2.2: 3263 | dependencies: 3264 | esrecurse: 4.3.0 3265 | estraverse: 5.3.0 3266 | 3267 | eslint-visitor-keys@3.4.3: {} 3268 | 3269 | eslint@8.57.0: 3270 | dependencies: 3271 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) 3272 | '@eslint-community/regexpp': 4.6.2 3273 | '@eslint/eslintrc': 2.1.4 3274 | '@eslint/js': 8.57.0 3275 | '@humanwhocodes/config-array': 0.11.14 3276 | '@humanwhocodes/module-importer': 1.0.1 3277 | '@nodelib/fs.walk': 1.2.8 3278 | '@ungap/structured-clone': 1.2.0 3279 | ajv: 6.12.6 3280 | chalk: 4.1.2 3281 | cross-spawn: 7.0.3 3282 | debug: 4.3.4 3283 | doctrine: 3.0.0 3284 | escape-string-regexp: 4.0.0 3285 | eslint-scope: 7.2.2 3286 | eslint-visitor-keys: 3.4.3 3287 | espree: 9.6.1 3288 | esquery: 1.5.0 3289 | esutils: 2.0.3 3290 | fast-deep-equal: 3.1.3 3291 | file-entry-cache: 6.0.1 3292 | find-up: 5.0.0 3293 | glob-parent: 6.0.2 3294 | globals: 13.20.0 3295 | graphemer: 1.4.0 3296 | ignore: 5.2.4 3297 | imurmurhash: 0.1.4 3298 | is-glob: 4.0.3 3299 | is-path-inside: 3.0.3 3300 | js-yaml: 4.1.0 3301 | json-stable-stringify-without-jsonify: 1.0.1 3302 | levn: 0.4.1 3303 | lodash.merge: 4.6.2 3304 | minimatch: 3.1.2 3305 | natural-compare: 1.4.0 3306 | optionator: 0.9.3 3307 | strip-ansi: 6.0.1 3308 | text-table: 0.2.0 3309 | transitivePeerDependencies: 3310 | - supports-color 3311 | 3312 | espree@9.6.1: 3313 | dependencies: 3314 | acorn: 8.10.0 3315 | acorn-jsx: 5.3.2(acorn@8.10.0) 3316 | eslint-visitor-keys: 3.4.3 3317 | 3318 | esprima@4.0.1: {} 3319 | 3320 | esquery@1.5.0: 3321 | dependencies: 3322 | estraverse: 5.3.0 3323 | 3324 | esrecurse@4.3.0: 3325 | dependencies: 3326 | estraverse: 5.3.0 3327 | 3328 | estraverse@5.3.0: {} 3329 | 3330 | estree-walker@3.0.3: 3331 | dependencies: 3332 | '@types/estree': 1.0.5 3333 | 3334 | esutils@2.0.3: {} 3335 | 3336 | eventemitter3@5.0.1: {} 3337 | 3338 | execa@5.1.1: 3339 | dependencies: 3340 | cross-spawn: 7.0.3 3341 | get-stream: 6.0.1 3342 | human-signals: 2.1.0 3343 | is-stream: 2.0.1 3344 | merge-stream: 2.0.0 3345 | npm-run-path: 4.0.1 3346 | onetime: 5.1.2 3347 | signal-exit: 3.0.7 3348 | strip-final-newline: 2.0.0 3349 | 3350 | execa@8.0.1: 3351 | dependencies: 3352 | cross-spawn: 7.0.3 3353 | get-stream: 8.0.1 3354 | human-signals: 5.0.0 3355 | is-stream: 3.0.0 3356 | merge-stream: 2.0.0 3357 | npm-run-path: 5.1.0 3358 | onetime: 6.0.0 3359 | signal-exit: 4.1.0 3360 | strip-final-newline: 3.0.0 3361 | 3362 | extendable-error@0.1.7: {} 3363 | 3364 | external-editor@3.1.0: 3365 | dependencies: 3366 | chardet: 0.7.0 3367 | iconv-lite: 0.4.24 3368 | tmp: 0.0.33 3369 | 3370 | fast-deep-equal@3.1.3: {} 3371 | 3372 | fast-glob@3.2.12: 3373 | dependencies: 3374 | '@nodelib/fs.stat': 2.0.5 3375 | '@nodelib/fs.walk': 1.2.8 3376 | glob-parent: 5.1.2 3377 | merge2: 1.4.1 3378 | micromatch: 4.0.5 3379 | 3380 | fast-json-stable-stringify@2.1.0: {} 3381 | 3382 | fast-levenshtein@2.0.6: {} 3383 | 3384 | fastq@1.15.0: 3385 | dependencies: 3386 | reusify: 1.0.4 3387 | 3388 | file-entry-cache@6.0.1: 3389 | dependencies: 3390 | flat-cache: 3.0.4 3391 | 3392 | fill-range@7.0.1: 3393 | dependencies: 3394 | to-regex-range: 5.0.1 3395 | 3396 | find-up@4.1.0: 3397 | dependencies: 3398 | locate-path: 5.0.0 3399 | path-exists: 4.0.0 3400 | 3401 | find-up@5.0.0: 3402 | dependencies: 3403 | locate-path: 6.0.0 3404 | path-exists: 4.0.0 3405 | 3406 | find-yarn-workspace-root2@1.2.16: 3407 | dependencies: 3408 | micromatch: 4.0.5 3409 | pkg-dir: 4.2.0 3410 | 3411 | flat-cache@3.0.4: 3412 | dependencies: 3413 | flatted: 3.2.7 3414 | rimraf: 3.0.2 3415 | 3416 | flatted@3.2.7: {} 3417 | 3418 | follow-redirects@1.15.2: {} 3419 | 3420 | for-each@0.3.3: 3421 | dependencies: 3422 | is-callable: 1.2.7 3423 | 3424 | foreground-child@2.0.0: 3425 | dependencies: 3426 | cross-spawn: 7.0.3 3427 | signal-exit: 3.0.7 3428 | 3429 | form-data@4.0.0: 3430 | dependencies: 3431 | asynckit: 0.4.0 3432 | combined-stream: 1.0.8 3433 | mime-types: 2.1.35 3434 | 3435 | fs-extra@7.0.1: 3436 | dependencies: 3437 | graceful-fs: 4.2.10 3438 | jsonfile: 4.0.0 3439 | universalify: 0.1.2 3440 | 3441 | fs-extra@8.1.0: 3442 | dependencies: 3443 | graceful-fs: 4.2.10 3444 | jsonfile: 4.0.0 3445 | universalify: 0.1.2 3446 | 3447 | fs.realpath@1.0.0: {} 3448 | 3449 | fsevents@2.3.3: 3450 | optional: true 3451 | 3452 | function-bind@1.1.1: {} 3453 | 3454 | function.prototype.name@1.1.5: 3455 | dependencies: 3456 | call-bind: 1.0.2 3457 | define-properties: 1.2.0 3458 | es-abstract: 1.21.2 3459 | functions-have-names: 1.2.3 3460 | 3461 | functions-have-names@1.2.3: {} 3462 | 3463 | get-caller-file@2.0.5: {} 3464 | 3465 | get-east-asian-width@1.2.0: {} 3466 | 3467 | get-func-name@2.0.2: {} 3468 | 3469 | get-intrinsic@1.2.0: 3470 | dependencies: 3471 | function-bind: 1.1.1 3472 | has: 1.0.3 3473 | has-symbols: 1.0.3 3474 | 3475 | get-stream@6.0.1: {} 3476 | 3477 | get-stream@8.0.1: {} 3478 | 3479 | get-symbol-description@1.0.0: 3480 | dependencies: 3481 | call-bind: 1.0.2 3482 | get-intrinsic: 1.2.0 3483 | 3484 | glob-parent@5.1.2: 3485 | dependencies: 3486 | is-glob: 4.0.3 3487 | 3488 | glob-parent@6.0.2: 3489 | dependencies: 3490 | is-glob: 4.0.3 3491 | 3492 | glob@7.1.6: 3493 | dependencies: 3494 | fs.realpath: 1.0.0 3495 | inflight: 1.0.6 3496 | inherits: 2.0.4 3497 | minimatch: 3.1.2 3498 | once: 1.4.0 3499 | path-is-absolute: 1.0.1 3500 | 3501 | glob@7.2.3: 3502 | dependencies: 3503 | fs.realpath: 1.0.0 3504 | inflight: 1.0.6 3505 | inherits: 2.0.4 3506 | minimatch: 3.1.2 3507 | once: 1.4.0 3508 | path-is-absolute: 1.0.1 3509 | 3510 | globals@13.20.0: 3511 | dependencies: 3512 | type-fest: 0.20.2 3513 | 3514 | globalthis@1.0.3: 3515 | dependencies: 3516 | define-properties: 1.2.0 3517 | 3518 | globby@11.1.0: 3519 | dependencies: 3520 | array-union: 2.1.0 3521 | dir-glob: 3.0.1 3522 | fast-glob: 3.2.12 3523 | ignore: 5.2.4 3524 | merge2: 1.4.1 3525 | slash: 3.0.0 3526 | 3527 | gopd@1.0.1: 3528 | dependencies: 3529 | get-intrinsic: 1.2.0 3530 | 3531 | graceful-fs@4.2.10: {} 3532 | 3533 | grapheme-splitter@1.0.4: {} 3534 | 3535 | graphemer@1.4.0: {} 3536 | 3537 | hard-rejection@2.1.0: {} 3538 | 3539 | has-bigints@1.0.2: {} 3540 | 3541 | has-flag@3.0.0: {} 3542 | 3543 | has-flag@4.0.0: {} 3544 | 3545 | has-property-descriptors@1.0.0: 3546 | dependencies: 3547 | get-intrinsic: 1.2.0 3548 | 3549 | has-proto@1.0.1: {} 3550 | 3551 | has-symbols@1.0.3: {} 3552 | 3553 | has-tostringtag@1.0.0: 3554 | dependencies: 3555 | has-symbols: 1.0.3 3556 | 3557 | has@1.0.3: 3558 | dependencies: 3559 | function-bind: 1.1.1 3560 | 3561 | hosted-git-info@2.8.9: {} 3562 | 3563 | html-escaper@2.0.2: {} 3564 | 3565 | human-id@1.0.2: {} 3566 | 3567 | human-signals@2.1.0: {} 3568 | 3569 | human-signals@5.0.0: {} 3570 | 3571 | husky@9.0.11: {} 3572 | 3573 | iconv-lite@0.4.24: 3574 | dependencies: 3575 | safer-buffer: 2.1.2 3576 | 3577 | ignore@5.2.4: {} 3578 | 3579 | ignore@5.3.1: {} 3580 | 3581 | import-fresh@3.3.0: 3582 | dependencies: 3583 | parent-module: 1.0.1 3584 | resolve-from: 4.0.0 3585 | 3586 | imurmurhash@0.1.4: {} 3587 | 3588 | indent-string@4.0.0: {} 3589 | 3590 | inflight@1.0.6: 3591 | dependencies: 3592 | once: 1.4.0 3593 | wrappy: 1.0.2 3594 | 3595 | inherits@2.0.4: {} 3596 | 3597 | internal-slot@1.0.5: 3598 | dependencies: 3599 | get-intrinsic: 1.2.0 3600 | has: 1.0.3 3601 | side-channel: 1.0.4 3602 | 3603 | is-array-buffer@3.0.2: 3604 | dependencies: 3605 | call-bind: 1.0.2 3606 | get-intrinsic: 1.2.0 3607 | is-typed-array: 1.1.10 3608 | 3609 | is-arrayish@0.2.1: {} 3610 | 3611 | is-bigint@1.0.4: 3612 | dependencies: 3613 | has-bigints: 1.0.2 3614 | 3615 | is-binary-path@2.1.0: 3616 | dependencies: 3617 | binary-extensions: 2.2.0 3618 | 3619 | is-boolean-object@1.1.2: 3620 | dependencies: 3621 | call-bind: 1.0.2 3622 | has-tostringtag: 1.0.0 3623 | 3624 | is-buffer@2.0.5: {} 3625 | 3626 | is-callable@1.2.7: {} 3627 | 3628 | is-core-module@2.11.0: 3629 | dependencies: 3630 | has: 1.0.3 3631 | 3632 | is-date-object@1.0.5: 3633 | dependencies: 3634 | has-tostringtag: 1.0.0 3635 | 3636 | is-extglob@2.1.1: {} 3637 | 3638 | is-fullwidth-code-point@3.0.0: {} 3639 | 3640 | is-fullwidth-code-point@4.0.0: {} 3641 | 3642 | is-fullwidth-code-point@5.0.0: 3643 | dependencies: 3644 | get-east-asian-width: 1.2.0 3645 | 3646 | is-glob@4.0.3: 3647 | dependencies: 3648 | is-extglob: 2.1.1 3649 | 3650 | is-negative-zero@2.0.2: {} 3651 | 3652 | is-number-object@1.0.7: 3653 | dependencies: 3654 | has-tostringtag: 1.0.0 3655 | 3656 | is-number@7.0.0: {} 3657 | 3658 | is-path-inside@3.0.3: {} 3659 | 3660 | is-plain-obj@1.1.0: {} 3661 | 3662 | is-regex@1.1.4: 3663 | dependencies: 3664 | call-bind: 1.0.2 3665 | has-tostringtag: 1.0.0 3666 | 3667 | is-shared-array-buffer@1.0.2: 3668 | dependencies: 3669 | call-bind: 1.0.2 3670 | 3671 | is-stream@2.0.1: {} 3672 | 3673 | is-stream@3.0.0: {} 3674 | 3675 | is-string@1.0.7: 3676 | dependencies: 3677 | has-tostringtag: 1.0.0 3678 | 3679 | is-subdir@1.2.0: 3680 | dependencies: 3681 | better-path-resolve: 1.0.0 3682 | 3683 | is-symbol@1.0.4: 3684 | dependencies: 3685 | has-symbols: 1.0.3 3686 | 3687 | is-typed-array@1.1.10: 3688 | dependencies: 3689 | available-typed-arrays: 1.0.5 3690 | call-bind: 1.0.2 3691 | for-each: 0.3.3 3692 | gopd: 1.0.1 3693 | has-tostringtag: 1.0.0 3694 | 3695 | is-weakref@1.0.2: 3696 | dependencies: 3697 | call-bind: 1.0.2 3698 | 3699 | is-windows@1.0.2: {} 3700 | 3701 | isexe@2.0.0: {} 3702 | 3703 | istanbul-lib-coverage@3.2.0: {} 3704 | 3705 | istanbul-lib-report@3.0.0: 3706 | dependencies: 3707 | istanbul-lib-coverage: 3.2.0 3708 | make-dir: 3.1.0 3709 | supports-color: 7.2.0 3710 | 3711 | istanbul-reports@3.1.5: 3712 | dependencies: 3713 | html-escaper: 2.0.2 3714 | istanbul-lib-report: 3.0.0 3715 | 3716 | joycon@3.1.1: {} 3717 | 3718 | js-tokens@4.0.0: {} 3719 | 3720 | js-tokens@8.0.3: {} 3721 | 3722 | js-yaml@3.14.1: 3723 | dependencies: 3724 | argparse: 1.0.10 3725 | esprima: 4.0.1 3726 | 3727 | js-yaml@4.1.0: 3728 | dependencies: 3729 | argparse: 2.0.1 3730 | 3731 | json-parse-even-better-errors@2.3.1: {} 3732 | 3733 | json-schema-traverse@0.4.1: {} 3734 | 3735 | json-stable-stringify-without-jsonify@1.0.1: {} 3736 | 3737 | jsonc-parser@3.2.0: {} 3738 | 3739 | jsonfile@4.0.0: 3740 | optionalDependencies: 3741 | graceful-fs: 4.2.10 3742 | 3743 | kind-of@6.0.3: {} 3744 | 3745 | kleur@4.1.5: {} 3746 | 3747 | levn@0.4.1: 3748 | dependencies: 3749 | prelude-ls: 1.2.1 3750 | type-check: 0.4.0 3751 | 3752 | lilconfig@2.1.0: {} 3753 | 3754 | lilconfig@3.0.0: {} 3755 | 3756 | lines-and-columns@1.2.4: {} 3757 | 3758 | lint-staged@15.2.2: 3759 | dependencies: 3760 | chalk: 5.3.0 3761 | commander: 11.1.0 3762 | debug: 4.3.4 3763 | execa: 8.0.1 3764 | lilconfig: 3.0.0 3765 | listr2: 8.0.1 3766 | micromatch: 4.0.5 3767 | pidtree: 0.6.0 3768 | string-argv: 0.3.2 3769 | yaml: 2.3.4 3770 | transitivePeerDependencies: 3771 | - supports-color 3772 | 3773 | listr2@8.0.1: 3774 | dependencies: 3775 | cli-truncate: 4.0.0 3776 | colorette: 2.0.20 3777 | eventemitter3: 5.0.1 3778 | log-update: 6.0.0 3779 | rfdc: 1.3.0 3780 | wrap-ansi: 9.0.0 3781 | 3782 | load-tsconfig@0.2.3: {} 3783 | 3784 | load-yaml-file@0.2.0: 3785 | dependencies: 3786 | graceful-fs: 4.2.10 3787 | js-yaml: 3.14.1 3788 | pify: 4.0.1 3789 | strip-bom: 3.0.0 3790 | 3791 | local-pkg@0.5.0: 3792 | dependencies: 3793 | mlly: 1.4.2 3794 | pkg-types: 1.0.3 3795 | 3796 | locate-path@5.0.0: 3797 | dependencies: 3798 | p-locate: 4.1.0 3799 | 3800 | locate-path@6.0.0: 3801 | dependencies: 3802 | p-locate: 5.0.0 3803 | 3804 | lodash.merge@4.6.2: {} 3805 | 3806 | lodash.sortby@4.7.0: {} 3807 | 3808 | lodash.startcase@4.4.0: {} 3809 | 3810 | log-update@6.0.0: 3811 | dependencies: 3812 | ansi-escapes: 6.2.0 3813 | cli-cursor: 4.0.0 3814 | slice-ansi: 7.1.0 3815 | strip-ansi: 7.1.0 3816 | wrap-ansi: 9.0.0 3817 | 3818 | loupe@2.3.7: 3819 | dependencies: 3820 | get-func-name: 2.0.2 3821 | 3822 | lru-cache@4.1.5: 3823 | dependencies: 3824 | pseudomap: 1.0.2 3825 | yallist: 2.1.2 3826 | 3827 | lru-cache@6.0.0: 3828 | dependencies: 3829 | yallist: 4.0.0 3830 | 3831 | magic-string@0.30.1: 3832 | dependencies: 3833 | '@jridgewell/sourcemap-codec': 1.4.15 3834 | 3835 | magic-string@0.30.5: 3836 | dependencies: 3837 | '@jridgewell/sourcemap-codec': 1.4.15 3838 | 3839 | make-dir@3.1.0: 3840 | dependencies: 3841 | semver: 6.3.0 3842 | 3843 | map-obj@1.0.1: {} 3844 | 3845 | map-obj@4.3.0: {} 3846 | 3847 | meow@6.1.1: 3848 | dependencies: 3849 | '@types/minimist': 1.2.2 3850 | camelcase-keys: 6.2.2 3851 | decamelize-keys: 1.1.1 3852 | hard-rejection: 2.1.0 3853 | minimist-options: 4.1.0 3854 | normalize-package-data: 2.5.0 3855 | read-pkg-up: 7.0.1 3856 | redent: 3.0.0 3857 | trim-newlines: 3.0.1 3858 | type-fest: 0.13.1 3859 | yargs-parser: 18.1.3 3860 | 3861 | merge-stream@2.0.0: {} 3862 | 3863 | merge2@1.4.1: {} 3864 | 3865 | micromatch@4.0.5: 3866 | dependencies: 3867 | braces: 3.0.2 3868 | picomatch: 2.3.1 3869 | 3870 | mime-db@1.52.0: {} 3871 | 3872 | mime-types@2.1.35: 3873 | dependencies: 3874 | mime-db: 1.52.0 3875 | 3876 | mimic-fn@2.1.0: {} 3877 | 3878 | mimic-fn@4.0.0: {} 3879 | 3880 | min-indent@1.0.1: {} 3881 | 3882 | minimatch@3.1.2: 3883 | dependencies: 3884 | brace-expansion: 1.1.11 3885 | 3886 | minimatch@9.0.4: 3887 | dependencies: 3888 | brace-expansion: 2.0.1 3889 | 3890 | minimist-options@4.1.0: 3891 | dependencies: 3892 | arrify: 1.0.1 3893 | is-plain-obj: 1.1.0 3894 | kind-of: 6.0.3 3895 | 3896 | mixme@0.5.5: {} 3897 | 3898 | mlly@1.4.2: 3899 | dependencies: 3900 | acorn: 8.10.0 3901 | pathe: 1.1.1 3902 | pkg-types: 1.0.3 3903 | ufo: 1.3.2 3904 | 3905 | ms@2.1.2: {} 3906 | 3907 | mz@2.7.0: 3908 | dependencies: 3909 | any-promise: 1.3.0 3910 | object-assign: 4.1.1 3911 | thenify-all: 1.6.0 3912 | 3913 | nanoid@3.3.7: {} 3914 | 3915 | natural-compare@1.4.0: {} 3916 | 3917 | node-fetch@2.6.9: 3918 | dependencies: 3919 | whatwg-url: 5.0.0 3920 | 3921 | normalize-package-data@2.5.0: 3922 | dependencies: 3923 | hosted-git-info: 2.8.9 3924 | resolve: 1.22.1 3925 | semver: 5.7.1 3926 | validate-npm-package-license: 3.0.4 3927 | 3928 | normalize-path@3.0.0: {} 3929 | 3930 | npm-run-path@4.0.1: 3931 | dependencies: 3932 | path-key: 3.1.1 3933 | 3934 | npm-run-path@5.1.0: 3935 | dependencies: 3936 | path-key: 4.0.0 3937 | 3938 | object-assign@4.1.1: {} 3939 | 3940 | object-inspect@1.12.3: {} 3941 | 3942 | object-keys@1.1.1: {} 3943 | 3944 | object.assign@4.1.4: 3945 | dependencies: 3946 | call-bind: 1.0.2 3947 | define-properties: 1.2.0 3948 | has-symbols: 1.0.3 3949 | object-keys: 1.1.1 3950 | 3951 | once@1.4.0: 3952 | dependencies: 3953 | wrappy: 1.0.2 3954 | 3955 | onetime@5.1.2: 3956 | dependencies: 3957 | mimic-fn: 2.1.0 3958 | 3959 | onetime@6.0.0: 3960 | dependencies: 3961 | mimic-fn: 4.0.0 3962 | 3963 | optionator@0.9.3: 3964 | dependencies: 3965 | '@aashutoshrathi/word-wrap': 1.2.6 3966 | deep-is: 0.1.4 3967 | fast-levenshtein: 2.0.6 3968 | levn: 0.4.1 3969 | prelude-ls: 1.2.1 3970 | type-check: 0.4.0 3971 | 3972 | os-tmpdir@1.0.2: {} 3973 | 3974 | outdent@0.5.0: {} 3975 | 3976 | p-filter@2.1.0: 3977 | dependencies: 3978 | p-map: 2.1.0 3979 | 3980 | p-limit@2.3.0: 3981 | dependencies: 3982 | p-try: 2.2.0 3983 | 3984 | p-limit@3.1.0: 3985 | dependencies: 3986 | yocto-queue: 0.1.0 3987 | 3988 | p-limit@5.0.0: 3989 | dependencies: 3990 | yocto-queue: 1.0.0 3991 | 3992 | p-locate@4.1.0: 3993 | dependencies: 3994 | p-limit: 2.3.0 3995 | 3996 | p-locate@5.0.0: 3997 | dependencies: 3998 | p-limit: 3.1.0 3999 | 4000 | p-map@2.1.0: {} 4001 | 4002 | p-try@2.2.0: {} 4003 | 4004 | parent-module@1.0.1: 4005 | dependencies: 4006 | callsites: 3.1.0 4007 | 4008 | parse-json@5.2.0: 4009 | dependencies: 4010 | '@babel/code-frame': 7.18.6 4011 | error-ex: 1.3.2 4012 | json-parse-even-better-errors: 2.3.1 4013 | lines-and-columns: 1.2.4 4014 | 4015 | path-exists@4.0.0: {} 4016 | 4017 | path-is-absolute@1.0.1: {} 4018 | 4019 | path-key@3.1.1: {} 4020 | 4021 | path-key@4.0.0: {} 4022 | 4023 | path-parse@1.0.7: {} 4024 | 4025 | path-type@4.0.0: {} 4026 | 4027 | pathe@1.1.1: {} 4028 | 4029 | pathval@1.1.1: {} 4030 | 4031 | picocolors@1.0.0: {} 4032 | 4033 | picomatch@2.3.1: {} 4034 | 4035 | pidtree@0.6.0: {} 4036 | 4037 | pify@4.0.1: {} 4038 | 4039 | pirates@4.0.5: {} 4040 | 4041 | pkg-dir@4.2.0: 4042 | dependencies: 4043 | find-up: 4.1.0 4044 | 4045 | pkg-types@1.0.3: 4046 | dependencies: 4047 | jsonc-parser: 3.2.0 4048 | mlly: 1.4.2 4049 | pathe: 1.1.1 4050 | 4051 | postcss-load-config@4.0.1: 4052 | dependencies: 4053 | lilconfig: 2.1.0 4054 | yaml: 2.3.4 4055 | 4056 | postcss@8.4.32: 4057 | dependencies: 4058 | nanoid: 3.3.7 4059 | picocolors: 1.0.0 4060 | source-map-js: 1.0.2 4061 | 4062 | preferred-pm@3.0.3: 4063 | dependencies: 4064 | find-up: 5.0.0 4065 | find-yarn-workspace-root2: 1.2.16 4066 | path-exists: 4.0.0 4067 | which-pm: 2.0.0 4068 | 4069 | prelude-ls@1.2.1: {} 4070 | 4071 | prettier@2.8.4: {} 4072 | 4073 | prettier@3.2.5: {} 4074 | 4075 | pretty-format@29.7.0: 4076 | dependencies: 4077 | '@jest/schemas': 29.6.3 4078 | ansi-styles: 5.2.0 4079 | react-is: 18.2.0 4080 | 4081 | proxy-from-env@1.1.0: {} 4082 | 4083 | pseudomap@1.0.2: {} 4084 | 4085 | punycode@2.3.0: {} 4086 | 4087 | queue-microtask@1.2.3: {} 4088 | 4089 | quick-lru@4.0.1: {} 4090 | 4091 | react-is@18.2.0: {} 4092 | 4093 | read-pkg-up@7.0.1: 4094 | dependencies: 4095 | find-up: 4.1.0 4096 | read-pkg: 5.2.0 4097 | type-fest: 0.8.1 4098 | 4099 | read-pkg@5.2.0: 4100 | dependencies: 4101 | '@types/normalize-package-data': 2.4.1 4102 | normalize-package-data: 2.5.0 4103 | parse-json: 5.2.0 4104 | type-fest: 0.6.0 4105 | 4106 | read-yaml-file@1.1.0: 4107 | dependencies: 4108 | graceful-fs: 4.2.10 4109 | js-yaml: 3.14.1 4110 | pify: 4.0.1 4111 | strip-bom: 3.0.0 4112 | 4113 | readdirp@3.6.0: 4114 | dependencies: 4115 | picomatch: 2.3.1 4116 | 4117 | redent@3.0.0: 4118 | dependencies: 4119 | indent-string: 4.0.0 4120 | strip-indent: 3.0.0 4121 | 4122 | regenerator-runtime@0.13.11: {} 4123 | 4124 | regexp.prototype.flags@1.4.3: 4125 | dependencies: 4126 | call-bind: 1.0.2 4127 | define-properties: 1.2.0 4128 | functions-have-names: 1.2.3 4129 | 4130 | require-directory@2.1.1: {} 4131 | 4132 | require-main-filename@2.0.0: {} 4133 | 4134 | resolve-from@4.0.0: {} 4135 | 4136 | resolve-from@5.0.0: {} 4137 | 4138 | resolve@1.22.1: 4139 | dependencies: 4140 | is-core-module: 2.11.0 4141 | path-parse: 1.0.7 4142 | supports-preserve-symlinks-flag: 1.0.0 4143 | 4144 | restore-cursor@4.0.0: 4145 | dependencies: 4146 | onetime: 5.1.2 4147 | signal-exit: 3.0.7 4148 | 4149 | reusify@1.0.4: {} 4150 | 4151 | rfdc@1.3.0: {} 4152 | 4153 | rimraf@3.0.2: 4154 | dependencies: 4155 | glob: 7.2.3 4156 | 4157 | rollup@4.5.1: 4158 | optionalDependencies: 4159 | '@rollup/rollup-android-arm-eabi': 4.5.1 4160 | '@rollup/rollup-android-arm64': 4.5.1 4161 | '@rollup/rollup-darwin-arm64': 4.5.1 4162 | '@rollup/rollup-darwin-x64': 4.5.1 4163 | '@rollup/rollup-linux-arm-gnueabihf': 4.5.1 4164 | '@rollup/rollup-linux-arm64-gnu': 4.5.1 4165 | '@rollup/rollup-linux-arm64-musl': 4.5.1 4166 | '@rollup/rollup-linux-x64-gnu': 4.5.1 4167 | '@rollup/rollup-linux-x64-musl': 4.5.1 4168 | '@rollup/rollup-win32-arm64-msvc': 4.5.1 4169 | '@rollup/rollup-win32-ia32-msvc': 4.5.1 4170 | '@rollup/rollup-win32-x64-msvc': 4.5.1 4171 | fsevents: 2.3.3 4172 | 4173 | run-parallel@1.2.0: 4174 | dependencies: 4175 | queue-microtask: 1.2.3 4176 | 4177 | safe-regex-test@1.0.0: 4178 | dependencies: 4179 | call-bind: 1.0.2 4180 | get-intrinsic: 1.2.0 4181 | is-regex: 1.1.4 4182 | 4183 | safer-buffer@2.1.2: {} 4184 | 4185 | semver@5.7.1: {} 4186 | 4187 | semver@6.3.0: {} 4188 | 4189 | semver@7.5.4: 4190 | dependencies: 4191 | lru-cache: 6.0.0 4192 | 4193 | semver@7.6.0: 4194 | dependencies: 4195 | lru-cache: 6.0.0 4196 | 4197 | set-blocking@2.0.0: {} 4198 | 4199 | shebang-command@1.2.0: 4200 | dependencies: 4201 | shebang-regex: 1.0.0 4202 | 4203 | shebang-command@2.0.0: 4204 | dependencies: 4205 | shebang-regex: 3.0.0 4206 | 4207 | shebang-regex@1.0.0: {} 4208 | 4209 | shebang-regex@3.0.0: {} 4210 | 4211 | side-channel@1.0.4: 4212 | dependencies: 4213 | call-bind: 1.0.2 4214 | get-intrinsic: 1.2.0 4215 | object-inspect: 1.12.3 4216 | 4217 | siginfo@2.0.0: {} 4218 | 4219 | signal-exit@3.0.7: {} 4220 | 4221 | signal-exit@4.1.0: {} 4222 | 4223 | slash@3.0.0: {} 4224 | 4225 | slice-ansi@5.0.0: 4226 | dependencies: 4227 | ansi-styles: 6.2.1 4228 | is-fullwidth-code-point: 4.0.0 4229 | 4230 | slice-ansi@7.1.0: 4231 | dependencies: 4232 | ansi-styles: 6.2.1 4233 | is-fullwidth-code-point: 5.0.0 4234 | 4235 | smartwrap@2.0.2: 4236 | dependencies: 4237 | array.prototype.flat: 1.3.1 4238 | breakword: 1.0.5 4239 | grapheme-splitter: 1.0.4 4240 | strip-ansi: 6.0.1 4241 | wcwidth: 1.0.1 4242 | yargs: 15.4.1 4243 | 4244 | source-map-js@1.0.2: {} 4245 | 4246 | source-map@0.8.0-beta.0: 4247 | dependencies: 4248 | whatwg-url: 7.1.0 4249 | 4250 | spawndamnit@2.0.0: 4251 | dependencies: 4252 | cross-spawn: 5.1.0 4253 | signal-exit: 3.0.7 4254 | 4255 | spdx-correct@3.2.0: 4256 | dependencies: 4257 | spdx-expression-parse: 3.0.1 4258 | spdx-license-ids: 3.0.13 4259 | 4260 | spdx-exceptions@2.3.0: {} 4261 | 4262 | spdx-expression-parse@3.0.1: 4263 | dependencies: 4264 | spdx-exceptions: 2.3.0 4265 | spdx-license-ids: 3.0.13 4266 | 4267 | spdx-license-ids@3.0.13: {} 4268 | 4269 | sprintf-js@1.0.3: {} 4270 | 4271 | stackback@0.0.2: {} 4272 | 4273 | std-env@3.3.3: {} 4274 | 4275 | std-env@3.6.0: {} 4276 | 4277 | stream-transform@2.1.3: 4278 | dependencies: 4279 | mixme: 0.5.5 4280 | 4281 | string-argv@0.3.2: {} 4282 | 4283 | string-width@4.2.3: 4284 | dependencies: 4285 | emoji-regex: 8.0.0 4286 | is-fullwidth-code-point: 3.0.0 4287 | strip-ansi: 6.0.1 4288 | 4289 | string-width@7.0.0: 4290 | dependencies: 4291 | emoji-regex: 10.3.0 4292 | get-east-asian-width: 1.2.0 4293 | strip-ansi: 7.1.0 4294 | 4295 | string.prototype.trim@1.2.7: 4296 | dependencies: 4297 | call-bind: 1.0.2 4298 | define-properties: 1.2.0 4299 | es-abstract: 1.21.2 4300 | 4301 | string.prototype.trimend@1.0.6: 4302 | dependencies: 4303 | call-bind: 1.0.2 4304 | define-properties: 1.2.0 4305 | es-abstract: 1.21.2 4306 | 4307 | string.prototype.trimstart@1.0.6: 4308 | dependencies: 4309 | call-bind: 1.0.2 4310 | define-properties: 1.2.0 4311 | es-abstract: 1.21.2 4312 | 4313 | strip-ansi@6.0.1: 4314 | dependencies: 4315 | ansi-regex: 5.0.1 4316 | 4317 | strip-ansi@7.1.0: 4318 | dependencies: 4319 | ansi-regex: 6.0.1 4320 | 4321 | strip-bom@3.0.0: {} 4322 | 4323 | strip-final-newline@2.0.0: {} 4324 | 4325 | strip-final-newline@3.0.0: {} 4326 | 4327 | strip-indent@3.0.0: 4328 | dependencies: 4329 | min-indent: 1.0.1 4330 | 4331 | strip-json-comments@3.1.1: {} 4332 | 4333 | strip-literal@2.0.0: 4334 | dependencies: 4335 | js-tokens: 8.0.3 4336 | 4337 | sucrase@3.29.0: 4338 | dependencies: 4339 | commander: 4.1.1 4340 | glob: 7.1.6 4341 | lines-and-columns: 1.2.4 4342 | mz: 2.7.0 4343 | pirates: 4.0.5 4344 | ts-interface-checker: 0.1.13 4345 | 4346 | supports-color@5.5.0: 4347 | dependencies: 4348 | has-flag: 3.0.0 4349 | 4350 | supports-color@7.2.0: 4351 | dependencies: 4352 | has-flag: 4.0.0 4353 | 4354 | supports-preserve-symlinks-flag@1.0.0: {} 4355 | 4356 | term-size@2.2.1: {} 4357 | 4358 | test-exclude@6.0.0: 4359 | dependencies: 4360 | '@istanbuljs/schema': 0.1.3 4361 | glob: 7.2.3 4362 | minimatch: 3.1.2 4363 | 4364 | text-table@0.2.0: {} 4365 | 4366 | thenify-all@1.6.0: 4367 | dependencies: 4368 | thenify: 3.3.1 4369 | 4370 | thenify@3.3.1: 4371 | dependencies: 4372 | any-promise: 1.3.0 4373 | 4374 | tinybench@2.5.1: {} 4375 | 4376 | tinypool@0.8.4: {} 4377 | 4378 | tinyspy@2.2.0: {} 4379 | 4380 | tmp@0.0.33: 4381 | dependencies: 4382 | os-tmpdir: 1.0.2 4383 | 4384 | to-regex-range@5.0.1: 4385 | dependencies: 4386 | is-number: 7.0.0 4387 | 4388 | tr46@0.0.3: {} 4389 | 4390 | tr46@1.0.1: 4391 | dependencies: 4392 | punycode: 2.3.0 4393 | 4394 | tree-kill@1.2.2: {} 4395 | 4396 | trim-newlines@3.0.1: {} 4397 | 4398 | ts-api-utils@1.3.0(typescript@5.4.5): 4399 | dependencies: 4400 | typescript: 5.4.5 4401 | 4402 | ts-interface-checker@0.1.13: {} 4403 | 4404 | tsup@8.0.2(typescript@5.4.5): 4405 | dependencies: 4406 | bundle-require: 4.0.1(esbuild@0.19.7) 4407 | cac: 6.7.14 4408 | chokidar: 3.5.3 4409 | debug: 4.3.4 4410 | esbuild: 0.19.7 4411 | execa: 5.1.1 4412 | globby: 11.1.0 4413 | joycon: 3.1.1 4414 | postcss-load-config: 4.0.1 4415 | resolve-from: 5.0.0 4416 | rollup: 4.5.1 4417 | source-map: 0.8.0-beta.0 4418 | sucrase: 3.29.0 4419 | tree-kill: 1.2.2 4420 | typescript: 5.4.5 4421 | transitivePeerDependencies: 4422 | - supports-color 4423 | - ts-node 4424 | 4425 | tty-table@4.1.6: 4426 | dependencies: 4427 | chalk: 4.1.2 4428 | csv: 5.5.3 4429 | kleur: 4.1.5 4430 | smartwrap: 2.0.2 4431 | strip-ansi: 6.0.1 4432 | wcwidth: 1.0.1 4433 | yargs: 17.7.1 4434 | 4435 | tunnel@0.0.6: {} 4436 | 4437 | type-check@0.4.0: 4438 | dependencies: 4439 | prelude-ls: 1.2.1 4440 | 4441 | type-detect@4.0.8: {} 4442 | 4443 | type-fest@0.13.1: {} 4444 | 4445 | type-fest@0.20.2: {} 4446 | 4447 | type-fest@0.6.0: {} 4448 | 4449 | type-fest@0.8.1: {} 4450 | 4451 | type-fest@3.13.1: {} 4452 | 4453 | typed-array-length@1.0.4: 4454 | dependencies: 4455 | call-bind: 1.0.2 4456 | for-each: 0.3.3 4457 | is-typed-array: 1.1.10 4458 | 4459 | typescript@5.4.5: {} 4460 | 4461 | ufo@1.3.2: {} 4462 | 4463 | unbox-primitive@1.0.2: 4464 | dependencies: 4465 | call-bind: 1.0.2 4466 | has-bigints: 1.0.2 4467 | has-symbols: 1.0.3 4468 | which-boxed-primitive: 1.0.2 4469 | 4470 | undici-types@5.26.5: {} 4471 | 4472 | universalify@0.1.2: {} 4473 | 4474 | uri-js@4.4.1: 4475 | dependencies: 4476 | punycode: 2.3.0 4477 | 4478 | uuid@8.3.2: {} 4479 | 4480 | v8-to-istanbul@9.1.0: 4481 | dependencies: 4482 | '@jridgewell/trace-mapping': 0.3.17 4483 | '@types/istanbul-lib-coverage': 2.0.4 4484 | convert-source-map: 1.9.0 4485 | 4486 | validate-npm-package-license@3.0.4: 4487 | dependencies: 4488 | spdx-correct: 3.2.0 4489 | spdx-expression-parse: 3.0.1 4490 | 4491 | vite-node@1.5.3(@types/node@18.19.31): 4492 | dependencies: 4493 | cac: 6.7.14 4494 | debug: 4.3.4 4495 | pathe: 1.1.1 4496 | picocolors: 1.0.0 4497 | vite: 5.0.7(@types/node@18.19.31) 4498 | transitivePeerDependencies: 4499 | - '@types/node' 4500 | - less 4501 | - lightningcss 4502 | - sass 4503 | - stylus 4504 | - sugarss 4505 | - supports-color 4506 | - terser 4507 | 4508 | vite@5.0.7(@types/node@18.19.31): 4509 | dependencies: 4510 | '@types/node': 18.19.31 4511 | esbuild: 0.19.7 4512 | postcss: 8.4.32 4513 | rollup: 4.5.1 4514 | optionalDependencies: 4515 | fsevents: 2.3.3 4516 | 4517 | vitest-github-actions-reporter@0.11.1(vitest@1.5.3): 4518 | dependencies: 4519 | '@actions/core': 1.10.0 4520 | vitest: 1.5.3(@types/node@18.19.31) 4521 | 4522 | vitest@1.5.3(@types/node@18.19.31): 4523 | dependencies: 4524 | '@types/node': 18.19.31 4525 | '@vitest/expect': 1.5.3 4526 | '@vitest/runner': 1.5.3 4527 | '@vitest/snapshot': 1.5.3 4528 | '@vitest/spy': 1.5.3 4529 | '@vitest/utils': 1.5.3 4530 | acorn-walk: 8.3.2 4531 | chai: 4.3.10 4532 | debug: 4.3.4 4533 | execa: 8.0.1 4534 | local-pkg: 0.5.0 4535 | magic-string: 0.30.5 4536 | pathe: 1.1.1 4537 | picocolors: 1.0.0 4538 | std-env: 3.6.0 4539 | strip-literal: 2.0.0 4540 | tinybench: 2.5.1 4541 | tinypool: 0.8.4 4542 | vite: 5.0.7(@types/node@18.19.31) 4543 | vite-node: 1.5.3(@types/node@18.19.31) 4544 | why-is-node-running: 2.2.2 4545 | transitivePeerDependencies: 4546 | - less 4547 | - lightningcss 4548 | - sass 4549 | - stylus 4550 | - sugarss 4551 | - supports-color 4552 | - terser 4553 | 4554 | wcwidth@1.0.1: 4555 | dependencies: 4556 | defaults: 1.0.4 4557 | 4558 | webidl-conversions@3.0.1: {} 4559 | 4560 | webidl-conversions@4.0.2: {} 4561 | 4562 | whatwg-url@5.0.0: 4563 | dependencies: 4564 | tr46: 0.0.3 4565 | webidl-conversions: 3.0.1 4566 | 4567 | whatwg-url@7.1.0: 4568 | dependencies: 4569 | lodash.sortby: 4.7.0 4570 | tr46: 1.0.1 4571 | webidl-conversions: 4.0.2 4572 | 4573 | which-boxed-primitive@1.0.2: 4574 | dependencies: 4575 | is-bigint: 1.0.4 4576 | is-boolean-object: 1.1.2 4577 | is-number-object: 1.0.7 4578 | is-string: 1.0.7 4579 | is-symbol: 1.0.4 4580 | 4581 | which-module@2.0.0: {} 4582 | 4583 | which-pm@2.0.0: 4584 | dependencies: 4585 | load-yaml-file: 0.2.0 4586 | path-exists: 4.0.0 4587 | 4588 | which-typed-array@1.1.9: 4589 | dependencies: 4590 | available-typed-arrays: 1.0.5 4591 | call-bind: 1.0.2 4592 | for-each: 0.3.3 4593 | gopd: 1.0.1 4594 | has-tostringtag: 1.0.0 4595 | is-typed-array: 1.1.10 4596 | 4597 | which@1.3.1: 4598 | dependencies: 4599 | isexe: 2.0.0 4600 | 4601 | which@2.0.2: 4602 | dependencies: 4603 | isexe: 2.0.0 4604 | 4605 | why-is-node-running@2.2.2: 4606 | dependencies: 4607 | siginfo: 2.0.0 4608 | stackback: 0.0.2 4609 | 4610 | wrap-ansi@6.2.0: 4611 | dependencies: 4612 | ansi-styles: 4.3.0 4613 | string-width: 4.2.3 4614 | strip-ansi: 6.0.1 4615 | 4616 | wrap-ansi@7.0.0: 4617 | dependencies: 4618 | ansi-styles: 4.3.0 4619 | string-width: 4.2.3 4620 | strip-ansi: 6.0.1 4621 | 4622 | wrap-ansi@9.0.0: 4623 | dependencies: 4624 | ansi-styles: 6.2.1 4625 | string-width: 7.0.0 4626 | strip-ansi: 7.1.0 4627 | 4628 | wrappy@1.0.2: {} 4629 | 4630 | y18n@4.0.3: {} 4631 | 4632 | y18n@5.0.8: {} 4633 | 4634 | yallist@2.1.2: {} 4635 | 4636 | yallist@4.0.0: {} 4637 | 4638 | yaml@2.3.4: {} 4639 | 4640 | yargs-parser@18.1.3: 4641 | dependencies: 4642 | camelcase: 5.3.1 4643 | decamelize: 1.2.0 4644 | 4645 | yargs-parser@20.2.9: {} 4646 | 4647 | yargs-parser@21.1.1: {} 4648 | 4649 | yargs@15.4.1: 4650 | dependencies: 4651 | cliui: 6.0.0 4652 | decamelize: 1.2.0 4653 | find-up: 4.1.0 4654 | get-caller-file: 2.0.5 4655 | require-directory: 2.1.1 4656 | require-main-filename: 2.0.0 4657 | set-blocking: 2.0.0 4658 | string-width: 4.2.3 4659 | which-module: 2.0.0 4660 | y18n: 4.0.3 4661 | yargs-parser: 18.1.3 4662 | 4663 | yargs@16.2.0: 4664 | dependencies: 4665 | cliui: 7.0.4 4666 | escalade: 3.1.1 4667 | get-caller-file: 2.0.5 4668 | require-directory: 2.1.1 4669 | string-width: 4.2.3 4670 | y18n: 5.0.8 4671 | yargs-parser: 20.2.9 4672 | 4673 | yargs@17.7.1: 4674 | dependencies: 4675 | cliui: 8.0.1 4676 | escalade: 3.1.1 4677 | get-caller-file: 2.0.5 4678 | require-directory: 2.1.1 4679 | string-width: 4.2.3 4680 | y18n: 5.0.8 4681 | yargs-parser: 21.1.1 4682 | 4683 | yocto-queue@0.1.0: {} 4684 | 4685 | yocto-queue@1.0.0: {} 4686 | -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://docs.renovatebot.com/renovate-schema.json", 3 | "enabled": false, 4 | "extends": ["config:js-lib", "group:allNonMajor", "schedule:earlyMondays"], 5 | "timezone": "America/Montreal" 6 | } 7 | -------------------------------------------------------------------------------- /src/UmamiApiClient.ts: -------------------------------------------------------------------------------- 1 | import axios, { 2 | type AxiosInstance, 3 | type AxiosResponse, 4 | type InternalAxiosRequestConfig, 5 | } from "axios"; 6 | import { Website, type WebsiteData } from "./classes/website"; 7 | import { UserAccount, type UserAccountData } from "./classes/user-account"; 8 | import { DEFAULT_HTTP_CLIENT_TIMEOUT_MS, DEFAULT_USER_AGENT } from "./defaults"; 9 | 10 | interface AuthData { 11 | token: string; 12 | user: { 13 | userId: number; 14 | username: string; 15 | isAdmin: boolean; 16 | accountUuid: string; 17 | iat?: number; 18 | shareToken?: string; 19 | }; 20 | } 21 | 22 | interface PageViewPayload { 23 | website: string; 24 | url: string; 25 | referrer?: string; 26 | hostname: string; 27 | language?: string; 28 | screen?: string; 29 | } 30 | 31 | interface EventPayload { 32 | website: string; 33 | url: string; 34 | referrer?: string; 35 | hostname: string; 36 | language?: string; 37 | screen?: string; 38 | event_name: string; 39 | event_data: string; 40 | } 41 | 42 | type CollectPayload = PageViewPayload | EventPayload; 43 | 44 | export default class UmamiApiClient { 45 | private readonly _axios: AxiosInstance; 46 | private readonly _auth: Promise>; 47 | private _lastAuthCheck: number = Date.now(); 48 | 49 | public async getCurrentUser() { 50 | return (await this._auth).data.user; 51 | } 52 | 53 | /** 54 | * @param server The Umami installation hostname (e.g. app.umami.is). The protocol, if present, will be removed. 55 | * @param username Username of the user you want to use. 56 | * @param password Password of the user you want to use. 57 | * @returns An authenticated class instance 58 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/auth/login.js Relevant Umami source code} 59 | */ 60 | constructor(server: string, username: string, password: string) { 61 | if (!server) throw new Error("A server hostname is required"); 62 | server = server.replace(/https?:\/\//, "").replace(/\/$/, ""); 63 | if (!username || !password) throw new Error("A username and a password are required"); 64 | 65 | this._axios = axios.create({ 66 | baseURL: `https://${server}/api`, 67 | timeout: DEFAULT_HTTP_CLIENT_TIMEOUT_MS, 68 | }); 69 | 70 | this._axios.interceptors.request.use(this._verifyAuth.bind(this)); 71 | 72 | this._auth = this._axios.post("/auth/login", { username, password }); 73 | } 74 | 75 | private async _verifyAuth(config: InternalAxiosRequestConfig) { 76 | if (config.url == "/auth/login" || config.url == "/collect") return config; 77 | 78 | const auth = await this._auth; 79 | 80 | config.headers["Authorization"] = `Bearer ${auth.data.token}`; 81 | 82 | if (config.url == "/auth/verify") return config; 83 | 84 | if (this._lastAuthCheck + 60 * 60 * 1000 < Date.now()) { 85 | this._lastAuthCheck = Date.now(); 86 | 87 | try { 88 | await this._axios.get("/auth/verify"); 89 | } catch (error) { 90 | console.error({ axiosConfig: config }); 91 | throw error; 92 | } 93 | } 94 | 95 | return config; 96 | } 97 | 98 | /** 99 | * Collects a pageview 100 | * @param type The type of event to send 101 | * @param payload The payload of the pageview 102 | * @param userAgent Value of the User-Agent header. Necessary for platform detection. Defaults to Firefox on Mac OS on a laptop 103 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/collect.js#L75 Relevant Umami source code} 104 | */ 105 | public async collect( 106 | type: "pageview", 107 | payload: PageViewPayload, 108 | userAgent?: string, 109 | ): Promise; 110 | /** 111 | * Collects an event 112 | * @param type The type of event to send 113 | * @param payload The payload of the event 114 | * @param userAgent Value of the User-Agent header. Necessary for platform detection. Defaults to Firefox on Mac OS on a laptop 115 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/collect.js#L77 Relevant Umami source code} 116 | */ 117 | public async collect(type: "event", payload: EventPayload, userAgent?: string): Promise; 118 | public async collect( 119 | type: "pageview" | "event", 120 | payload: CollectPayload, 121 | userAgent: string = DEFAULT_USER_AGENT, 122 | ) { 123 | if (!userAgent) throw new Error("A user agent is required. See https://umami.is/docs/api"); 124 | 125 | const { data } = await this._axios.post( 126 | "/collect", 127 | { type, payload }, 128 | { headers: { "User-Agent": userAgent } }, 129 | ); 130 | return data; 131 | } 132 | 133 | /** 134 | * Collects a pageview 135 | * @param server The Umami installation hostname (e.g. app.umami.is). The protocol, if present, will be removed. 136 | * @param type The type of event to send 137 | * @param payload The payload of the pageview 138 | * @param userAgent Value of the User-Agent header. Necessary for platform detection. Defaults to Firefox on Mac OS on a laptop 139 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/collect.js#L75 Relevant Umami source code} 140 | */ 141 | public static async collect( 142 | server: string, 143 | type: "pageview", 144 | payload: PageViewPayload, 145 | userAgent?: string, 146 | ): Promise; 147 | /** 148 | * Collects an event 149 | * @param server The Umami installation hostname (e.g. app.umami.is). The protocol, if present, will be removed. 150 | * @param type The type of event to send 151 | * @param payload The payload of the event 152 | * @param userAgent Value of the User-Agent header. Necessary for platform detection. Defaults to Firefox on Mac OS on a laptop 153 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/collect.js#L77 Relevant Umami source code} 154 | */ 155 | public static async collect( 156 | server: string, 157 | type: "event", 158 | payload: EventPayload, 159 | userAgent?: string, 160 | ): Promise; 161 | public static async collect( 162 | server: string, 163 | type: "pageview" | "event", 164 | payload: CollectPayload, 165 | userAgent: string = DEFAULT_USER_AGENT, 166 | ) { 167 | if (!server) throw new Error("A server is required."); 168 | server = server.replace(/https?:\/\//, "").replace(/\/$/, ""); 169 | 170 | if (!userAgent) throw new Error("A user agent is required. See https://umami.is/docs/api"); 171 | 172 | const { data } = await axios.post( 173 | `https://${server}/api/collect`, 174 | { type, payload }, 175 | { headers: { "User-Agent": userAgent } }, 176 | ); 177 | return data; 178 | } 179 | 180 | /** 181 | * Gets tracked websites 182 | * @param options.include_all Whether or not to include all websites (admin only) 183 | * @param options.user_id The user to query websites from (admin only, if not your own user id) 184 | * @returns An array of tracked websites 185 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/index.js#L20-L31 Relevant Umami source code} 186 | */ 187 | public async getWebsites(options?: { include_all?: boolean; user_id?: number }) { 188 | const { data } = await this._axios.get("/websites", { 189 | params: options, 190 | }); 191 | return data.map((data) => new Website(this, this._axios, data)); 192 | } 193 | 194 | /** 195 | * Gets the first website that gets returned by Umami 196 | * @returns The first website 197 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/index.js Relevant Umami source code} 198 | */ 199 | public async getWebsite(): Promise; 200 | /** 201 | * Gets a website by its UUID (not ID) 202 | * @param websiteUuid The website's UUID (not ID) 203 | * @returns The website 204 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/[id]/index.js Relevant Umami source code} 205 | */ 206 | public async getWebsite(websiteUuid: string): Promise; 207 | public async getWebsite(websiteUuid?: string) { 208 | if (websiteUuid === undefined) { 209 | const websites = await this.getWebsites(); 210 | return new Website(this, this._axios, websites[0]); 211 | } 212 | 213 | const { data } = await this._axios.get(`/websites/${websiteUuid}`); 214 | return new Website(this, this._axios, data); 215 | } 216 | 217 | /** 218 | * Gets a website by a property 219 | * @param key The property to check 220 | * @param value The value to check the property against 221 | * @returns The website 222 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/index.js Relevant Umami source code} 223 | * 224 | * @example 225 | * Get a website by domain name 226 | * ```ts 227 | * const website = await instance.getWebsiteBy("domain", "example.com"); 228 | * ``` 229 | */ 230 | public async getWebsiteBy(key: keyof Website, value: string | number) { 231 | if (key == "shareId") { 232 | const { data } = await this._axios.get<{ id: string; token: string }>(`/share/${value}`); 233 | return await this.getWebsite(data.id); 234 | } 235 | 236 | if (key == "websiteUuid") { 237 | return await this.getWebsite(value as string); 238 | } 239 | 240 | const websites = await this.getWebsites(); 241 | const website = websites.find((website) => website[key] == value); 242 | if (!website) { 243 | throw Error("Could not find website"); 244 | } 245 | return website; 246 | } 247 | 248 | /** 249 | * Creates a new website and returns its information. 250 | * @param options.domain The domain name of the website (e.g. umami.is) 251 | * @param options.name The name of the website (usually the same as the domain) 252 | * @param options.owner The website's owner's ID (by default, the logged-in's user's) 253 | * @param options.enableShareUrl Whether or not to enable public sharing. 254 | * @returns The new website's information 255 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/index.js#L33-L47 Relevant Umami source code} 256 | */ 257 | public async createWebsite(options: { 258 | domain: string; 259 | name: string; 260 | owner?: number; 261 | enableShareUrl?: boolean; 262 | }) { 263 | if (!options.owner) { 264 | const currentUser = await this.getCurrentUser(); 265 | options = { 266 | ...options, 267 | owner: currentUser.userId, 268 | }; 269 | } 270 | const { data } = await this._axios.post("/websites", options); 271 | return new Website(this, this._axios, data); 272 | } 273 | 274 | /** 275 | * Gets all the user accounts (admin only) 276 | * @returns An array of all the user accounts 277 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/accounts/index.js#L15-L19 Relevant Umami source code} 278 | */ 279 | public async getAccounts() { 280 | const { data } = await this._axios.get("/accounts"); 281 | return data.map((data) => new UserAccount(this._axios, data)); 282 | } 283 | 284 | /** 285 | * Gets a user account (admin only) 286 | * @param userId The user ID 287 | * @returns The user account 288 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/accounts/[id]/index.js#L11-L19 Relevant Umami source code} 289 | */ 290 | public async getAccount(userId: number) { 291 | const { data } = await this._axios.get(`/accounts/${userId}`); 292 | return new UserAccount(this._axios, data); 293 | } 294 | 295 | /** 296 | * Creates a user account (admin only) 297 | * @param options.username The username 298 | * @param options.password The password 299 | * @returns The user account 300 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/accounts/index.js#L21-L37 Relevant Umami source code} 301 | */ 302 | public async createAccount(options: { username: string; password: string }) { 303 | const { data } = await this._axios.post("/accounts", options); 304 | return new UserAccount(this._axios, data); 305 | } 306 | } 307 | -------------------------------------------------------------------------------- /src/classes/user-account.ts: -------------------------------------------------------------------------------- 1 | import type { AxiosInstance } from "axios"; 2 | 3 | export interface UserAccountData { 4 | id: number; 5 | username: string; 6 | isAdmin: boolean; 7 | createdAt: string; 8 | updatedAt: string; 9 | accountUuid: string; 10 | } 11 | 12 | export class UserAccount implements UserAccountData { 13 | private readonly _axios: AxiosInstance; 14 | public readonly id: number; 15 | public username: string; 16 | public isAdmin: boolean; 17 | public readonly createdAt: string; 18 | public updatedAt: string; 19 | public accountUuid: string; 20 | 21 | constructor(axios: AxiosInstance, data: UserAccountData) { 22 | this._axios = axios; 23 | this.id = data.id; 24 | this.username = data.username; 25 | this.isAdmin = data.isAdmin; 26 | this.createdAt = data.createdAt; 27 | this.updatedAt = data.updatedAt; 28 | this.accountUuid = data.accountUuid; 29 | } 30 | 31 | /** 32 | * Updates a user account 33 | * @param options.username New username (admin only) 34 | * @param options.password New password 35 | * @returns The user account 36 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/accounts/[id]/index.js#L21-L53 Relevant Umami source code} 37 | */ 38 | public async update(options: { username: string; password: string }) { 39 | const { data } = await this._axios.post(`/accounts/${this.id}`, options); 40 | Object.assign(this, data); 41 | return this; 42 | } 43 | 44 | /** 45 | * Updates a user account password 46 | * @param options.current_password Current password 47 | * @param options.new_password New password 48 | * @returns The user account 49 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/accounts/[id]/password.js Relevant Umami source code} 50 | */ 51 | public async changePassword(options: { current_password: string; new_password: string }) { 52 | await this._axios.post(`/accounts/${this.accountUuid}/password`, options); 53 | return this; 54 | } 55 | 56 | /** 57 | * Deletes the user account (admin only) 58 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/accounts/[id]/index.js#L55-L63 Relevant Umami source code} 59 | */ 60 | public async delete() { 61 | await this._axios.delete(`/accounts/${this.id}`); 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /src/classes/website.ts: -------------------------------------------------------------------------------- 1 | import type { AxiosInstance } from "axios"; 2 | import type UmamiApiClient from "../UmamiApiClient"; 3 | import { 4 | DEFAULT_TIME_PERIOD, 5 | DEFAULT_TIME_UNIT, 6 | DEFAULT_TIMEZONE, 7 | DEFAULT_METRIC_TYPE, 8 | } from "../defaults"; 9 | 10 | type TimeUnit = "year" | "month" | "day" | "hour"; 11 | 12 | type MetricType = 13 | | "url" 14 | | "referrer" 15 | | "browser" 16 | | "os" 17 | | "device" 18 | | "country" 19 | | "event" 20 | | "language" 21 | | "utm_source" 22 | | "utm_medium" 23 | | "utm_campaign" 24 | | "utm_content" 25 | | "utm_term" 26 | | "ref"; 27 | 28 | interface Stats { 29 | pageviews: { 30 | value: number; 31 | change: number; 32 | }; 33 | uniques: { 34 | value: number; 35 | change: number; 36 | }; 37 | bounces: { 38 | value: number; 39 | change: number; 40 | }; 41 | totaltime: { 42 | value: number; 43 | change: number; 44 | }; 45 | } 46 | 47 | interface PageViews { 48 | /** 49 | * @param t The time period of the data 50 | * @param y The amount of page views in the time period 51 | */ 52 | pageviews: { 53 | t: string; 54 | y: number; 55 | }[]; 56 | /** 57 | * @param t The time period of the data 58 | * @param y The amount of sessions in the time period 59 | */ 60 | sessions: { 61 | t: string; 62 | y: number; 63 | }[]; 64 | } 65 | 66 | /** 67 | * @param x The name of the event 68 | * @param t The time period of the data 69 | * @param y The amount of events in the time period 70 | */ 71 | interface Event { 72 | x: string; 73 | t: string; 74 | y: number; 75 | } 76 | 77 | /** 78 | * @param x The metric's value 79 | * @param y The amount of this metric's value in the period of time 80 | */ 81 | interface Metric { 82 | x: string | null; 83 | y: number; 84 | } 85 | 86 | interface ActiveVisitor { 87 | x: number; 88 | } 89 | 90 | const HOUR_PERIODS = ["1h", "1hour", "60min", "60minutes"] as const; 91 | type HourPeriod = (typeof HOUR_PERIODS)[number]; 92 | const DAY_PERIODS = ["1d", "1day", "24h", "24hours"] as const; 93 | type DayPeriod = (typeof DAY_PERIODS)[number]; 94 | const WEEK_PERIODS = ["7d", "7days", "1w", "1week"] as const; 95 | type WeekPeriod = (typeof WEEK_PERIODS)[number]; 96 | const MONTH_PERIODS = ["31d", "31days", "1m", "1month"] as const; 97 | type MonthPeriod = (typeof MONTH_PERIODS)[number]; 98 | 99 | type TimePeriod = HourPeriod | DayPeriod | WeekPeriod | MonthPeriod; 100 | 101 | export const convertPeriodToTime = (period: TimePeriod = "24h") => { 102 | let delta: number; 103 | if (HOUR_PERIODS.includes(period as HourPeriod)) { 104 | delta = 60 * 60 * 1000; 105 | } else if (DAY_PERIODS.includes(period as DayPeriod)) { 106 | delta = 24 * 60 * 60 * 1000; 107 | } else if (WEEK_PERIODS.includes(period as WeekPeriod)) { 108 | delta = 7 * 24 * 60 * 60 * 1000; 109 | } else if (MONTH_PERIODS.includes(period as MonthPeriod)) { 110 | delta = 31 * 24 * 60 * 60 * 1000; 111 | } else { 112 | throw `Unexpected period provided. Accepted values are : ${[ 113 | ...HOUR_PERIODS, 114 | ...DAY_PERIODS, 115 | ...WEEK_PERIODS, 116 | ...MONTH_PERIODS, 117 | ]}`; 118 | } 119 | return { 120 | start_at: Date.now() - delta, 121 | end_at: Date.now(), 122 | }; 123 | }; 124 | 125 | export interface WebsiteData { 126 | id: number; 127 | websiteUuid: string; 128 | userId: number; 129 | name: string; 130 | domain: string; 131 | shareId: string | null; 132 | createdAt: string; 133 | } 134 | 135 | export class Website implements WebsiteData { 136 | private readonly _apiClient: UmamiApiClient; 137 | private readonly _axios: AxiosInstance; 138 | public readonly id: number; 139 | public readonly websiteUuid: string; 140 | public userId: number; 141 | public name: string; 142 | public domain: string; 143 | public shareId: string | null; 144 | public createdAt: string; 145 | 146 | constructor(apiClient: UmamiApiClient, axios: AxiosInstance, data: WebsiteData) { 147 | this._apiClient = apiClient; 148 | this._axios = axios; 149 | this.id = data.id; 150 | this.websiteUuid = data.websiteUuid; 151 | this.userId = data.userId; 152 | this.name = data.name; 153 | this.domain = data.domain; 154 | this.shareId = data.shareId; 155 | this.createdAt = data.createdAt; 156 | } 157 | 158 | /** 159 | * Updates the website. 160 | * @param options.domain The domain name of the website (e.g. umami.is) 161 | * @param options.name The name of the website (usually the same as the domain) 162 | * @param options.owner The website's owner's ID (by default, the logged-in's user's) 163 | * @param options.enableShareUrl Whether or not to enable public sharing. 164 | * @returns 165 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/[id]/index.js#L23-L57 Relevant Umami source code} 166 | */ 167 | public async update(options: { 168 | domain: string; 169 | name: string; 170 | owner?: number; 171 | enableShareUrl?: boolean; 172 | }) { 173 | if (!options.owner) { 174 | const currentUser = await this._apiClient.getCurrentUser(); 175 | options = { 176 | ...options, 177 | owner: currentUser.userId, 178 | }; 179 | } 180 | 181 | const { data } = await this._axios.post(`/websites/${this.websiteUuid}`, options); 182 | Object.assign(this, data); 183 | return this; 184 | } 185 | 186 | /** 187 | * Deletes the website 188 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/[id]/index.js#L59-L67 Relevant Umami source code} 189 | */ 190 | public async delete() { 191 | await this._axios.delete(`/websites/${this.websiteUuid}`); 192 | } 193 | 194 | /** 195 | * Gets the stats of the website from a specified time period 196 | * @param options.period The time period of stats to return 197 | * @param options.url Filter stats by URL 198 | * @param options.referrer Filter stats by referrer 199 | * @param options.os Filter stats by OS 200 | * @param options.browser Filter stats by browser 201 | * @param options.device Filter stats by device 202 | * @param options.country Filter stats by country 203 | * @returns The website's stats from the specified time period 204 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/[id]/stats.js Relevant Umami source code} 205 | */ 206 | public async getStats(options?: { 207 | period?: TimePeriod; 208 | url?: string; 209 | referrer?: string; 210 | os?: string; 211 | browser?: string; 212 | device?: string; 213 | country?: string; 214 | }) { 215 | const { data } = await this._axios.get(`/websites/${this.websiteUuid}/stats`, { 216 | params: { 217 | ...convertPeriodToTime(options?.period ?? DEFAULT_TIME_PERIOD), 218 | url: options?.url, 219 | referrer: options?.referrer, 220 | os: options?.os, 221 | browser: options?.browser, 222 | device: options?.device, 223 | country: options?.country, 224 | }, 225 | }); 226 | return data; 227 | } 228 | 229 | /** 230 | * Resets the website's stats 231 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/[id]/reset.js Relevant Umami source code} 232 | */ 233 | public async resetStats() { 234 | await this._axios.post(`/websites/${this.websiteUuid}/reset`); 235 | return this; 236 | } 237 | 238 | /** 239 | * Gets the pageviews of the website from a specified time period 240 | * @param options.period The time period of pageviews to return 241 | * @param options.unit The interval of time/precision of the returned pageviews 242 | * @param options.tz The timezone you're in (defaults to "America/Toronto") 243 | * @param options.url Filter pageviews by URL 244 | * @param options.referrer Filter pageviews by referrer 245 | * @param options.os Filter pageviews by OS 246 | * @param options.browser Filter pageviews by browser 247 | * @param options.device Filter pageviews by device 248 | * @param options.country Filter pageviews by country 249 | * @returns The website's pageviews from the specified time period 250 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/[id]/pageviews.js Relevant Umami source code} 251 | */ 252 | public async getPageviews(options?: { 253 | period?: TimePeriod; 254 | unit?: TimeUnit; 255 | tz?: string; 256 | url?: string; 257 | referrer?: string; 258 | os?: string; 259 | browser?: string; 260 | device?: string; 261 | country?: string; 262 | }) { 263 | const { data } = await this._axios.get(`/websites/${this.websiteUuid}/pageviews`, { 264 | params: { 265 | ...convertPeriodToTime(options?.period ?? DEFAULT_TIME_PERIOD), 266 | unit: options?.unit ?? DEFAULT_TIME_UNIT, 267 | tz: options?.tz ?? DEFAULT_TIMEZONE, 268 | url: options?.url, 269 | referrer: options?.referrer, 270 | os: options?.os, 271 | browser: options?.browser, 272 | device: options?.device, 273 | country: options?.country, 274 | }, 275 | }); 276 | return data; 277 | } 278 | 279 | /** 280 | * Gets the events of the website from a specified time period 281 | * @param options.period The time period of events to return 282 | * @param options.unit The interval of time/precision of the returned events 283 | * @param options.tz The timezone you're in (defaults to "America/Toronto") 284 | * @param options.url The url where the event happened. 285 | * @param options.event_type The type of event to request. 286 | * @returns An array of events from the specified time period 287 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/website/[id]/events.js Relevant Umami source code} 288 | */ 289 | public async getEvents(options?: { 290 | period?: TimePeriod; 291 | unit?: TimeUnit; 292 | tz?: string; 293 | url?: string; 294 | event_type?: string; 295 | }) { 296 | const { data } = await this._axios.get(`/websites/${this.websiteUuid}/events`, { 297 | params: { 298 | ...convertPeriodToTime(options?.period ?? DEFAULT_TIME_PERIOD), 299 | unit: options?.unit ?? DEFAULT_TIME_UNIT, 300 | tz: options?.tz ?? DEFAULT_TIMEZONE, 301 | url: options?.url, 302 | event_type: options?.event_type, 303 | }, 304 | }); 305 | return data; 306 | } 307 | 308 | /** 309 | * Gets a type of metrics of the website from a specified time period 310 | * @param options.period The time period of events to return 311 | * @param options.type The type of metric to get. Defaults to url 312 | * @param options.url Filter metrics by URL 313 | * @param options.referrer Filter metrics by referrer 314 | * @param options.os Filter metrics by OS 315 | * @param options.browser Filter metrics by browser 316 | * @param options.device Filter metrics by device 317 | * @param options.country Filter metrics by country 318 | * @returns An array of metrics from the specified time period 319 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/[id]/metrics.js Relevant Umami source code} 320 | */ 321 | public async getMetrics(options?: { 322 | period?: TimePeriod; 323 | type?: MetricType; 324 | url?: string; 325 | referrer?: string; 326 | os?: string; 327 | browser?: string; 328 | device?: string; 329 | country?: string; 330 | }) { 331 | const { data } = await this._axios.get(`/websites/${this.websiteUuid}/metrics`, { 332 | params: { 333 | ...convertPeriodToTime(options?.period ?? DEFAULT_TIME_PERIOD), 334 | type: options?.type ?? DEFAULT_METRIC_TYPE, 335 | url: options?.url, 336 | referrer: options?.referrer, 337 | os: options?.os, 338 | browser: options?.browser, 339 | device: options?.device, 340 | country: options?.country, 341 | }, 342 | }); 343 | return data; 344 | } 345 | 346 | /** 347 | * Gets the active visitors of a website 348 | * @returns 349 | * @see {@link https://github.com/umami-software/umami/blob/master/pages/api/websites/[id]/active.js Relevant Umami source code} 350 | */ 351 | public async getActiveVisitors() { 352 | const { data } = await this._axios.get(`/websites/${this.websiteUuid}/active`); 353 | return data; 354 | } 355 | } 356 | -------------------------------------------------------------------------------- /src/defaults.ts: -------------------------------------------------------------------------------- 1 | const { 2 | UMAMI_CLIENT_TIMEOUT_MS, 3 | UMAMI_CLIENT_USER_AGENT, 4 | UMAMI_CLIENT_TIME_PERIOD, 5 | UMAMI_CLIENT_TIME_UNIT, 6 | UMAMI_CLIENT_TIMEZONE, 7 | UMAMI_CLIENT_METRIC_TYPE, 8 | } = process.env; 9 | 10 | export const DEFAULT_HTTP_CLIENT_TIMEOUT_MS = UMAMI_CLIENT_TIMEOUT_MS 11 | ? parseInt(UMAMI_CLIENT_TIMEOUT_MS) 12 | : 2000; 13 | export const DEFAULT_USER_AGENT = 14 | UMAMI_CLIENT_USER_AGENT ?? 15 | "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Firefox/102.0"; 16 | export const DEFAULT_TIME_PERIOD = UMAMI_CLIENT_TIME_PERIOD ?? "24h"; 17 | export const DEFAULT_TIME_UNIT = UMAMI_CLIENT_TIME_UNIT ?? "hour"; 18 | export const DEFAULT_TIMEZONE = UMAMI_CLIENT_TIMEZONE ?? "America/Toronto"; 19 | export const DEFAULT_METRIC_TYPE = UMAMI_CLIENT_METRIC_TYPE ?? "url"; 20 | -------------------------------------------------------------------------------- /src/env.d.ts: -------------------------------------------------------------------------------- 1 | declare global { 2 | namespace NodeJS { 3 | interface ProcessEnv { 4 | UMAMI_CLIENT_TIMEOUT_MS?: string; 5 | UMAMI_CLIENT_USER_AGENT?: string; 6 | UMAMI_CLIENT_TIME_PERIOD?: TimePeriod; 7 | UMAMI_CLIENT_TIME_UNIT?: TimeUnit; 8 | UMAMI_CLIENT_TIMEZONE?: string; 9 | UMAMI_CLIENT_METRIC_TYPE?: MetricType; 10 | } 11 | } 12 | } 13 | 14 | export {}; 15 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | import UmamiApiClient from "./UmamiApiClient"; 3 | export default UmamiApiClient; 4 | -------------------------------------------------------------------------------- /tests/00_negative_cases.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, test, expect } from "vitest"; 2 | import UmamiAPIClient from "../src/index"; 3 | 4 | const invalidTarget = "example.com"; 5 | const user = "user"; 6 | const password = "password"; 7 | 8 | describe("negative cases", () => { 9 | test("getWebsite to an invalid target must respond 404", async function () { 10 | // flaky with timeout to 1 sec 11 | 12 | const umami = new UmamiAPIClient(invalidTarget, user, password); 13 | await expect(umami.getWebsite()).rejects.toThrow("Request failed with status code 404"); 14 | }); 15 | }); 16 | -------------------------------------------------------------------------------- /tests/01_getters.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, it, expect, beforeAll, afterEach } from "vitest"; 2 | import axios from "axios"; 3 | import MockAdapter from "axios-mock-adapter"; 4 | 5 | import UmamiAPIClient from "../src/index"; 6 | 7 | const AUTH_RESPONSE = { 8 | token: "tokenPlaceHolder", 9 | user: { user_id: 1, username: "admin", is_admin: true }, 10 | }; 11 | const GET_WEBSITES = [ 12 | { 13 | id: 3, 14 | websiteUuid: "222aefa6-6a04-41e7-b3f6-1dc1202850da", 15 | userId: 1, 16 | name: "a__www.example.fr", 17 | domain: "www.example.fr", 18 | shareId: "fxTuJRd6", 19 | createdAt: "2022-02-17T12:57:43.805Z", 20 | }, 21 | { 22 | id: 2, 23 | websiteUuid: "2220837f-6d57-4ec7-8941-1541624e65c7", 24 | userId: 1, 25 | name: "b__integration", 26 | domain: "integration.example.fr", 27 | shareId: "wLP1SE57", 28 | createdAt: "2022-02-16T20:33:31.106Z", 29 | }, 30 | { 31 | id: 1, 32 | websiteUuid: "2224c9d5-12ad-41db-923a-961d6f695430", 33 | userId: 1, 34 | name: "dev", 35 | domain: "localhost", 36 | shareId: "nlU4dVZT", 37 | createdAt: "2022-02-16T12:44:44.015Z", 38 | }, 39 | ]; 40 | 41 | const server = "umami.example.fr"; 42 | const user = "admin"; 43 | const password = "012345678"; 44 | 45 | describe("getters", () => { 46 | let mock: MockAdapter; 47 | 48 | beforeAll(() => { 49 | mock = new MockAdapter(axios); 50 | }); 51 | 52 | afterEach(() => { 53 | mock.reset(); 54 | }); 55 | 56 | const mockAuthRequest = () => 57 | mock.onPost(`https://${server}/api/auth/login`).reply(200, AUTH_RESPONSE); 58 | const mockGetWebsites = () => 59 | mock.onGet(`https://${server}/api/websites`).reply(200, GET_WEBSITES); 60 | 61 | describe("getWebsites", () => { 62 | it("getWebsites should return all websites", async () => { 63 | // GIVEN 64 | mockAuthRequest(); 65 | mockGetWebsites(); 66 | 67 | const umami = new UmamiAPIClient(server, user, password); 68 | 69 | await expect(umami.getWebsites()).resolves.toMatchObject(GET_WEBSITES); 70 | }); 71 | 72 | it("getWebsite should return first website", async () => { 73 | // GIVEN 74 | mockAuthRequest(); 75 | mockGetWebsites(); 76 | 77 | const umami = new UmamiAPIClient(server, user, password); 78 | 79 | await expect(umami.getWebsite()).resolves.toMatchObject(GET_WEBSITES[0]); 80 | }); 81 | }); 82 | }); 83 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "declaration": true, 4 | "esModuleInterop": true, 5 | "forceConsistentCasingInFileNames": true, 6 | "verbatimModuleSyntax": true, 7 | "lib": ["ESNext"], 8 | "module": "ESNext", 9 | "moduleResolution": "node", 10 | "noEmitOnError": true, 11 | "noImplicitAny": true, 12 | "noImplicitOverride": true, 13 | "noImplicitReturns": true, 14 | "noImplicitThis": true, 15 | "noUnusedLocals": true, 16 | "noUnusedParameters": true, 17 | "resolveJsonModule": true, 18 | "skipLibCheck": true, 19 | "sourceMap": true, 20 | "strict": true, 21 | "target": "ESNext" 22 | }, 23 | "include": ["src/**/*.ts"] 24 | } 25 | -------------------------------------------------------------------------------- /tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "tsup"; 2 | 3 | export default defineConfig((options) => { 4 | return { 5 | entry: ["src/index.ts"], 6 | target: "node16", 7 | format: ["cjs", "esm"], 8 | dts: true, 9 | sourcemap: true, 10 | clean: true, 11 | minify: !options.watch, 12 | }; 13 | }); 14 | -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vitest/config"; 2 | import GithubActionsReporter from "vitest-github-actions-reporter"; 3 | 4 | export default defineConfig({ 5 | test: { 6 | reporters: process.env.GITHUB_ACTIONS ? ["default", new GithubActionsReporter()] : "default", 7 | include: ["tests/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"], 8 | }, 9 | }); 10 | --------------------------------------------------------------------------------