├── .github └── workflows │ ├── ci.yml │ └── cq.yml ├── .gitignore ├── .husky └── pre-commit ├── .npmrc ├── .prettierrc ├── LICENSE ├── examples └── basic │ ├── .gitignore │ ├── client.mjs │ ├── index.html │ ├── index.php │ ├── package.json │ ├── php-server-plugin.ts │ ├── readme.md │ ├── tsconfig.json │ └── vite.config.ts ├── lint-staged.config.mjs ├── package.json ├── packages └── php-tag │ ├── .eslintrc.cjs │ ├── lint-staged.config.mjs │ ├── package.json │ ├── readme.md │ ├── src │ ├── babel-plugin.test.ts │ ├── babel-plugin.ts │ ├── fixtures │ │ ├── input.txt │ │ └── output.txt │ ├── index.ts │ └── vite-plugin.ts │ ├── tsconfig.json │ └── tsup.config.ts ├── pics └── reactions.png ├── pnpm-lock.yaml ├── pnpm-workspace.yaml ├── readme.md └── version /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: CI tests 2 | 3 | on: 4 | workflow_dispatch: 5 | push: 6 | pull_request: 7 | 8 | defaults: 9 | run: 10 | working-directory: . 11 | 12 | jobs: 13 | test: 14 | runs-on: ${{ matrix.os }} 15 | strategy: 16 | matrix: 17 | os: [ubuntu-latest, macos-latest, windows-latest] 18 | node_version: [16] 19 | include: 20 | - os: ubuntu-latest 21 | node_version: 14 22 | - os: ubuntu-latest 23 | node_version: 18 24 | fail-fast: false 25 | name: "CI tests on node-${{ matrix.node_version }}, ${{ matrix.os }}" 26 | steps: 27 | - name: Checkout 28 | uses: actions/checkout@v2 29 | 30 | - name: Install pnpm 31 | uses: pnpm/action-setup@v2.1.0 32 | with: 33 | version: 7 34 | 35 | - name: Set node version to ${{ matrix.node_version }} 36 | uses: actions/setup-node@v2 37 | with: 38 | node-version: ${{ matrix.node_version }} 39 | cache: "pnpm" 40 | 41 | - name: Install 42 | run: pnpm install 43 | 44 | - name: Build 45 | run: pnpm run build 46 | 47 | - name: Run CI tests 48 | run: pnpm run ci 49 | -------------------------------------------------------------------------------- /.github/workflows/cq.yml: -------------------------------------------------------------------------------- 1 | name: Code quality checks 2 | 3 | on: 4 | workflow_dispatch: 5 | push: 6 | pull_request: 7 | 8 | defaults: 9 | run: 10 | working-directory: . 11 | 12 | jobs: 13 | test: 14 | runs-on: ${{ matrix.os }} 15 | strategy: 16 | matrix: 17 | os: [ubuntu-latest] 18 | node_version: [16] 19 | fail-fast: false 20 | name: "Code quality checks on node-${{ matrix.node_version }}, ${{ matrix.os }}" 21 | steps: 22 | - name: Checkout 23 | uses: actions/checkout@v2 24 | 25 | - name: Install pnpm 26 | uses: pnpm/action-setup@v2.1.0 27 | with: 28 | version: 7 29 | 30 | - name: Set node version to ${{ matrix.node_version }} 31 | uses: actions/setup-node@v2 32 | with: 33 | node-version: ${{ matrix.node_version }} 34 | cache: "pnpm" 35 | 36 | - name: Install 37 | run: pnpm install 38 | 39 | - name: Build 40 | run: pnpm run build 41 | 42 | - name: Run code quality checks and tests 43 | run: pnpm run test:prettier && pnpm test:packages 44 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | .pnpm-debug.log* 9 | 10 | # Diagnostic reports (https://nodejs.org/api/report.html) 11 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 12 | 13 | # Runtime data 14 | pids 15 | *.pid 16 | *.seed 17 | *.pid.lock 18 | 19 | # Directory for instrumented libs generated by jscoverage/JSCover 20 | lib-cov 21 | 22 | # Coverage directory used by tools like istanbul 23 | coverage 24 | *.lcov 25 | 26 | # nyc test coverage 27 | .nyc_output 28 | 29 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 30 | .grunt 31 | 32 | # Bower dependency directory (https://bower.io/) 33 | bower_components 34 | 35 | # node-waf configuration 36 | .lock-wscript 37 | 38 | # Compiled binary addons (https://nodejs.org/api/addons.html) 39 | build/Release 40 | 41 | # Dependency directories 42 | node_modules/ 43 | jspm_packages/ 44 | 45 | # Snowpack dependency directory (https://snowpack.dev/) 46 | web_modules/ 47 | 48 | # TypeScript cache 49 | *.tsbuildinfo 50 | 51 | # Optional npm cache directory 52 | .npm 53 | 54 | # Optional eslint cache 55 | .eslintcache 56 | 57 | # Optional stylelint cache 58 | .stylelintcache 59 | 60 | # Microbundle cache 61 | .rpt2_cache/ 62 | .rts2_cache_cjs/ 63 | .rts2_cache_es/ 64 | .rts2_cache_umd/ 65 | 66 | # Optional REPL history 67 | .node_repl_history 68 | 69 | # Output of 'npm pack' 70 | *.tgz 71 | 72 | # Yarn Integrity file 73 | .yarn-integrity 74 | 75 | # dotenv environment variable files 76 | .env 77 | .env.development.local 78 | .env.test.local 79 | .env.production.local 80 | .env.local 81 | 82 | # parcel-bundler cache (https://parceljs.org/) 83 | .cache 84 | .parcel-cache 85 | 86 | # Next.js build output 87 | .next 88 | out 89 | 90 | # Nuxt.js build / generate output 91 | .nuxt 92 | dist 93 | 94 | # Gatsby files 95 | .cache/ 96 | # Comment in the public line in if your project uses Gatsby and not Next.js 97 | # https://nextjs.org/blog/next-9-1#public-directory-support 98 | # public 99 | 100 | # vuepress build output 101 | .vuepress/dist 102 | 103 | # vuepress v2.x temp and cache directory 104 | .temp 105 | .cache 106 | 107 | # Serverless directories 108 | .serverless/ 109 | 110 | # FuseBox cache 111 | .fusebox/ 112 | 113 | # DynamoDB Local files 114 | .dynamodb/ 115 | 116 | # TernJS port file 117 | .tern-port 118 | 119 | # Stores VSCode versions used for testing VSCode extensions 120 | .vscode-test 121 | .vscode 122 | 123 | # yarn v2 124 | .yarn/cache 125 | .yarn/unplugged 126 | .yarn/build-state.yml 127 | .yarn/install-state.gz 128 | .pnp.* 129 | 130 | # Local files 131 | *.local.* 132 | 133 | -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . "$(dirname "$0")/_/husky.sh" 3 | 4 | pnpm run precommit -- 5 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | auto-install-peers = false -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "trailingComma": "all", 3 | "useTabs": false, 4 | "tabWidth": 2 5 | } 6 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2021 Fatih Aygün 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 4 | 5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 8 | 9 | -------------------------------------------------------------------------------- /examples/basic/.gitignore: -------------------------------------------------------------------------------- 1 | php-output -------------------------------------------------------------------------------- /examples/basic/client.mjs: -------------------------------------------------------------------------------- 1 | import { php } from "php-tag"; 2 | 3 | async function run() { 4 | const pre = document.getElementById("result"); 5 | try { 6 | const result = await php`return [ 7 | 'serverTime' => date('Y-m-d H:i:s'), 8 | 'arg1' => ${"first argument"}, 9 | 'arg2' => ${"second argument"}, 10 | ];`; 11 | 12 | pre.style.color = "#333"; 13 | pre.innerText = JSON.stringify(result, null, 2); 14 | } catch (error) { 15 | pre.style.color = "red"; 16 | pre.innerText = error.message; 17 | } 18 | } 19 | 20 | document.getElementById("btn").addEventListener("click", run); 21 | -------------------------------------------------------------------------------- /examples/basic/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Basic Example 5 | 6 | 7 | 8 |

Basic Example

9 |

10 | 11 |

12 |

13 |     
14 |   
15 | 
16 | 


--------------------------------------------------------------------------------
/examples/basic/index.php:
--------------------------------------------------------------------------------
 1 |  $arg) {
29 |     $function .= "\$_arg$i";
30 |     if ($i < count($args) - 1) {
31 |       $function .= ",";
32 |     }
33 | 
34 |     if (!is_string($parts[$i] ?? null)) {
35 |       http_response_code(400);
36 |       return false;
37 |     }
38 | 
39 |     $body .= $parts[$i] . " \$_arg$i ";
40 |   }
41 | 
42 |   $body .= $parts[count($args)] ?? "";
43 | 
44 |   $function .= ") {" . $body . "};";
45 | 
46 |   echo json_encode(call_user_func_array(eval($function), $args));
47 |   exit();
48 | } else {
49 |   // In production, the code is in a separate file and the selector is
50 |   // a the file name.
51 |   $hash = $data["selector"] ?? null;
52 |   if (
53 |     !is_string($hash) ||
54 |     !preg_match("/^[a-f0-9]+$/", $hash) ||
55 |     !is_array($args)
56 |   ) {
57 |     http_response_code(400);
58 |     return false;
59 |   }
60 | 
61 |   $function = require_once __DIR__ . "/php-output/$hash.php";
62 |   echo json_encode(call_user_func_array($function, $args));
63 | }
64 | 


--------------------------------------------------------------------------------
/examples/basic/package.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "name": "example-php-tag",
 3 |   "private": true,
 4 |   "scripts": {
 5 |     "dev": "cross-env PHP_TAG_ENV=development vite",
 6 |     "build": "vite build",
 7 |     "preview": "vite preview"
 8 |   },
 9 |   "dependencies": {
10 |     "php-tag": "0.0.1"
11 |   },
12 |   "devDependencies": {
13 |     "@types/node": "^18.0.3",
14 |     "cross-env": "^7.0.3",
15 |     "kill-port": "^2.0.1",
16 |     "vite": "^3.0.4"
17 |   }
18 | }
19 | 


--------------------------------------------------------------------------------
/examples/basic/php-server-plugin.ts:
--------------------------------------------------------------------------------
 1 | import { PluginOption } from "vite";
 2 | import { spawn, ChildProcess } from "child_process";
 3 | // @ts-expect-error: No typings
 4 | import killPort from "kill-port";
 5 | 
 6 | export function phpServerPlugin(): PluginOption {
 7 |   let phpServer: ChildProcess | undefined;
 8 | 
 9 |   return {
10 |     name: "php-server-plugin",
11 | 
12 |     apply: "serve",
13 | 
14 |     config() {
15 |       return {
16 |         server: {
17 |           proxy: {
18 |             "/php-tag": {
19 |               target: "http://localhost:8000",
20 |               changeOrigin: true,
21 |             },
22 |           },
23 |         },
24 |       };
25 |     },
26 | 
27 |     async configResolved(config) {
28 |       phpServer = spawn(
29 |         "php",
30 |         ["-S", "localhost:8000", config.root + "/index.php"],
31 |         {
32 |           stdio: "inherit",
33 |           shell: true,
34 |         },
35 |       );
36 |     },
37 | 
38 |     async buildEnd() {
39 |       if (phpServer) {
40 |         const pid = phpServer.pid;
41 |         if (pid) await killPort(8000);
42 |       }
43 |     },
44 |   };
45 | }
46 | 


--------------------------------------------------------------------------------
/examples/basic/readme.md:
--------------------------------------------------------------------------------
 1 | # `php-tag` Example
 2 | 
 3 | A simple `php-tag` example.
 4 | 
 5 | - [Client code](./client.mjs)
 6 | - [Server code](./index.php)
 7 | 
 8 | ## Getting started
 9 | 
10 | ```sh
11 | # Clone the example
12 | npx degit cyco130/php-tag/examples/basic php-tag-example
13 | # Install dependencies
14 | npm install
15 | # Run the example in development mode
16 | npm run dev
17 | 
18 | # Build the example
19 | npm run build
20 | # Preview the example
21 | npm run preview
22 | ```
23 | 


--------------------------------------------------------------------------------
/examples/basic/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "compilerOptions": {
 3 |     "target": "es2020",
 4 |     "module": "ESNext",
 5 |     "esModuleInterop": true,
 6 |     "forceConsistentCasingInFileNames": true,
 7 |     "strict": true,
 8 |     "skipLibCheck": true,
 9 |     "moduleResolution": "Node",
10 |     "resolveJsonModule": true
11 |   }
12 | }
13 | 


--------------------------------------------------------------------------------
/examples/basic/vite.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from "vite";
2 | import { phpTag } from "php-tag/vite-plugin";
3 | import { phpServerPlugin } from "./php-server-plugin";
4 | 
5 | export default defineConfig((env) => ({
6 |   plugins: [phpTag({ outputDir: "php-output" }), phpServerPlugin()],
7 | }));
8 | 


--------------------------------------------------------------------------------
/lint-staged.config.mjs:
--------------------------------------------------------------------------------
1 | export default {
2 |   "*": "prettier --ignore-unknown --write",
3 | };
4 | 


--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "name": "php-tag-workspace-root",
 3 |   "private": "true",
 4 |   "scripts": {
 5 |     "dev": "pnpm -r --parallel --filter \"./packages/*\" run dev",
 6 |     "build": "pnpm -r --filter \"./packages/*\" run build",
 7 |     "prepare": "husky install",
 8 |     "precommit": "lint-staged",
 9 |     "test": "pnpm run test:prettier && pnpm run test:packages && pnpm run ci",
10 |     "test:packages": "pnpm -r --stream run test",
11 |     "test:prettier": "prettier --check --ignore-path .gitignore --ignore-unknown . '!pnpm-lock.yaml'",
12 |     "format": "prettier --ignore-path .gitignore --ignore-unknown . '!pnpm-lock.yaml' --plugin @prettier/plugin-php --write"
13 |   },
14 |   "devDependencies": {
15 |     "husky": "^8.0.1",
16 |     "lint-staged": "^13.0.3",
17 |     "prettier": "^2.7.1",
18 |     "typescript": "^4.7.4"
19 |   },
20 |   "dependencies": {
21 |     "@prettier/plugin-php": "^0.18.9"
22 |   }
23 | }
24 | 


--------------------------------------------------------------------------------
/packages/php-tag/.eslintrc.cjs:
--------------------------------------------------------------------------------
 1 | require("@cyco130/eslint-config/patch");
 2 | 
 3 | module.exports = {
 4 |   root: true,
 5 |   extends: ["@cyco130/eslint-config/node"],
 6 |   parserOptions: { tsconfigRootDir: __dirname },
 7 |   settings: {
 8 |     "import/resolver": {
 9 |       typescript: {
10 |         project: [__dirname + "/tsconfig.json"],
11 |       },
12 |     },
13 |   },
14 | };
15 | 


--------------------------------------------------------------------------------
/packages/php-tag/lint-staged.config.mjs:
--------------------------------------------------------------------------------
1 | export default {
2 |   "**/*.ts?(x)": [
3 |     () => "tsc -p tsconfig.json --noEmit",
4 |     "eslint --max-warnings 0 --ignore-pattern dist",
5 |     "vitest related --run",
6 |   ],
7 |   "*": "prettier --ignore-unknown --write",
8 | };
9 | 


--------------------------------------------------------------------------------
/packages/php-tag/package.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "name": "php-tag",
 3 |   "version": "0.0.1",
 4 |   "type": "module",
 5 |   "files": [
 6 |     "dist"
 7 |   ],
 8 |   "exports": {
 9 |     ".": {
10 |       "import": "./dist/index.js",
11 |       "require": "./dist/index.cjs"
12 |     },
13 |     "./babel-plugin": {
14 |       "import": "./dist/babel-plugin.js",
15 |       "require": "./dist/babel-plugin.cjs"
16 |     },
17 |     "./vite-plugin": {
18 |       "import": "./dist/vite-plugin.js",
19 |       "require": "./dist/vite-plugin.cjs"
20 |     }
21 |   },
22 |   "typesVersions": {
23 |     "*": {
24 |       "*": [
25 |         "./dist/*.d.ts"
26 |       ]
27 |     }
28 |   },
29 |   "scripts": {
30 |     "build": "tsup",
31 |     "dev": "tsup --watch",
32 |     "prepack": "rm -rf dist && pnpm build",
33 |     "test": "pnpm test:typecheck && pnpm test:lint && pnpm test:unit && pnpm test:package",
34 |     "test:unit": "vitest run",
35 |     "test:typecheck": "tsc -p tsconfig.json --noEmit",
36 |     "test:lint": "eslint . --max-warnings 0 --ignore-pattern dist",
37 |     "test:package": "publint"
38 |   },
39 |   "description": "Write your backend PHP code in a JavaScript tagged template literal",
40 |   "license": "MIT",
41 |   "repository": "https://github.com/cyco130/php-tag",
42 |   "keywords": [
43 |     "php",
44 |     "rpc",
45 |     "babel-plugin"
46 |   ],
47 |   "dependencies": {
48 |     "@babel/core": "^7.18.9"
49 |   },
50 |   "devDependencies": {
51 |     "@babel/types": "^7.18.9",
52 |     "@cyco130/eslint-config": "^2.0.0",
53 |     "@types/babel__core": "^7.1.19",
54 |     "@types/node": "^18.0.3",
55 |     "eslint": "^8.19.0",
56 |     "publint": "^0.1.1",
57 |     "tsup": "^6.1.3",
58 |     "typescript": "^4.7.4",
59 |     "vite": "^3.0.4",
60 |     "vitest": "^0.17.1"
61 |   }
62 | }
63 | 


--------------------------------------------------------------------------------
/packages/php-tag/readme.md:
--------------------------------------------------------------------------------
 1 | # php-tag
 2 | 
 3 | Write your PHP backend code right inside your frontend JavaScript code using tagged template literals:
 4 | 
 5 | ```js
 6 | import { php } from "php-tag";
 7 | 
 8 | async function run() {
 9 |   // The return value is serialized to JSON and sent back
10 |   const hello = await php`return "Hello world!";`;
11 |   console.assert(hello === "Hello world!");
12 | 
13 |   // Interpolated values are serialized to JSON and sent to the backend
14 |   const sum = await php`return ${12} + ${30};`;
15 |   console.assert(sum === 42);
16 | }
17 | ```
18 | 
19 | ## Anticipated reactions
20 | 
21 | - **Oh the horror! Why? Just why?**
22 | 
23 |   Because I can :D
24 | 
25 | - **This is a terrible idea!**
26 | 
27 |   But colocation is good, isn't it? Like Next.js's `getServerSideProps` but for PHP backends. Is it _really_ that different? With some IDE support it could be pretty useful, methinks.
28 | 
29 |   Still not buying it? OK, neither am I.
30 | 
31 | - **Isn't it unsafe?**
32 | 
33 |   In production, it's no less safe than any other API endpoint. Just remember to treat interpolated values like any other user input and validate them.
34 | 
35 | ## Actual reactions
36 | 
37 | ![Reactions](https://github.com/cyco130/php-tag/raw/main/pics/reactions.png)
38 | 
39 | Interestingly the PHP community was more receptive thant the JavaScript community.
40 | 
41 | ## How does it work?
42 | 
43 | `php-tag` comes in the form of a Vite plugin (`php-tag/vite-plugin`). If you want to use with other tools, the underlying Babel transform (`php-tag/babel-plugin`) is also available.
44 | 
45 | For the production build, the Babel transform extracts each piece of PHP code into its own PHP file with a unique name. The client sends this name along with the interpolated arguments as a POST request with a JSON body to the `/php-tag` endpoint. The backend is supposed to provide a dispatcher at that endpoint that loads the requested PHP file and executes it with the arguments sent.
46 | 
47 | During development, the client sends the code itself instead of a file name and the backend just `eval`s it.
48 | 
49 | ## Getting started
50 | 
51 | ```sh
52 | # Clone the example
53 | npx degit cyco130/php-tag/examples/basic php-tag-example
54 | # Install dependencies
55 | npm install
56 | # Run the example in development mode
57 | npm run dev
58 | 
59 | # Build the example
60 | npm run build
61 | # Preview the example
62 | npm run preview
63 | ```
64 | 
65 | ## Future ideas
66 | 
67 | - [ ] IDE support
68 | - [ ] `python-tag`, `go-tag`, `java-tag` etc.
69 | - [ ] Customization options
70 | - [ ] More integration examples (Laravel, Symfony, etc.)
71 | 
72 | ## What about `node-tag`?
73 | 
74 | [It already exists](https://rakkasjs.org/guide/use-server-side-query) under the name `useServersideQuery` in a much more useful and type-safe form in Rakkas, a React metaframework with some cutting-edge features.
75 | 
76 | ## License
77 | 
78 | [MIT](./LICENSE)
79 | 


--------------------------------------------------------------------------------
/packages/php-tag/src/babel-plugin.test.ts:
--------------------------------------------------------------------------------
  1 | import { expect, it, vi } from "vitest";
  2 | import { transform } from "@babel/core";
  3 | import transformPhpTag from "./babel-plugin";
  4 | 
  5 | vi.mock("fs", () => ({
  6 |   default: {
  7 |     mkdirSync: vi.fn(),
  8 |     writeFileSync: vi.fn(),
  9 |   },
 10 | }));
 11 | 
 12 | it("converts to hashed code", async () => {
 13 |   const {
 14 |     default: { mkdirSync, writeFileSync },
 15 |   } = await import("fs");
 16 | 
 17 |   vi.mocked(mkdirSync).mockClear();
 18 |   vi.mocked(writeFileSync).mockClear();
 19 | 
 20 |   const output = transform(INPUT_1, {
 21 |     plugins: [[transformPhpTag, { outputDir: "output/dir" }]],
 22 |   });
 23 | 
 24 |   expect(output?.code).toMatchInlineSnapshot(`
 25 |     "import { php as p } from \\"php-tag\\";
 26 |     const param = 123;
 27 |     const template = p(\\"38bb2b63d62af9c7c67eb501f8a62cf79b03a80ebb5ebd24cd87c49f1ea675f3\\", param);"
 28 |   `);
 29 | 
 30 |   expect(mkdirSync).toHaveBeenCalledWith("output/dir", { recursive: true });
 31 |   expect(writeFileSync).toHaveBeenCalledWith(
 32 |     "output/dir/38bb2b63d62af9c7c67eb501f8a62cf79b03a80ebb5ebd24cd87c49f1ea675f3.php",
 33 |     " {
 38 |   const {
 39 |     default: { mkdirSync, writeFileSync },
 40 |   } = await import("fs");
 41 | 
 42 |   vi.mocked(mkdirSync).mockClear();
 43 |   vi.mocked(writeFileSync).mockClear();
 44 | 
 45 |   const output = transform(INPUT_2, {
 46 |     plugins: [[transformPhpTag, { outputDir: "output/dir" }]],
 47 |   });
 48 | 
 49 |   expect(output?.code).toMatchInlineSnapshot(`
 50 |     "import { php as p } from \\"other-module\\";
 51 |     const param = 123;
 52 |     const template = p\`return \${param} * 3;\`;"
 53 |   `);
 54 | 
 55 |   expect(mkdirSync).not.toHaveBeenCalled();
 56 |   expect(writeFileSync).not.toHaveBeenCalled();
 57 | });
 58 | 
 59 | it("unescapes backtick", async () => {
 60 |   const {
 61 |     default: { mkdirSync, writeFileSync },
 62 |   } = await import("fs");
 63 | 
 64 |   vi.mocked(mkdirSync).mockClear();
 65 |   vi.mocked(writeFileSync).mockClear();
 66 | 
 67 |   // @ts-expect-error: No types
 68 |   const input: string = await import("./fixtures/input.txt?raw").then(
 69 |     (x) => x.default,
 70 |   );
 71 | 
 72 |   // @ts-expect-error: No types
 73 |   const output: string = await import("./fixtures/output.txt?raw").then(
 74 |     (x) => x.default,
 75 |   );
 76 | 
 77 |   transform(input, {
 78 |     plugins: [[transformPhpTag, { outputDir: "output/dir" }]],
 79 |   });
 80 | 
 81 |   expect(writeFileSync).toHaveBeenCalledWith(
 82 |     "output/dir/8b477b7bf1773505fc472dccff5a7d4bb8f1c3305bb1289c0df4fd59515f4b7e.php",
 83 |     output,
 84 |   );
 85 | });
 86 | 
 87 | const INPUT_1 = `
 88 | 	import { php as p} from "php-tag";
 89 | 
 90 | 	const param = 123;
 91 | 
 92 | 	const template = p\`return \${param} * 3;\`;
 93 | `;
 94 | 
 95 | const INPUT_2 = `
 96 | 	import { php as p } from "other-module";
 97 | 
 98 | 	const param = 123;
 99 | 
100 | 	const template = p\`return \${param} * 3;\`;
101 | `;
102 | 


--------------------------------------------------------------------------------
/packages/php-tag/src/babel-plugin.ts:
--------------------------------------------------------------------------------
 1 | import type { PluginItem } from "@babel/core";
 2 | import type * as t from "@babel/types";
 3 | import { createHash } from "crypto";
 4 | import path from "path";
 5 | import fs from "fs";
 6 | 
 7 | interface TransformPhpTagOptions {
 8 |   outputDir?: string;
 9 | }
10 | 
11 | export default function transformPhpTag(
12 |   {
13 |     types: t,
14 |   }: {
15 |     types: typeof import("@babel/types");
16 |   },
17 |   options: TransformPhpTagOptions = {},
18 | ): PluginItem {
19 |   // console.log("Here");
20 |   const outputDir = options.outputDir || "output";
21 | 
22 |   return {
23 |     visitor: {
24 |       TaggedTemplateExpression: {
25 |         enter(template, state) {
26 |           const tag = template.node.tag;
27 |           if (tag.type !== "Identifier") return;
28 | 
29 |           const binding = template.parentPath.scope.getBinding(tag.name);
30 | 
31 |           if (
32 |             !binding ||
33 |             !binding.path.isImportSpecifier() ||
34 |             !(
35 |               (binding.path.node.imported.type === "Identifier" &&
36 |                 binding.path.node.imported.name === "php") ||
37 |               (binding.path.node.imported.type === "StringLiteral" &&
38 |                 binding.path.node.imported.value === "php")
39 |             ) ||
40 |             !binding.path.parentPath.isImportDeclaration() ||
41 |             binding.path.parentPath.node.source.value !== "php-tag"
42 |           ) {
43 |             return;
44 |           }
45 | 
46 |           const md5 = createHash("sha256");
47 |           let fnBody = "";
48 | 
49 |           for (const [i] of template.node.quasi.expressions.entries()) {
50 |             const segment = template.node.quasi.quasis[i].value.cooked;
51 |             fnBody += segment;
52 |             fnBody += `$_arg${i}`;
53 |           }
54 | 
55 |           fnBody +=
56 |             template.node.quasi.quasis[template.node.quasi.expressions.length]
57 |               .value.cooked;
58 | 
59 |           md5.update(fnBody);
60 |           const hash = md5.digest("hex");
61 | 
62 |           const outputPath = `${outputDir}/${hash}.php`;
63 | 
64 |           let generatedFromComment = " ";
65 |           if (state.file.opts.filename) {
66 |             generatedFromComment = `\n// Generated from ${path.relative(
67 |               state.file.opts.cwd,
68 |               state.file.opts.filename,
69 |             )}:${template.node.loc!.start.line}:${
70 |               template.node.loc!.start.column + 1
71 |             }\n`;
72 |           }
73 | 
74 |           const fileContent = ` `$_arg${i}`)
76 |             .join(",")}) {${fnBody}};`;
77 | 
78 |           // console.log("outputPath", outputPath);
79 |           fs.mkdirSync(path.dirname(outputPath), { recursive: true });
80 |           fs.writeFileSync(outputPath, fileContent);
81 | 
82 |           template.replaceWith(
83 |             t.callExpression(tag, [
84 |               t.stringLiteral(hash),
85 |               ...(template.node.quasi.expressions as t.Expression[]),
86 |             ]),
87 |           );
88 |         },
89 |       },
90 |     },
91 |   };
92 | }
93 | 


--------------------------------------------------------------------------------
/packages/php-tag/src/fixtures/input.txt:
--------------------------------------------------------------------------------
1 | import { php } from "php-tag";
2 | 
3 | const template = php`return "\`\\n\`";`;
4 | 


--------------------------------------------------------------------------------
/packages/php-tag/src/fixtures/output.txt:
--------------------------------------------------------------------------------
1 |  {
 6 |   return fetch("/php-tag", {
 7 |     method: "POST",
 8 |     headers: {
 9 |       "Content-Type": "application/json",
10 |     },
11 |     body: JSON.stringify({
12 |       selector: strings,
13 |       args: values,
14 |     }),
15 |   }).then((res) => {
16 |     if (!res.ok) {
17 |       throw new Error(res.statusText);
18 |     }
19 | 
20 |     return res.json();
21 |   });
22 | }
23 | 


--------------------------------------------------------------------------------
/packages/php-tag/src/vite-plugin.ts:
--------------------------------------------------------------------------------
 1 | import { PluginOption } from "vite";
 2 | import { transformAsync } from "@babel/core";
 3 | import transformPhpTag from "./babel-plugin";
 4 | 
 5 | export interface PhpTagPluginOptions {
 6 |   outputDir?: string;
 7 | }
 8 | 
 9 | export function phpTag(options: PhpTagPluginOptions = {}): PluginOption {
10 |   return {
11 |     name: "mini-babel-transform-plugin",
12 | 
13 |     apply: "build",
14 | 
15 |     async transform(code, id) {
16 |       const [filepath, querystring = ""] = id.split("?");
17 |       if (!querystring.match(jsExtensionRE) && !filepath.match(jsExtensionRE)) {
18 |         return;
19 |       }
20 | 
21 |       // Quick test to skip unnecessary transforms
22 |       if (!code.match(/\bphp\s*`/) || !code.match(/\bphp-tag\b/)) {
23 |         return;
24 |       }
25 | 
26 |       const transformed = await transformAsync(code, {
27 |         configFile: false,
28 |         filename: id,
29 |         plugins: [[transformPhpTag, options]],
30 |       });
31 | 
32 |       if (!transformed?.code) {
33 |         throw new Error("Failed to transform code");
34 |       }
35 | 
36 |       return {
37 |         code: transformed.code,
38 |       };
39 |     },
40 |   };
41 | }
42 | 
43 | const jsExtensionRE = /\.m?[jt]sx?$/;
44 | 


--------------------------------------------------------------------------------
/packages/php-tag/tsconfig.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "compilerOptions": {
 3 |     "target": "es2020",
 4 |     "module": "ESNext",
 5 |     "esModuleInterop": true,
 6 |     "forceConsistentCasingInFileNames": true,
 7 |     "strict": true,
 8 |     "skipLibCheck": true,
 9 |     "moduleResolution": "Node",
10 |     "resolveJsonModule": true
11 |   }
12 | }
13 | 


--------------------------------------------------------------------------------
/packages/php-tag/tsup.config.ts:
--------------------------------------------------------------------------------
 1 | import { defineConfig } from "tsup";
 2 | 
 3 | export default defineConfig([
 4 |   {
 5 |     entry: ["./src/index.ts", "./src/babel-plugin.ts", "./src/vite-plugin.ts"],
 6 |     format: ["esm", "cjs"],
 7 |     platform: "node",
 8 |     target: "node14",
 9 |     dts: true,
10 |   },
11 | ]);
12 | 


--------------------------------------------------------------------------------
/pics/reactions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cyco130/php-tag/50dbb9ae040e8169b48b97848d96ec4eb384e623/pics/reactions.png


--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
   1 | lockfileVersion: 5.4
   2 | 
   3 | importers:
   4 |   .:
   5 |     specifiers:
   6 |       "@prettier/plugin-php": ^0.18.9
   7 |       husky: ^8.0.1
   8 |       lint-staged: ^13.0.3
   9 |       prettier: ^2.7.1
  10 |       typescript: ^4.7.4
  11 |     dependencies:
  12 |       "@prettier/plugin-php": 0.18.9_prettier@2.7.1
  13 |     devDependencies:
  14 |       husky: 8.0.1
  15 |       lint-staged: 13.0.3
  16 |       prettier: 2.7.1
  17 |       typescript: 4.7.4
  18 | 
  19 |   examples/basic:
  20 |     specifiers:
  21 |       "@types/node": ^18.0.3
  22 |       cross-env: ^7.0.3
  23 |       kill-port: ^2.0.1
  24 |       php-tag: 0.0.1
  25 |       vite: ^3.0.4
  26 |     dependencies:
  27 |       php-tag: link:../../packages/php-tag
  28 |     devDependencies:
  29 |       "@types/node": 18.0.3
  30 |       cross-env: 7.0.3
  31 |       kill-port: 2.0.1
  32 |       vite: 3.0.4
  33 | 
  34 |   packages/php-tag:
  35 |     specifiers:
  36 |       "@babel/core": ^7.18.9
  37 |       "@babel/types": ^7.18.9
  38 |       "@cyco130/eslint-config": ^2.0.0
  39 |       "@types/babel__core": ^7.1.19
  40 |       "@types/node": ^18.0.3
  41 |       eslint: ^8.19.0
  42 |       publint: ^0.1.1
  43 |       tsup: ^6.1.3
  44 |       typescript: ^4.7.4
  45 |       vite: ^3.0.4
  46 |       vitest: ^0.17.1
  47 |     dependencies:
  48 |       "@babel/core": 7.18.9
  49 |     devDependencies:
  50 |       "@babel/types": 7.18.9
  51 |       "@cyco130/eslint-config": 2.0.0_4x5o4skxv6sl53vpwefgt23khm
  52 |       "@types/babel__core": 7.1.19
  53 |       "@types/node": 18.0.3
  54 |       eslint: 8.19.0
  55 |       publint: 0.1.1
  56 |       tsup: 6.1.3_typescript@4.7.4
  57 |       typescript: 4.7.4
  58 |       vite: 3.0.4
  59 |       vitest: 0.17.1
  60 | 
  61 | packages:
  62 |   /@ampproject/remapping/2.2.0:
  63 |     resolution:
  64 |       {
  65 |         integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==,
  66 |       }
  67 |     engines: { node: ">=6.0.0" }
  68 |     dependencies:
  69 |       "@jridgewell/gen-mapping": 0.1.1
  70 |       "@jridgewell/trace-mapping": 0.3.14
  71 |     dev: false
  72 | 
  73 |   /@babel/code-frame/7.18.6:
  74 |     resolution:
  75 |       {
  76 |         integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==,
  77 |       }
  78 |     engines: { node: ">=6.9.0" }
  79 |     dependencies:
  80 |       "@babel/highlight": 7.18.6
  81 |     dev: false
  82 | 
  83 |   /@babel/compat-data/7.18.8:
  84 |     resolution:
  85 |       {
  86 |         integrity: sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ==,
  87 |       }
  88 |     engines: { node: ">=6.9.0" }
  89 |     dev: false
  90 | 
  91 |   /@babel/core/7.18.9:
  92 |     resolution:
  93 |       {
  94 |         integrity: sha512-1LIb1eL8APMy91/IMW+31ckrfBM4yCoLaVzoDhZUKSM4cu1L1nIidyxkCgzPAgrC5WEz36IPEr/eSeSF9pIn+g==,
  95 |       }
  96 |     engines: { node: ">=6.9.0" }
  97 |     dependencies:
  98 |       "@ampproject/remapping": 2.2.0
  99 |       "@babel/code-frame": 7.18.6
 100 |       "@babel/generator": 7.18.9
 101 |       "@babel/helper-compilation-targets": 7.18.9_@babel+core@7.18.9
 102 |       "@babel/helper-module-transforms": 7.18.9
 103 |       "@babel/helpers": 7.18.9
 104 |       "@babel/parser": 7.18.9
 105 |       "@babel/template": 7.18.6
 106 |       "@babel/traverse": 7.18.9
 107 |       "@babel/types": 7.18.9
 108 |       convert-source-map: 1.8.0
 109 |       debug: 4.3.4
 110 |       gensync: 1.0.0-beta.2
 111 |       json5: 2.2.1
 112 |       semver: 6.3.0
 113 |     transitivePeerDependencies:
 114 |       - supports-color
 115 |     dev: false
 116 | 
 117 |   /@babel/generator/7.18.9:
 118 |     resolution:
 119 |       {
 120 |         integrity: sha512-wt5Naw6lJrL1/SGkipMiFxJjtyczUWTP38deiP1PO60HsBjDeKk08CGC3S8iVuvf0FmTdgKwU1KIXzSKL1G0Ug==,
 121 |       }
 122 |     engines: { node: ">=6.9.0" }
 123 |     dependencies:
 124 |       "@babel/types": 7.18.9
 125 |       "@jridgewell/gen-mapping": 0.3.2
 126 |       jsesc: 2.5.2
 127 |     dev: false
 128 | 
 129 |   /@babel/helper-compilation-targets/7.18.9_@babel+core@7.18.9:
 130 |     resolution:
 131 |       {
 132 |         integrity: sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==,
 133 |       }
 134 |     engines: { node: ">=6.9.0" }
 135 |     peerDependencies:
 136 |       "@babel/core": ^7.0.0
 137 |     dependencies:
 138 |       "@babel/compat-data": 7.18.8
 139 |       "@babel/core": 7.18.9
 140 |       "@babel/helper-validator-option": 7.18.6
 141 |       browserslist: 4.21.3
 142 |       semver: 6.3.0
 143 |     dev: false
 144 | 
 145 |   /@babel/helper-environment-visitor/7.18.9:
 146 |     resolution:
 147 |       {
 148 |         integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==,
 149 |       }
 150 |     engines: { node: ">=6.9.0" }
 151 |     dev: false
 152 | 
 153 |   /@babel/helper-function-name/7.18.9:
 154 |     resolution:
 155 |       {
 156 |         integrity: sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==,
 157 |       }
 158 |     engines: { node: ">=6.9.0" }
 159 |     dependencies:
 160 |       "@babel/template": 7.18.6
 161 |       "@babel/types": 7.18.9
 162 |     dev: false
 163 | 
 164 |   /@babel/helper-hoist-variables/7.18.6:
 165 |     resolution:
 166 |       {
 167 |         integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==,
 168 |       }
 169 |     engines: { node: ">=6.9.0" }
 170 |     dependencies:
 171 |       "@babel/types": 7.18.9
 172 |     dev: false
 173 | 
 174 |   /@babel/helper-module-imports/7.18.6:
 175 |     resolution:
 176 |       {
 177 |         integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==,
 178 |       }
 179 |     engines: { node: ">=6.9.0" }
 180 |     dependencies:
 181 |       "@babel/types": 7.18.9
 182 |     dev: false
 183 | 
 184 |   /@babel/helper-module-transforms/7.18.9:
 185 |     resolution:
 186 |       {
 187 |         integrity: sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==,
 188 |       }
 189 |     engines: { node: ">=6.9.0" }
 190 |     dependencies:
 191 |       "@babel/helper-environment-visitor": 7.18.9
 192 |       "@babel/helper-module-imports": 7.18.6
 193 |       "@babel/helper-simple-access": 7.18.6
 194 |       "@babel/helper-split-export-declaration": 7.18.6
 195 |       "@babel/helper-validator-identifier": 7.18.6
 196 |       "@babel/template": 7.18.6
 197 |       "@babel/traverse": 7.18.9
 198 |       "@babel/types": 7.18.9
 199 |     transitivePeerDependencies:
 200 |       - supports-color
 201 |     dev: false
 202 | 
 203 |   /@babel/helper-simple-access/7.18.6:
 204 |     resolution:
 205 |       {
 206 |         integrity: sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==,
 207 |       }
 208 |     engines: { node: ">=6.9.0" }
 209 |     dependencies:
 210 |       "@babel/types": 7.18.9
 211 |     dev: false
 212 | 
 213 |   /@babel/helper-split-export-declaration/7.18.6:
 214 |     resolution:
 215 |       {
 216 |         integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==,
 217 |       }
 218 |     engines: { node: ">=6.9.0" }
 219 |     dependencies:
 220 |       "@babel/types": 7.18.9
 221 |     dev: false
 222 | 
 223 |   /@babel/helper-validator-identifier/7.18.6:
 224 |     resolution:
 225 |       {
 226 |         integrity: sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==,
 227 |       }
 228 |     engines: { node: ">=6.9.0" }
 229 | 
 230 |   /@babel/helper-validator-option/7.18.6:
 231 |     resolution:
 232 |       {
 233 |         integrity: sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==,
 234 |       }
 235 |     engines: { node: ">=6.9.0" }
 236 |     dev: false
 237 | 
 238 |   /@babel/helpers/7.18.9:
 239 |     resolution:
 240 |       {
 241 |         integrity: sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==,
 242 |       }
 243 |     engines: { node: ">=6.9.0" }
 244 |     dependencies:
 245 |       "@babel/template": 7.18.6
 246 |       "@babel/traverse": 7.18.9
 247 |       "@babel/types": 7.18.9
 248 |     transitivePeerDependencies:
 249 |       - supports-color
 250 |     dev: false
 251 | 
 252 |   /@babel/highlight/7.18.6:
 253 |     resolution:
 254 |       {
 255 |         integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==,
 256 |       }
 257 |     engines: { node: ">=6.9.0" }
 258 |     dependencies:
 259 |       "@babel/helper-validator-identifier": 7.18.6
 260 |       chalk: 2.4.2
 261 |       js-tokens: 4.0.0
 262 |     dev: false
 263 | 
 264 |   /@babel/parser/7.18.9:
 265 |     resolution:
 266 |       {
 267 |         integrity: sha512-9uJveS9eY9DJ0t64YbIBZICtJy8a5QrDEVdiLCG97fVLpDTpGX7t8mMSb6OWw6Lrnjqj4O8zwjELX3dhoMgiBg==,
 268 |       }
 269 |     engines: { node: ">=6.0.0" }
 270 |     hasBin: true
 271 |     dependencies:
 272 |       "@babel/types": 7.18.9
 273 | 
 274 |   /@babel/template/7.18.6:
 275 |     resolution:
 276 |       {
 277 |         integrity: sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==,
 278 |       }
 279 |     engines: { node: ">=6.9.0" }
 280 |     dependencies:
 281 |       "@babel/code-frame": 7.18.6
 282 |       "@babel/parser": 7.18.9
 283 |       "@babel/types": 7.18.9
 284 |     dev: false
 285 | 
 286 |   /@babel/traverse/7.18.9:
 287 |     resolution:
 288 |       {
 289 |         integrity: sha512-LcPAnujXGwBgv3/WHv01pHtb2tihcyW1XuL9wd7jqh1Z8AQkTd+QVjMrMijrln0T7ED3UXLIy36P9Ao7W75rYg==,
 290 |       }
 291 |     engines: { node: ">=6.9.0" }
 292 |     dependencies:
 293 |       "@babel/code-frame": 7.18.6
 294 |       "@babel/generator": 7.18.9
 295 |       "@babel/helper-environment-visitor": 7.18.9
 296 |       "@babel/helper-function-name": 7.18.9
 297 |       "@babel/helper-hoist-variables": 7.18.6
 298 |       "@babel/helper-split-export-declaration": 7.18.6
 299 |       "@babel/parser": 7.18.9
 300 |       "@babel/types": 7.18.9
 301 |       debug: 4.3.4
 302 |       globals: 11.12.0
 303 |     transitivePeerDependencies:
 304 |       - supports-color
 305 |     dev: false
 306 | 
 307 |   /@babel/types/7.18.9:
 308 |     resolution:
 309 |       {
 310 |         integrity: sha512-WwMLAg2MvJmt/rKEVQBBhIVffMmnilX4oe0sRe7iPOHIGsqpruFHHdrfj4O1CMMtgMtCU4oPafZjDPCRgO57Wg==,
 311 |       }
 312 |     engines: { node: ">=6.9.0" }
 313 |     dependencies:
 314 |       "@babel/helper-validator-identifier": 7.18.6
 315 |       to-fast-properties: 2.0.0
 316 | 
 317 |   /@cyco130/eslint-config/2.0.0_4x5o4skxv6sl53vpwefgt23khm:
 318 |     resolution:
 319 |       {
 320 |         integrity: sha512-0jkrpRhxoPtTEXfD5vl+Xkom0v3gWc7hJh3oKR9cFke6uQ0BPSz2gowY9wS5dWIQYOc7EO30MpuJsmOPpBWadg==,
 321 |       }
 322 |     peerDependencies:
 323 |       eslint: ^8.7.0
 324 |       typescript: ^4.5.4
 325 |     dependencies:
 326 |       "@rushstack/eslint-patch": 1.1.4
 327 |       "@typescript-eslint/eslint-plugin": 5.30.5_6zdoc3rn4mpiddqwhppni2mnnm
 328 |       "@typescript-eslint/parser": 5.30.5_4x5o4skxv6sl53vpwefgt23khm
 329 |       eslint: 8.19.0
 330 |       eslint-config-prettier: 8.5.0_eslint@8.19.0
 331 |       eslint-import-resolver-typescript: 2.7.1_q2xwze32dd33a2fc2qubwr4ie4
 332 |       eslint-plugin-css-modules: 2.11.0_eslint@8.19.0
 333 |       eslint-plugin-import: 2.26.0_6o2fuefo7gfpbr7nbqwgu7w4mq
 334 |       eslint-plugin-no-only-tests: 2.6.0
 335 |       eslint-plugin-only-warn: 1.0.3
 336 |       eslint-plugin-react: 7.30.1_eslint@8.19.0
 337 |       eslint-plugin-react-hooks: 4.6.0_eslint@8.19.0
 338 |       eslint-plugin-ssr-friendly: 1.0.6_eslint@8.19.0
 339 |       typescript: 4.7.4
 340 |     transitivePeerDependencies:
 341 |       - eslint-import-resolver-webpack
 342 |       - supports-color
 343 |     dev: true
 344 | 
 345 |   /@eslint/eslintrc/1.3.0:
 346 |     resolution:
 347 |       {
 348 |         integrity: sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==,
 349 |       }
 350 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
 351 |     dependencies:
 352 |       ajv: 6.12.6
 353 |       debug: 4.3.4
 354 |       espree: 9.3.2
 355 |       globals: 13.16.0
 356 |       ignore: 5.2.0
 357 |       import-fresh: 3.3.0
 358 |       js-yaml: 4.1.0
 359 |       minimatch: 3.1.2
 360 |       strip-json-comments: 3.1.1
 361 |     transitivePeerDependencies:
 362 |       - supports-color
 363 |     dev: true
 364 | 
 365 |   /@humanwhocodes/config-array/0.9.5:
 366 |     resolution:
 367 |       {
 368 |         integrity: sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==,
 369 |       }
 370 |     engines: { node: ">=10.10.0" }
 371 |     dependencies:
 372 |       "@humanwhocodes/object-schema": 1.2.1
 373 |       debug: 4.3.4
 374 |       minimatch: 3.1.2
 375 |     transitivePeerDependencies:
 376 |       - supports-color
 377 |     dev: true
 378 | 
 379 |   /@humanwhocodes/object-schema/1.2.1:
 380 |     resolution:
 381 |       {
 382 |         integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==,
 383 |       }
 384 |     dev: true
 385 | 
 386 |   /@jridgewell/gen-mapping/0.1.1:
 387 |     resolution:
 388 |       {
 389 |         integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==,
 390 |       }
 391 |     engines: { node: ">=6.0.0" }
 392 |     dependencies:
 393 |       "@jridgewell/set-array": 1.1.2
 394 |       "@jridgewell/sourcemap-codec": 1.4.14
 395 |     dev: false
 396 | 
 397 |   /@jridgewell/gen-mapping/0.3.2:
 398 |     resolution:
 399 |       {
 400 |         integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==,
 401 |       }
 402 |     engines: { node: ">=6.0.0" }
 403 |     dependencies:
 404 |       "@jridgewell/set-array": 1.1.2
 405 |       "@jridgewell/sourcemap-codec": 1.4.14
 406 |       "@jridgewell/trace-mapping": 0.3.14
 407 |     dev: false
 408 | 
 409 |   /@jridgewell/resolve-uri/3.1.0:
 410 |     resolution:
 411 |       {
 412 |         integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==,
 413 |       }
 414 |     engines: { node: ">=6.0.0" }
 415 |     dev: false
 416 | 
 417 |   /@jridgewell/set-array/1.1.2:
 418 |     resolution:
 419 |       {
 420 |         integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==,
 421 |       }
 422 |     engines: { node: ">=6.0.0" }
 423 |     dev: false
 424 | 
 425 |   /@jridgewell/sourcemap-codec/1.4.14:
 426 |     resolution:
 427 |       {
 428 |         integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==,
 429 |       }
 430 |     dev: false
 431 | 
 432 |   /@jridgewell/trace-mapping/0.3.14:
 433 |     resolution:
 434 |       {
 435 |         integrity: sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==,
 436 |       }
 437 |     dependencies:
 438 |       "@jridgewell/resolve-uri": 3.1.0
 439 |       "@jridgewell/sourcemap-codec": 1.4.14
 440 |     dev: false
 441 | 
 442 |   /@nodelib/fs.scandir/2.1.5:
 443 |     resolution:
 444 |       {
 445 |         integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==,
 446 |       }
 447 |     engines: { node: ">= 8" }
 448 |     dependencies:
 449 |       "@nodelib/fs.stat": 2.0.5
 450 |       run-parallel: 1.2.0
 451 |     dev: true
 452 | 
 453 |   /@nodelib/fs.stat/2.0.5:
 454 |     resolution:
 455 |       {
 456 |         integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==,
 457 |       }
 458 |     engines: { node: ">= 8" }
 459 |     dev: true
 460 | 
 461 |   /@nodelib/fs.walk/1.2.8:
 462 |     resolution:
 463 |       {
 464 |         integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==,
 465 |       }
 466 |     engines: { node: ">= 8" }
 467 |     dependencies:
 468 |       "@nodelib/fs.scandir": 2.1.5
 469 |       fastq: 1.13.0
 470 |     dev: true
 471 | 
 472 |   /@prettier/plugin-php/0.18.9_prettier@2.7.1:
 473 |     resolution:
 474 |       {
 475 |         integrity: sha512-d1uE9v3JsQ9uBLWlssZhO02RLI8u8jRBFPCO5ud4VbveCpSZbDRnGpSuK3IqSWHdM/OnuySz0yWr5M9/9mINvw==,
 476 |       }
 477 |     peerDependencies:
 478 |       prettier: ^1.15.0 || ^2.0.0
 479 |     dependencies:
 480 |       linguist-languages: 7.21.0
 481 |       mem: 8.1.1
 482 |       php-parser: 3.1.0-beta.11
 483 |       prettier: 2.7.1
 484 |     dev: false
 485 | 
 486 |   /@rushstack/eslint-patch/1.1.4:
 487 |     resolution:
 488 |       {
 489 |         integrity: sha512-LwzQKA4vzIct1zNZzBmRKI9QuNpLgTQMEjsQLf3BXuGYb3QPTP4Yjf6mkdX+X1mYttZ808QpOwAzZjv28kq7DA==,
 490 |       }
 491 |     dev: true
 492 | 
 493 |   /@types/babel__core/7.1.19:
 494 |     resolution:
 495 |       {
 496 |         integrity: sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==,
 497 |       }
 498 |     dependencies:
 499 |       "@babel/parser": 7.18.9
 500 |       "@babel/types": 7.18.9
 501 |       "@types/babel__generator": 7.6.4
 502 |       "@types/babel__template": 7.4.1
 503 |       "@types/babel__traverse": 7.17.1
 504 |     dev: true
 505 | 
 506 |   /@types/babel__generator/7.6.4:
 507 |     resolution:
 508 |       {
 509 |         integrity: sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==,
 510 |       }
 511 |     dependencies:
 512 |       "@babel/types": 7.18.9
 513 |     dev: true
 514 | 
 515 |   /@types/babel__template/7.4.1:
 516 |     resolution:
 517 |       {
 518 |         integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==,
 519 |       }
 520 |     dependencies:
 521 |       "@babel/parser": 7.18.9
 522 |       "@babel/types": 7.18.9
 523 |     dev: true
 524 | 
 525 |   /@types/babel__traverse/7.17.1:
 526 |     resolution:
 527 |       {
 528 |         integrity: sha512-kVzjari1s2YVi77D3w1yuvohV2idweYXMCDzqBiVNN63TcDWrIlTVOYpqVrvbbyOE/IyzBoTKF0fdnLPEORFxA==,
 529 |       }
 530 |     dependencies:
 531 |       "@babel/types": 7.18.9
 532 |     dev: true
 533 | 
 534 |   /@types/chai-subset/1.3.3:
 535 |     resolution:
 536 |       {
 537 |         integrity: sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==,
 538 |       }
 539 |     dependencies:
 540 |       "@types/chai": 4.3.1
 541 |     dev: true
 542 | 
 543 |   /@types/chai/4.3.1:
 544 |     resolution:
 545 |       {
 546 |         integrity: sha512-/zPMqDkzSZ8t3VtxOa4KPq7uzzW978M9Tvh+j7GHKuo6k6GTLxPJ4J5gE5cjfJ26pnXst0N5Hax8Sr0T2Mi9zQ==,
 547 |       }
 548 |     dev: true
 549 | 
 550 |   /@types/json-schema/7.0.11:
 551 |     resolution:
 552 |       {
 553 |         integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==,
 554 |       }
 555 |     dev: true
 556 | 
 557 |   /@types/json5/0.0.29:
 558 |     resolution:
 559 |       {
 560 |         integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==,
 561 |       }
 562 |     dev: true
 563 | 
 564 |   /@types/node/18.0.3:
 565 |     resolution:
 566 |       {
 567 |         integrity: sha512-HzNRZtp4eepNitP+BD6k2L6DROIDG4Q0fm4x+dwfsr6LGmROENnok75VGw40628xf+iR24WeMFcHuuBDUAzzsQ==,
 568 |       }
 569 |     dev: true
 570 | 
 571 |   /@typescript-eslint/eslint-plugin/5.30.5_6zdoc3rn4mpiddqwhppni2mnnm:
 572 |     resolution:
 573 |       {
 574 |         integrity: sha512-lftkqRoBvc28VFXEoRgyZuztyVUQ04JvUnATSPtIRFAccbXTWL6DEtXGYMcbg998kXw1NLUJm7rTQ9eUt+q6Ig==,
 575 |       }
 576 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
 577 |     peerDependencies:
 578 |       "@typescript-eslint/parser": ^5.0.0
 579 |       eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
 580 |       typescript: "*"
 581 |     peerDependenciesMeta:
 582 |       typescript:
 583 |         optional: true
 584 |     dependencies:
 585 |       "@typescript-eslint/parser": 5.30.5_4x5o4skxv6sl53vpwefgt23khm
 586 |       "@typescript-eslint/scope-manager": 5.30.5
 587 |       "@typescript-eslint/type-utils": 5.30.5_4x5o4skxv6sl53vpwefgt23khm
 588 |       "@typescript-eslint/utils": 5.30.5_4x5o4skxv6sl53vpwefgt23khm
 589 |       debug: 4.3.4
 590 |       eslint: 8.19.0
 591 |       functional-red-black-tree: 1.0.1
 592 |       ignore: 5.2.0
 593 |       regexpp: 3.2.0
 594 |       semver: 7.3.7
 595 |       tsutils: 3.21.0_typescript@4.7.4
 596 |       typescript: 4.7.4
 597 |     transitivePeerDependencies:
 598 |       - supports-color
 599 |     dev: true
 600 | 
 601 |   /@typescript-eslint/parser/5.30.5_4x5o4skxv6sl53vpwefgt23khm:
 602 |     resolution:
 603 |       {
 604 |         integrity: sha512-zj251pcPXI8GO9NDKWWmygP6+UjwWmrdf9qMW/L/uQJBM/0XbU2inxe5io/234y/RCvwpKEYjZ6c1YrXERkK4Q==,
 605 |       }
 606 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
 607 |     peerDependencies:
 608 |       eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
 609 |       typescript: "*"
 610 |     peerDependenciesMeta:
 611 |       typescript:
 612 |         optional: true
 613 |     dependencies:
 614 |       "@typescript-eslint/scope-manager": 5.30.5
 615 |       "@typescript-eslint/types": 5.30.5
 616 |       "@typescript-eslint/typescript-estree": 5.30.5_typescript@4.7.4
 617 |       debug: 4.3.4
 618 |       eslint: 8.19.0
 619 |       typescript: 4.7.4
 620 |     transitivePeerDependencies:
 621 |       - supports-color
 622 |     dev: true
 623 | 
 624 |   /@typescript-eslint/scope-manager/5.30.5:
 625 |     resolution:
 626 |       {
 627 |         integrity: sha512-NJ6F+YHHFT/30isRe2UTmIGGAiXKckCyMnIV58cE3JkHmaD6e5zyEYm5hBDv0Wbin+IC0T1FWJpD3YqHUG/Ydg==,
 628 |       }
 629 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
 630 |     dependencies:
 631 |       "@typescript-eslint/types": 5.30.5
 632 |       "@typescript-eslint/visitor-keys": 5.30.5
 633 |     dev: true
 634 | 
 635 |   /@typescript-eslint/type-utils/5.30.5_4x5o4skxv6sl53vpwefgt23khm:
 636 |     resolution:
 637 |       {
 638 |         integrity: sha512-k9+ejlv1GgwN1nN7XjVtyCgE0BTzhzT1YsQF0rv4Vfj2U9xnslBgMYYvcEYAFVdvhuEscELJsB7lDkN7WusErw==,
 639 |       }
 640 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
 641 |     peerDependencies:
 642 |       eslint: "*"
 643 |       typescript: "*"
 644 |     peerDependenciesMeta:
 645 |       typescript:
 646 |         optional: true
 647 |     dependencies:
 648 |       "@typescript-eslint/utils": 5.30.5_4x5o4skxv6sl53vpwefgt23khm
 649 |       debug: 4.3.4
 650 |       eslint: 8.19.0
 651 |       tsutils: 3.21.0_typescript@4.7.4
 652 |       typescript: 4.7.4
 653 |     transitivePeerDependencies:
 654 |       - supports-color
 655 |     dev: true
 656 | 
 657 |   /@typescript-eslint/types/5.30.5:
 658 |     resolution:
 659 |       {
 660 |         integrity: sha512-kZ80w/M2AvsbRvOr3PjaNh6qEW1LFqs2pLdo2s5R38B2HYXG8Z0PP48/4+j1QHJFL3ssHIbJ4odPRS8PlHrFfw==,
 661 |       }
 662 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
 663 |     dev: true
 664 | 
 665 |   /@typescript-eslint/typescript-estree/5.30.5_typescript@4.7.4:
 666 |     resolution:
 667 |       {
 668 |         integrity: sha512-qGTc7QZC801kbYjAr4AgdOfnokpwStqyhSbiQvqGBLixniAKyH+ib2qXIVo4P9NgGzwyfD9I0nlJN7D91E1VpQ==,
 669 |       }
 670 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
 671 |     peerDependencies:
 672 |       typescript: "*"
 673 |     peerDependenciesMeta:
 674 |       typescript:
 675 |         optional: true
 676 |     dependencies:
 677 |       "@typescript-eslint/types": 5.30.5
 678 |       "@typescript-eslint/visitor-keys": 5.30.5
 679 |       debug: 4.3.4
 680 |       globby: 11.1.0
 681 |       is-glob: 4.0.3
 682 |       semver: 7.3.7
 683 |       tsutils: 3.21.0_typescript@4.7.4
 684 |       typescript: 4.7.4
 685 |     transitivePeerDependencies:
 686 |       - supports-color
 687 |     dev: true
 688 | 
 689 |   /@typescript-eslint/utils/5.30.5_4x5o4skxv6sl53vpwefgt23khm:
 690 |     resolution:
 691 |       {
 692 |         integrity: sha512-o4SSUH9IkuA7AYIfAvatldovurqTAHrfzPApOZvdUq01hHojZojCFXx06D/aFpKCgWbMPRdJBWAC3sWp3itwTA==,
 693 |       }
 694 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
 695 |     peerDependencies:
 696 |       eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
 697 |     dependencies:
 698 |       "@types/json-schema": 7.0.11
 699 |       "@typescript-eslint/scope-manager": 5.30.5
 700 |       "@typescript-eslint/types": 5.30.5
 701 |       "@typescript-eslint/typescript-estree": 5.30.5_typescript@4.7.4
 702 |       eslint: 8.19.0
 703 |       eslint-scope: 5.1.1
 704 |       eslint-utils: 3.0.0_eslint@8.19.0
 705 |     transitivePeerDependencies:
 706 |       - supports-color
 707 |       - typescript
 708 |     dev: true
 709 | 
 710 |   /@typescript-eslint/visitor-keys/5.30.5:
 711 |     resolution:
 712 |       {
 713 |         integrity: sha512-D+xtGo9HUMELzWIUqcQc0p2PO4NyvTrgIOK/VnSH083+8sq0tiLozNRKuLarwHYGRuA6TVBQSuuLwJUDWd3aaA==,
 714 |       }
 715 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
 716 |     dependencies:
 717 |       "@typescript-eslint/types": 5.30.5
 718 |       eslint-visitor-keys: 3.3.0
 719 |     dev: true
 720 | 
 721 |   /acorn-jsx/5.3.2_acorn@8.7.1:
 722 |     resolution:
 723 |       {
 724 |         integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==,
 725 |       }
 726 |     peerDependencies:
 727 |       acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
 728 |     dependencies:
 729 |       acorn: 8.7.1
 730 |     dev: true
 731 | 
 732 |   /acorn/8.7.1:
 733 |     resolution:
 734 |       {
 735 |         integrity: sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==,
 736 |       }
 737 |     engines: { node: ">=0.4.0" }
 738 |     hasBin: true
 739 |     dev: true
 740 | 
 741 |   /aggregate-error/3.1.0:
 742 |     resolution:
 743 |       {
 744 |         integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==,
 745 |       }
 746 |     engines: { node: ">=8" }
 747 |     dependencies:
 748 |       clean-stack: 2.2.0
 749 |       indent-string: 4.0.0
 750 |     dev: true
 751 | 
 752 |   /ajv/6.12.6:
 753 |     resolution:
 754 |       {
 755 |         integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==,
 756 |       }
 757 |     dependencies:
 758 |       fast-deep-equal: 3.1.3
 759 |       fast-json-stable-stringify: 2.1.0
 760 |       json-schema-traverse: 0.4.1
 761 |       uri-js: 4.4.1
 762 |     dev: true
 763 | 
 764 |   /ansi-escapes/4.3.2:
 765 |     resolution:
 766 |       {
 767 |         integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==,
 768 |       }
 769 |     engines: { node: ">=8" }
 770 |     dependencies:
 771 |       type-fest: 0.21.3
 772 |     dev: true
 773 | 
 774 |   /ansi-regex/5.0.1:
 775 |     resolution:
 776 |       {
 777 |         integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==,
 778 |       }
 779 |     engines: { node: ">=8" }
 780 |     dev: true
 781 | 
 782 |   /ansi-regex/6.0.1:
 783 |     resolution:
 784 |       {
 785 |         integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==,
 786 |       }
 787 |     engines: { node: ">=12" }
 788 |     dev: true
 789 | 
 790 |   /ansi-styles/3.2.1:
 791 |     resolution:
 792 |       {
 793 |         integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==,
 794 |       }
 795 |     engines: { node: ">=4" }
 796 |     dependencies:
 797 |       color-convert: 1.9.3
 798 |     dev: false
 799 | 
 800 |   /ansi-styles/4.3.0:
 801 |     resolution:
 802 |       {
 803 |         integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==,
 804 |       }
 805 |     engines: { node: ">=8" }
 806 |     dependencies:
 807 |       color-convert: 2.0.1
 808 |     dev: true
 809 | 
 810 |   /ansi-styles/6.1.0:
 811 |     resolution:
 812 |       {
 813 |         integrity: sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ==,
 814 |       }
 815 |     engines: { node: ">=12" }
 816 |     dev: true
 817 | 
 818 |   /any-promise/1.3.0:
 819 |     resolution:
 820 |       {
 821 |         integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==,
 822 |       }
 823 |     dev: true
 824 | 
 825 |   /anymatch/3.1.2:
 826 |     resolution:
 827 |       {
 828 |         integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==,
 829 |       }
 830 |     engines: { node: ">= 8" }
 831 |     dependencies:
 832 |       normalize-path: 3.0.0
 833 |       picomatch: 2.3.1
 834 |     dev: true
 835 | 
 836 |   /argparse/2.0.1:
 837 |     resolution:
 838 |       {
 839 |         integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==,
 840 |       }
 841 |     dev: true
 842 | 
 843 |   /array-includes/3.1.5:
 844 |     resolution:
 845 |       {
 846 |         integrity: sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==,
 847 |       }
 848 |     engines: { node: ">= 0.4" }
 849 |     dependencies:
 850 |       call-bind: 1.0.2
 851 |       define-properties: 1.1.4
 852 |       es-abstract: 1.20.1
 853 |       get-intrinsic: 1.1.2
 854 |       is-string: 1.0.7
 855 |     dev: true
 856 | 
 857 |   /array-union/2.1.0:
 858 |     resolution:
 859 |       {
 860 |         integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==,
 861 |       }
 862 |     engines: { node: ">=8" }
 863 |     dev: true
 864 | 
 865 |   /array.prototype.flat/1.3.0:
 866 |     resolution:
 867 |       {
 868 |         integrity: sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==,
 869 |       }
 870 |     engines: { node: ">= 0.4" }
 871 |     dependencies:
 872 |       call-bind: 1.0.2
 873 |       define-properties: 1.1.4
 874 |       es-abstract: 1.20.1
 875 |       es-shim-unscopables: 1.0.0
 876 |     dev: true
 877 | 
 878 |   /array.prototype.flatmap/1.3.0:
 879 |     resolution:
 880 |       {
 881 |         integrity: sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg==,
 882 |       }
 883 |     engines: { node: ">= 0.4" }
 884 |     dependencies:
 885 |       call-bind: 1.0.2
 886 |       define-properties: 1.1.4
 887 |       es-abstract: 1.20.1
 888 |       es-shim-unscopables: 1.0.0
 889 |     dev: true
 890 | 
 891 |   /assertion-error/1.1.0:
 892 |     resolution:
 893 |       {
 894 |         integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==,
 895 |       }
 896 |     dev: true
 897 | 
 898 |   /astral-regex/2.0.0:
 899 |     resolution:
 900 |       {
 901 |         integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==,
 902 |       }
 903 |     engines: { node: ">=8" }
 904 |     dev: true
 905 | 
 906 |   /balanced-match/1.0.2:
 907 |     resolution:
 908 |       {
 909 |         integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==,
 910 |       }
 911 |     dev: true
 912 | 
 913 |   /binary-extensions/2.2.0:
 914 |     resolution:
 915 |       {
 916 |         integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==,
 917 |       }
 918 |     engines: { node: ">=8" }
 919 |     dev: true
 920 | 
 921 |   /brace-expansion/1.1.11:
 922 |     resolution:
 923 |       {
 924 |         integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==,
 925 |       }
 926 |     dependencies:
 927 |       balanced-match: 1.0.2
 928 |       concat-map: 0.0.1
 929 |     dev: true
 930 | 
 931 |   /brace-expansion/2.0.1:
 932 |     resolution:
 933 |       {
 934 |         integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==,
 935 |       }
 936 |     dependencies:
 937 |       balanced-match: 1.0.2
 938 |     dev: true
 939 | 
 940 |   /braces/3.0.2:
 941 |     resolution:
 942 |       {
 943 |         integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==,
 944 |       }
 945 |     engines: { node: ">=8" }
 946 |     dependencies:
 947 |       fill-range: 7.0.1
 948 |     dev: true
 949 | 
 950 |   /browserslist/4.21.3:
 951 |     resolution:
 952 |       {
 953 |         integrity: sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==,
 954 |       }
 955 |     engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 }
 956 |     hasBin: true
 957 |     dependencies:
 958 |       caniuse-lite: 1.0.30001373
 959 |       electron-to-chromium: 1.4.206
 960 |       node-releases: 2.0.6
 961 |       update-browserslist-db: 1.0.5_browserslist@4.21.3
 962 |     dev: false
 963 | 
 964 |   /bundle-require/3.0.4_esbuild@0.14.48:
 965 |     resolution:
 966 |       {
 967 |         integrity: sha512-VXG6epB1yrLAvWVQpl92qF347/UXmncQj7J3U8kZEbdVZ1ZkQyr4hYeL/9RvcE8vVVdp53dY78Fd/3pqfRqI1A==,
 968 |       }
 969 |     engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 }
 970 |     peerDependencies:
 971 |       esbuild: ">=0.13"
 972 |     dependencies:
 973 |       esbuild: 0.14.48
 974 |       load-tsconfig: 0.2.3
 975 |     dev: true
 976 | 
 977 |   /cac/6.7.12:
 978 |     resolution:
 979 |       {
 980 |         integrity: sha512-rM7E2ygtMkJqD9c7WnFU6fruFcN3xe4FM5yUmgxhZzIKJk4uHl9U/fhwdajGFQbQuv43FAUo1Fe8gX/oIKDeSA==,
 981 |       }
 982 |     engines: { node: ">=8" }
 983 |     dev: true
 984 | 
 985 |   /call-bind/1.0.2:
 986 |     resolution:
 987 |       {
 988 |         integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==,
 989 |       }
 990 |     dependencies:
 991 |       function-bind: 1.1.1
 992 |       get-intrinsic: 1.1.2
 993 |     dev: true
 994 | 
 995 |   /callsites/3.1.0:
 996 |     resolution:
 997 |       {
 998 |         integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==,
 999 |       }
1000 |     engines: { node: ">=6" }
1001 |     dev: true
1002 | 
1003 |   /caniuse-lite/1.0.30001373:
1004 |     resolution:
1005 |       {
1006 |         integrity: sha512-pJYArGHrPp3TUqQzFYRmP/lwJlj8RCbVe3Gd3eJQkAV8SAC6b19XS9BjMvRdvaS8RMkaTN8ZhoHP6S1y8zzwEQ==,
1007 |       }
1008 |     dev: false
1009 | 
1010 |   /chai/4.3.6:
1011 |     resolution:
1012 |       {
1013 |         integrity: sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==,
1014 |       }
1015 |     engines: { node: ">=4" }
1016 |     dependencies:
1017 |       assertion-error: 1.1.0
1018 |       check-error: 1.0.2
1019 |       deep-eql: 3.0.1
1020 |       get-func-name: 2.0.0
1021 |       loupe: 2.3.4
1022 |       pathval: 1.1.1
1023 |       type-detect: 4.0.8
1024 |     dev: true
1025 | 
1026 |   /chalk/2.4.2:
1027 |     resolution:
1028 |       {
1029 |         integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==,
1030 |       }
1031 |     engines: { node: ">=4" }
1032 |     dependencies:
1033 |       ansi-styles: 3.2.1
1034 |       escape-string-regexp: 1.0.5
1035 |       supports-color: 5.5.0
1036 |     dev: false
1037 | 
1038 |   /chalk/4.1.2:
1039 |     resolution:
1040 |       {
1041 |         integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==,
1042 |       }
1043 |     engines: { node: ">=10" }
1044 |     dependencies:
1045 |       ansi-styles: 4.3.0
1046 |       supports-color: 7.2.0
1047 |     dev: true
1048 | 
1049 |   /check-error/1.0.2:
1050 |     resolution:
1051 |       {
1052 |         integrity: sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==,
1053 |       }
1054 |     dev: true
1055 | 
1056 |   /chokidar/3.5.3:
1057 |     resolution:
1058 |       {
1059 |         integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==,
1060 |       }
1061 |     engines: { node: ">= 8.10.0" }
1062 |     dependencies:
1063 |       anymatch: 3.1.2
1064 |       braces: 3.0.2
1065 |       glob-parent: 5.1.2
1066 |       is-binary-path: 2.1.0
1067 |       is-glob: 4.0.3
1068 |       normalize-path: 3.0.0
1069 |       readdirp: 3.6.0
1070 |     optionalDependencies:
1071 |       fsevents: 2.3.2
1072 |     dev: true
1073 | 
1074 |   /clean-stack/2.2.0:
1075 |     resolution:
1076 |       {
1077 |         integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==,
1078 |       }
1079 |     engines: { node: ">=6" }
1080 |     dev: true
1081 | 
1082 |   /cli-cursor/3.1.0:
1083 |     resolution:
1084 |       {
1085 |         integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==,
1086 |       }
1087 |     engines: { node: ">=8" }
1088 |     dependencies:
1089 |       restore-cursor: 3.1.0
1090 |     dev: true
1091 | 
1092 |   /cli-truncate/2.1.0:
1093 |     resolution:
1094 |       {
1095 |         integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==,
1096 |       }
1097 |     engines: { node: ">=8" }
1098 |     dependencies:
1099 |       slice-ansi: 3.0.0
1100 |       string-width: 4.2.3
1101 |     dev: true
1102 | 
1103 |   /cli-truncate/3.1.0:
1104 |     resolution:
1105 |       {
1106 |         integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==,
1107 |       }
1108 |     engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 }
1109 |     dependencies:
1110 |       slice-ansi: 5.0.0
1111 |       string-width: 5.1.2
1112 |     dev: true
1113 | 
1114 |   /color-convert/1.9.3:
1115 |     resolution:
1116 |       {
1117 |         integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==,
1118 |       }
1119 |     dependencies:
1120 |       color-name: 1.1.3
1121 |     dev: false
1122 | 
1123 |   /color-convert/2.0.1:
1124 |     resolution:
1125 |       {
1126 |         integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==,
1127 |       }
1128 |     engines: { node: ">=7.0.0" }
1129 |     dependencies:
1130 |       color-name: 1.1.4
1131 |     dev: true
1132 | 
1133 |   /color-name/1.1.3:
1134 |     resolution:
1135 |       {
1136 |         integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==,
1137 |       }
1138 |     dev: false
1139 | 
1140 |   /color-name/1.1.4:
1141 |     resolution:
1142 |       {
1143 |         integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==,
1144 |       }
1145 |     dev: true
1146 | 
1147 |   /colorette/2.0.19:
1148 |     resolution:
1149 |       {
1150 |         integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==,
1151 |       }
1152 |     dev: true
1153 | 
1154 |   /commander/4.1.1:
1155 |     resolution:
1156 |       {
1157 |         integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==,
1158 |       }
1159 |     engines: { node: ">= 6" }
1160 |     dev: true
1161 | 
1162 |   /commander/9.3.0:
1163 |     resolution:
1164 |       {
1165 |         integrity: sha512-hv95iU5uXPbK83mjrJKuZyFM/LBAoCV/XhVGkS5Je6tl7sxr6A0ITMw5WoRV46/UaJ46Nllm3Xt7IaJhXTIkzw==,
1166 |       }
1167 |     engines: { node: ^12.20.0 || >=14 }
1168 |     dev: true
1169 | 
1170 |   /concat-map/0.0.1:
1171 |     resolution:
1172 |       {
1173 |         integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==,
1174 |       }
1175 |     dev: true
1176 | 
1177 |   /convert-source-map/1.8.0:
1178 |     resolution:
1179 |       {
1180 |         integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==,
1181 |       }
1182 |     dependencies:
1183 |       safe-buffer: 5.1.2
1184 |     dev: false
1185 | 
1186 |   /cross-env/7.0.3:
1187 |     resolution:
1188 |       {
1189 |         integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==,
1190 |       }
1191 |     engines: { node: ">=10.14", npm: ">=6", yarn: ">=1" }
1192 |     hasBin: true
1193 |     dependencies:
1194 |       cross-spawn: 7.0.3
1195 |     dev: true
1196 | 
1197 |   /cross-spawn/7.0.3:
1198 |     resolution:
1199 |       {
1200 |         integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==,
1201 |       }
1202 |     engines: { node: ">= 8" }
1203 |     dependencies:
1204 |       path-key: 3.1.1
1205 |       shebang-command: 2.0.0
1206 |       which: 2.0.2
1207 |     dev: true
1208 | 
1209 |   /debug/2.6.9:
1210 |     resolution:
1211 |       {
1212 |         integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==,
1213 |       }
1214 |     peerDependencies:
1215 |       supports-color: "*"
1216 |     peerDependenciesMeta:
1217 |       supports-color:
1218 |         optional: true
1219 |     dependencies:
1220 |       ms: 2.0.0
1221 |     dev: true
1222 | 
1223 |   /debug/3.2.7:
1224 |     resolution:
1225 |       {
1226 |         integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==,
1227 |       }
1228 |     peerDependencies:
1229 |       supports-color: "*"
1230 |     peerDependenciesMeta:
1231 |       supports-color:
1232 |         optional: true
1233 |     dependencies:
1234 |       ms: 2.1.3
1235 |     dev: true
1236 | 
1237 |   /debug/4.3.4:
1238 |     resolution:
1239 |       {
1240 |         integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==,
1241 |       }
1242 |     engines: { node: ">=6.0" }
1243 |     peerDependencies:
1244 |       supports-color: "*"
1245 |     peerDependenciesMeta:
1246 |       supports-color:
1247 |         optional: true
1248 |     dependencies:
1249 |       ms: 2.1.2
1250 | 
1251 |   /deep-eql/3.0.1:
1252 |     resolution:
1253 |       {
1254 |         integrity: sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==,
1255 |       }
1256 |     engines: { node: ">=0.12" }
1257 |     dependencies:
1258 |       type-detect: 4.0.8
1259 |     dev: true
1260 | 
1261 |   /deep-is/0.1.4:
1262 |     resolution:
1263 |       {
1264 |         integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==,
1265 |       }
1266 |     dev: true
1267 | 
1268 |   /define-properties/1.1.4:
1269 |     resolution:
1270 |       {
1271 |         integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==,
1272 |       }
1273 |     engines: { node: ">= 0.4" }
1274 |     dependencies:
1275 |       has-property-descriptors: 1.0.0
1276 |       object-keys: 1.1.1
1277 |     dev: true
1278 | 
1279 |   /dir-glob/3.0.1:
1280 |     resolution:
1281 |       {
1282 |         integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==,
1283 |       }
1284 |     engines: { node: ">=8" }
1285 |     dependencies:
1286 |       path-type: 4.0.0
1287 |     dev: true
1288 | 
1289 |   /doctrine/2.1.0:
1290 |     resolution:
1291 |       {
1292 |         integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==,
1293 |       }
1294 |     engines: { node: ">=0.10.0" }
1295 |     dependencies:
1296 |       esutils: 2.0.3
1297 |     dev: true
1298 | 
1299 |   /doctrine/3.0.0:
1300 |     resolution:
1301 |       {
1302 |         integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==,
1303 |       }
1304 |     engines: { node: ">=6.0.0" }
1305 |     dependencies:
1306 |       esutils: 2.0.3
1307 |     dev: true
1308 | 
1309 |   /eastasianwidth/0.2.0:
1310 |     resolution:
1311 |       {
1312 |         integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==,
1313 |       }
1314 |     dev: true
1315 | 
1316 |   /electron-to-chromium/1.4.206:
1317 |     resolution:
1318 |       {
1319 |         integrity: sha512-h+Fadt1gIaQ06JaIiyqPsBjJ08fV5Q7md+V8bUvQW/9OvXfL2LRICTz2EcnnCP7QzrFTS6/27MRV6Bl9Yn97zA==,
1320 |       }
1321 |     dev: false
1322 | 
1323 |   /emoji-regex/8.0.0:
1324 |     resolution:
1325 |       {
1326 |         integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==,
1327 |       }
1328 |     dev: true
1329 | 
1330 |   /emoji-regex/9.2.2:
1331 |     resolution:
1332 |       {
1333 |         integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==,
1334 |       }
1335 |     dev: true
1336 | 
1337 |   /es-abstract/1.20.1:
1338 |     resolution:
1339 |       {
1340 |         integrity: sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==,
1341 |       }
1342 |     engines: { node: ">= 0.4" }
1343 |     dependencies:
1344 |       call-bind: 1.0.2
1345 |       es-to-primitive: 1.2.1
1346 |       function-bind: 1.1.1
1347 |       function.prototype.name: 1.1.5
1348 |       get-intrinsic: 1.1.2
1349 |       get-symbol-description: 1.0.0
1350 |       has: 1.0.3
1351 |       has-property-descriptors: 1.0.0
1352 |       has-symbols: 1.0.3
1353 |       internal-slot: 1.0.3
1354 |       is-callable: 1.2.4
1355 |       is-negative-zero: 2.0.2
1356 |       is-regex: 1.1.4
1357 |       is-shared-array-buffer: 1.0.2
1358 |       is-string: 1.0.7
1359 |       is-weakref: 1.0.2
1360 |       object-inspect: 1.12.2
1361 |       object-keys: 1.1.1
1362 |       object.assign: 4.1.2
1363 |       regexp.prototype.flags: 1.4.3
1364 |       string.prototype.trimend: 1.0.5
1365 |       string.prototype.trimstart: 1.0.5
1366 |       unbox-primitive: 1.0.2
1367 |     dev: true
1368 | 
1369 |   /es-shim-unscopables/1.0.0:
1370 |     resolution:
1371 |       {
1372 |         integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==,
1373 |       }
1374 |     dependencies:
1375 |       has: 1.0.3
1376 |     dev: true
1377 | 
1378 |   /es-to-primitive/1.2.1:
1379 |     resolution:
1380 |       {
1381 |         integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==,
1382 |       }
1383 |     engines: { node: ">= 0.4" }
1384 |     dependencies:
1385 |       is-callable: 1.2.4
1386 |       is-date-object: 1.0.5
1387 |       is-symbol: 1.0.4
1388 |     dev: true
1389 | 
1390 |   /esbuild-android-64/0.14.48:
1391 |     resolution:
1392 |       {
1393 |         integrity: sha512-3aMjboap/kqwCUpGWIjsk20TtxVoKck8/4Tu19rubh7t5Ra0Yrpg30Mt1QXXlipOazrEceGeWurXKeFJgkPOUg==,
1394 |       }
1395 |     engines: { node: ">=12" }
1396 |     cpu: [x64]
1397 |     os: [android]
1398 |     requiresBuild: true
1399 |     dev: true
1400 |     optional: true
1401 | 
1402 |   /esbuild-android-arm64/0.14.48:
1403 |     resolution:
1404 |       {
1405 |         integrity: sha512-vptI3K0wGALiDq+EvRuZotZrJqkYkN5282iAfcffjI5lmGG9G1ta/CIVauhY42MBXwEgDJkweiDcDMRLzBZC4g==,
1406 |       }
1407 |     engines: { node: ">=12" }
1408 |     cpu: [arm64]
1409 |     os: [android]
1410 |     requiresBuild: true
1411 |     dev: true
1412 |     optional: true
1413 | 
1414 |   /esbuild-darwin-64/0.14.48:
1415 |     resolution:
1416 |       {
1417 |         integrity: sha512-gGQZa4+hab2Va/Zww94YbshLuWteyKGD3+EsVon8EWTWhnHFRm5N9NbALNbwi/7hQ/hM1Zm4FuHg+k6BLsl5UA==,
1418 |       }
1419 |     engines: { node: ">=12" }
1420 |     cpu: [x64]
1421 |     os: [darwin]
1422 |     requiresBuild: true
1423 |     dev: true
1424 |     optional: true
1425 | 
1426 |   /esbuild-darwin-arm64/0.14.48:
1427 |     resolution:
1428 |       {
1429 |         integrity: sha512-bFjnNEXjhZT+IZ8RvRGNJthLWNHV5JkCtuOFOnjvo5pC0sk2/QVk0Qc06g2PV3J0TcU6kaPC3RN9yy9w2PSLEA==,
1430 |       }
1431 |     engines: { node: ">=12" }
1432 |     cpu: [arm64]
1433 |     os: [darwin]
1434 |     requiresBuild: true
1435 |     dev: true
1436 |     optional: true
1437 | 
1438 |   /esbuild-freebsd-64/0.14.48:
1439 |     resolution:
1440 |       {
1441 |         integrity: sha512-1NOlwRxmOsnPcWOGTB10JKAkYSb2nue0oM1AfHWunW/mv3wERfJmnYlGzL3UAOIUXZqW8GeA2mv+QGwq7DToqA==,
1442 |       }
1443 |     engines: { node: ">=12" }
1444 |     cpu: [x64]
1445 |     os: [freebsd]
1446 |     requiresBuild: true
1447 |     dev: true
1448 |     optional: true
1449 | 
1450 |   /esbuild-freebsd-arm64/0.14.48:
1451 |     resolution:
1452 |       {
1453 |         integrity: sha512-gXqKdO8wabVcYtluAbikDH2jhXp+Klq5oCD5qbVyUG6tFiGhrC9oczKq3vIrrtwcxDQqK6+HDYK8Zrd4bCA9Gw==,
1454 |       }
1455 |     engines: { node: ">=12" }
1456 |     cpu: [arm64]
1457 |     os: [freebsd]
1458 |     requiresBuild: true
1459 |     dev: true
1460 |     optional: true
1461 | 
1462 |   /esbuild-linux-32/0.14.48:
1463 |     resolution:
1464 |       {
1465 |         integrity: sha512-ghGyDfS289z/LReZQUuuKq9KlTiTspxL8SITBFQFAFRA/IkIvDpnZnCAKTCjGXAmUqroMQfKJXMxyjJA69c/nQ==,
1466 |       }
1467 |     engines: { node: ">=12" }
1468 |     cpu: [ia32]
1469 |     os: [linux]
1470 |     requiresBuild: true
1471 |     dev: true
1472 |     optional: true
1473 | 
1474 |   /esbuild-linux-64/0.14.48:
1475 |     resolution:
1476 |       {
1477 |         integrity: sha512-vni3p/gppLMVZLghI7oMqbOZdGmLbbKR23XFARKnszCIBpEMEDxOMNIKPmMItQrmH/iJrL1z8Jt2nynY0bE1ug==,
1478 |       }
1479 |     engines: { node: ">=12" }
1480 |     cpu: [x64]
1481 |     os: [linux]
1482 |     requiresBuild: true
1483 |     dev: true
1484 |     optional: true
1485 | 
1486 |   /esbuild-linux-arm/0.14.48:
1487 |     resolution:
1488 |       {
1489 |         integrity: sha512-+VfSV7Akh1XUiDNXgqgY1cUP1i2vjI+BmlyXRfVz5AfV3jbpde8JTs5Q9sYgaoq5cWfuKfoZB/QkGOI+QcL1Tw==,
1490 |       }
1491 |     engines: { node: ">=12" }
1492 |     cpu: [arm]
1493 |     os: [linux]
1494 |     requiresBuild: true
1495 |     dev: true
1496 |     optional: true
1497 | 
1498 |   /esbuild-linux-arm64/0.14.48:
1499 |     resolution:
1500 |       {
1501 |         integrity: sha512-3CFsOlpoxlKPRevEHq8aAntgYGYkE1N9yRYAcPyng/p4Wyx0tPR5SBYsxLKcgPB9mR8chHEhtWYz6EZ+H199Zw==,
1502 |       }
1503 |     engines: { node: ">=12" }
1504 |     cpu: [arm64]
1505 |     os: [linux]
1506 |     requiresBuild: true
1507 |     dev: true
1508 |     optional: true
1509 | 
1510 |   /esbuild-linux-mips64le/0.14.48:
1511 |     resolution:
1512 |       {
1513 |         integrity: sha512-cs0uOiRlPp6ymknDnjajCgvDMSsLw5mST2UXh+ZIrXTj2Ifyf2aAP3Iw4DiqgnyYLV2O/v/yWBJx+WfmKEpNLA==,
1514 |       }
1515 |     engines: { node: ">=12" }
1516 |     cpu: [mips64el]
1517 |     os: [linux]
1518 |     requiresBuild: true
1519 |     dev: true
1520 |     optional: true
1521 | 
1522 |   /esbuild-linux-ppc64le/0.14.48:
1523 |     resolution:
1524 |       {
1525 |         integrity: sha512-+2F0vJMkuI0Wie/wcSPDCqXvSFEELH7Jubxb7mpWrA/4NpT+/byjxDz0gG6R1WJoeDefcrMfpBx4GFNN1JQorQ==,
1526 |       }
1527 |     engines: { node: ">=12" }
1528 |     cpu: [ppc64]
1529 |     os: [linux]
1530 |     requiresBuild: true
1531 |     dev: true
1532 |     optional: true
1533 | 
1534 |   /esbuild-linux-riscv64/0.14.48:
1535 |     resolution:
1536 |       {
1537 |         integrity: sha512-BmaK/GfEE+5F2/QDrIXteFGKnVHGxlnK9MjdVKMTfvtmudjY3k2t8NtlY4qemKSizc+QwyombGWTBDc76rxePA==,
1538 |       }
1539 |     engines: { node: ">=12" }
1540 |     cpu: [riscv64]
1541 |     os: [linux]
1542 |     requiresBuild: true
1543 |     dev: true
1544 |     optional: true
1545 | 
1546 |   /esbuild-linux-s390x/0.14.48:
1547 |     resolution:
1548 |       {
1549 |         integrity: sha512-tndw/0B9jiCL+KWKo0TSMaUm5UWBLsfCKVdbfMlb3d5LeV9WbijZ8Ordia8SAYv38VSJWOEt6eDCdOx8LqkC4g==,
1550 |       }
1551 |     engines: { node: ">=12" }
1552 |     cpu: [s390x]
1553 |     os: [linux]
1554 |     requiresBuild: true
1555 |     dev: true
1556 |     optional: true
1557 | 
1558 |   /esbuild-netbsd-64/0.14.48:
1559 |     resolution:
1560 |       {
1561 |         integrity: sha512-V9hgXfwf/T901Lr1wkOfoevtyNkrxmMcRHyticybBUHookznipMOHoF41Al68QBsqBxnITCEpjjd4yAos7z9Tw==,
1562 |       }
1563 |     engines: { node: ">=12" }
1564 |     cpu: [x64]
1565 |     os: [netbsd]
1566 |     requiresBuild: true
1567 |     dev: true
1568 |     optional: true
1569 | 
1570 |   /esbuild-openbsd-64/0.14.48:
1571 |     resolution:
1572 |       {
1573 |         integrity: sha512-+IHf4JcbnnBl4T52egorXMatil/za0awqzg2Vy6FBgPcBpisDWT2sVz/tNdrK9kAqj+GZG/jZdrOkj7wsrNTKA==,
1574 |       }
1575 |     engines: { node: ">=12" }
1576 |     cpu: [x64]
1577 |     os: [openbsd]
1578 |     requiresBuild: true
1579 |     dev: true
1580 |     optional: true
1581 | 
1582 |   /esbuild-sunos-64/0.14.48:
1583 |     resolution:
1584 |       {
1585 |         integrity: sha512-77m8bsr5wOpOWbGi9KSqDphcq6dFeJyun8TA+12JW/GAjyfTwVtOnN8DOt6DSPUfEV+ltVMNqtXUeTeMAxl5KA==,
1586 |       }
1587 |     engines: { node: ">=12" }
1588 |     cpu: [x64]
1589 |     os: [sunos]
1590 |     requiresBuild: true
1591 |     dev: true
1592 |     optional: true
1593 | 
1594 |   /esbuild-windows-32/0.14.48:
1595 |     resolution:
1596 |       {
1597 |         integrity: sha512-EPgRuTPP8vK9maxpTGDe5lSoIBHGKO/AuxDncg5O3NkrPeLNdvvK8oywB0zGaAZXxYWfNNSHskvvDgmfVTguhg==,
1598 |       }
1599 |     engines: { node: ">=12" }
1600 |     cpu: [ia32]
1601 |     os: [win32]
1602 |     requiresBuild: true
1603 |     dev: true
1604 |     optional: true
1605 | 
1606 |   /esbuild-windows-64/0.14.48:
1607 |     resolution:
1608 |       {
1609 |         integrity: sha512-YmpXjdT1q0b8ictSdGwH3M8VCoqPpK1/UArze3X199w6u8hUx3V8BhAi1WjbsfDYRBanVVtduAhh2sirImtAvA==,
1610 |       }
1611 |     engines: { node: ">=12" }
1612 |     cpu: [x64]
1613 |     os: [win32]
1614 |     requiresBuild: true
1615 |     dev: true
1616 |     optional: true
1617 | 
1618 |   /esbuild-windows-arm64/0.14.48:
1619 |     resolution:
1620 |       {
1621 |         integrity: sha512-HHaOMCsCXp0rz5BT2crTka6MPWVno121NKApsGs/OIW5QC0ggC69YMGs1aJct9/9FSUF4A1xNE/cLvgB5svR4g==,
1622 |       }
1623 |     engines: { node: ">=12" }
1624 |     cpu: [arm64]
1625 |     os: [win32]
1626 |     requiresBuild: true
1627 |     dev: true
1628 |     optional: true
1629 | 
1630 |   /esbuild/0.14.48:
1631 |     resolution:
1632 |       {
1633 |         integrity: sha512-w6N1Yn5MtqK2U1/WZTX9ZqUVb8IOLZkZ5AdHkT6x3cHDMVsYWC7WPdiLmx19w3i4Rwzy5LqsEMtVihG3e4rFzA==,
1634 |       }
1635 |     engines: { node: ">=12" }
1636 |     hasBin: true
1637 |     requiresBuild: true
1638 |     optionalDependencies:
1639 |       esbuild-android-64: 0.14.48
1640 |       esbuild-android-arm64: 0.14.48
1641 |       esbuild-darwin-64: 0.14.48
1642 |       esbuild-darwin-arm64: 0.14.48
1643 |       esbuild-freebsd-64: 0.14.48
1644 |       esbuild-freebsd-arm64: 0.14.48
1645 |       esbuild-linux-32: 0.14.48
1646 |       esbuild-linux-64: 0.14.48
1647 |       esbuild-linux-arm: 0.14.48
1648 |       esbuild-linux-arm64: 0.14.48
1649 |       esbuild-linux-mips64le: 0.14.48
1650 |       esbuild-linux-ppc64le: 0.14.48
1651 |       esbuild-linux-riscv64: 0.14.48
1652 |       esbuild-linux-s390x: 0.14.48
1653 |       esbuild-netbsd-64: 0.14.48
1654 |       esbuild-openbsd-64: 0.14.48
1655 |       esbuild-sunos-64: 0.14.48
1656 |       esbuild-windows-32: 0.14.48
1657 |       esbuild-windows-64: 0.14.48
1658 |       esbuild-windows-arm64: 0.14.48
1659 |     dev: true
1660 | 
1661 |   /escalade/3.1.1:
1662 |     resolution:
1663 |       {
1664 |         integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==,
1665 |       }
1666 |     engines: { node: ">=6" }
1667 |     dev: false
1668 | 
1669 |   /escape-string-regexp/1.0.5:
1670 |     resolution:
1671 |       {
1672 |         integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==,
1673 |       }
1674 |     engines: { node: ">=0.8.0" }
1675 |     dev: false
1676 | 
1677 |   /escape-string-regexp/4.0.0:
1678 |     resolution:
1679 |       {
1680 |         integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==,
1681 |       }
1682 |     engines: { node: ">=10" }
1683 |     dev: true
1684 | 
1685 |   /eslint-config-prettier/8.5.0_eslint@8.19.0:
1686 |     resolution:
1687 |       {
1688 |         integrity: sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==,
1689 |       }
1690 |     hasBin: true
1691 |     peerDependencies:
1692 |       eslint: ">=7.0.0"
1693 |     dependencies:
1694 |       eslint: 8.19.0
1695 |     dev: true
1696 | 
1697 |   /eslint-import-resolver-node/0.3.6:
1698 |     resolution:
1699 |       {
1700 |         integrity: sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==,
1701 |       }
1702 |     dependencies:
1703 |       debug: 3.2.7
1704 |       resolve: 1.22.1
1705 |     transitivePeerDependencies:
1706 |       - supports-color
1707 |     dev: true
1708 | 
1709 |   /eslint-import-resolver-typescript/2.7.1_q2xwze32dd33a2fc2qubwr4ie4:
1710 |     resolution:
1711 |       {
1712 |         integrity: sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==,
1713 |       }
1714 |     engines: { node: ">=4" }
1715 |     peerDependencies:
1716 |       eslint: "*"
1717 |       eslint-plugin-import: "*"
1718 |     dependencies:
1719 |       debug: 4.3.4
1720 |       eslint: 8.19.0
1721 |       eslint-plugin-import: 2.26.0_6o2fuefo7gfpbr7nbqwgu7w4mq
1722 |       glob: 7.2.3
1723 |       is-glob: 4.0.3
1724 |       resolve: 1.22.1
1725 |       tsconfig-paths: 3.14.1
1726 |     transitivePeerDependencies:
1727 |       - supports-color
1728 |     dev: true
1729 | 
1730 |   /eslint-module-utils/2.7.3_ngc5pgxzrdnldt43xbcfncn6si:
1731 |     resolution:
1732 |       {
1733 |         integrity: sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==,
1734 |       }
1735 |     engines: { node: ">=4" }
1736 |     peerDependencies:
1737 |       "@typescript-eslint/parser": "*"
1738 |       eslint-import-resolver-node: "*"
1739 |       eslint-import-resolver-typescript: "*"
1740 |       eslint-import-resolver-webpack: "*"
1741 |     peerDependenciesMeta:
1742 |       "@typescript-eslint/parser":
1743 |         optional: true
1744 |       eslint-import-resolver-node:
1745 |         optional: true
1746 |       eslint-import-resolver-typescript:
1747 |         optional: true
1748 |       eslint-import-resolver-webpack:
1749 |         optional: true
1750 |     dependencies:
1751 |       "@typescript-eslint/parser": 5.30.5_4x5o4skxv6sl53vpwefgt23khm
1752 |       debug: 3.2.7
1753 |       eslint-import-resolver-node: 0.3.6
1754 |       eslint-import-resolver-typescript: 2.7.1_q2xwze32dd33a2fc2qubwr4ie4
1755 |       find-up: 2.1.0
1756 |     transitivePeerDependencies:
1757 |       - supports-color
1758 |     dev: true
1759 | 
1760 |   /eslint-plugin-css-modules/2.11.0_eslint@8.19.0:
1761 |     resolution:
1762 |       {
1763 |         integrity: sha512-CLvQvJOMlCywZzaI4HVu7QH/ltgNXvCg7giJGiE+sA9wh5zQ+AqTgftAzrERV22wHe1p688wrU/Zwxt1Ry922w==,
1764 |       }
1765 |     engines: { node: ">=4.0.0" }
1766 |     peerDependencies:
1767 |       eslint: ">=2.0.0"
1768 |     dependencies:
1769 |       eslint: 8.19.0
1770 |       gonzales-pe: 4.3.0
1771 |       lodash: 4.17.21
1772 |     dev: true
1773 | 
1774 |   /eslint-plugin-import/2.26.0_6o2fuefo7gfpbr7nbqwgu7w4mq:
1775 |     resolution:
1776 |       {
1777 |         integrity: sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==,
1778 |       }
1779 |     engines: { node: ">=4" }
1780 |     peerDependencies:
1781 |       "@typescript-eslint/parser": "*"
1782 |       eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
1783 |     peerDependenciesMeta:
1784 |       "@typescript-eslint/parser":
1785 |         optional: true
1786 |     dependencies:
1787 |       "@typescript-eslint/parser": 5.30.5_4x5o4skxv6sl53vpwefgt23khm
1788 |       array-includes: 3.1.5
1789 |       array.prototype.flat: 1.3.0
1790 |       debug: 2.6.9
1791 |       doctrine: 2.1.0
1792 |       eslint: 8.19.0
1793 |       eslint-import-resolver-node: 0.3.6
1794 |       eslint-module-utils: 2.7.3_ngc5pgxzrdnldt43xbcfncn6si
1795 |       has: 1.0.3
1796 |       is-core-module: 2.9.0
1797 |       is-glob: 4.0.3
1798 |       minimatch: 3.1.2
1799 |       object.values: 1.1.5
1800 |       resolve: 1.22.1
1801 |       tsconfig-paths: 3.14.1
1802 |     transitivePeerDependencies:
1803 |       - eslint-import-resolver-typescript
1804 |       - eslint-import-resolver-webpack
1805 |       - supports-color
1806 |     dev: true
1807 | 
1808 |   /eslint-plugin-no-only-tests/2.6.0:
1809 |     resolution:
1810 |       {
1811 |         integrity: sha512-T9SmE/g6UV1uZo1oHAqOvL86XWl7Pl2EpRpnLI8g/bkJu+h7XBCB+1LnubRZ2CUQXj805vh4/CYZdnqtVaEo2Q==,
1812 |       }
1813 |     engines: { node: ">=4.0.0" }
1814 |     dev: true
1815 | 
1816 |   /eslint-plugin-only-warn/1.0.3:
1817 |     resolution:
1818 |       {
1819 |         integrity: sha512-XQOX/TfLoLw6h8ky51d29uUjXRTQHqBGXPylDEmy5fe/w7LIOnp8MA24b1OSMEn9BQoKow1q3g1kLe5/9uBTvw==,
1820 |       }
1821 |     engines: { node: ">=6" }
1822 |     dev: true
1823 | 
1824 |   /eslint-plugin-react-hooks/4.6.0_eslint@8.19.0:
1825 |     resolution:
1826 |       {
1827 |         integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==,
1828 |       }
1829 |     engines: { node: ">=10" }
1830 |     peerDependencies:
1831 |       eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
1832 |     dependencies:
1833 |       eslint: 8.19.0
1834 |     dev: true
1835 | 
1836 |   /eslint-plugin-react/7.30.1_eslint@8.19.0:
1837 |     resolution:
1838 |       {
1839 |         integrity: sha512-NbEvI9jtqO46yJA3wcRF9Mo0lF9T/jhdHqhCHXiXtD+Zcb98812wvokjWpU7Q4QH5edo6dmqrukxVvWWXHlsUg==,
1840 |       }
1841 |     engines: { node: ">=4" }
1842 |     peerDependencies:
1843 |       eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
1844 |     dependencies:
1845 |       array-includes: 3.1.5
1846 |       array.prototype.flatmap: 1.3.0
1847 |       doctrine: 2.1.0
1848 |       eslint: 8.19.0
1849 |       estraverse: 5.3.0
1850 |       jsx-ast-utils: 3.3.2
1851 |       minimatch: 3.1.2
1852 |       object.entries: 1.1.5
1853 |       object.fromentries: 2.0.5
1854 |       object.hasown: 1.1.1
1855 |       object.values: 1.1.5
1856 |       prop-types: 15.8.1
1857 |       resolve: 2.0.0-next.4
1858 |       semver: 6.3.0
1859 |       string.prototype.matchall: 4.0.7
1860 |     dev: true
1861 | 
1862 |   /eslint-plugin-ssr-friendly/1.0.6_eslint@8.19.0:
1863 |     resolution:
1864 |       {
1865 |         integrity: sha512-O1S/0Q8FYTl1c4vwIr0cg59u37mL5qe7sxpMzjdIo2v8l0LjCugU699trmkgOheQINTq7R9yhfCo6YaAb4tYUQ==,
1866 |       }
1867 |     peerDependencies:
1868 |       eslint: ">=0.8.0"
1869 |     dependencies:
1870 |       eslint: 8.19.0
1871 |       globals: 13.16.0
1872 |     dev: true
1873 | 
1874 |   /eslint-scope/5.1.1:
1875 |     resolution:
1876 |       {
1877 |         integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==,
1878 |       }
1879 |     engines: { node: ">=8.0.0" }
1880 |     dependencies:
1881 |       esrecurse: 4.3.0
1882 |       estraverse: 4.3.0
1883 |     dev: true
1884 | 
1885 |   /eslint-scope/7.1.1:
1886 |     resolution:
1887 |       {
1888 |         integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==,
1889 |       }
1890 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
1891 |     dependencies:
1892 |       esrecurse: 4.3.0
1893 |       estraverse: 5.3.0
1894 |     dev: true
1895 | 
1896 |   /eslint-utils/3.0.0_eslint@8.19.0:
1897 |     resolution:
1898 |       {
1899 |         integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==,
1900 |       }
1901 |     engines: { node: ^10.0.0 || ^12.0.0 || >= 14.0.0 }
1902 |     peerDependencies:
1903 |       eslint: ">=5"
1904 |     dependencies:
1905 |       eslint: 8.19.0
1906 |       eslint-visitor-keys: 2.1.0
1907 |     dev: true
1908 | 
1909 |   /eslint-visitor-keys/2.1.0:
1910 |     resolution:
1911 |       {
1912 |         integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==,
1913 |       }
1914 |     engines: { node: ">=10" }
1915 |     dev: true
1916 | 
1917 |   /eslint-visitor-keys/3.3.0:
1918 |     resolution:
1919 |       {
1920 |         integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==,
1921 |       }
1922 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
1923 |     dev: true
1924 | 
1925 |   /eslint/8.19.0:
1926 |     resolution:
1927 |       {
1928 |         integrity: sha512-SXOPj3x9VKvPe81TjjUJCYlV4oJjQw68Uek+AM0X4p+33dj2HY5bpTZOgnQHcG2eAm1mtCU9uNMnJi7exU/kYw==,
1929 |       }
1930 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
1931 |     hasBin: true
1932 |     dependencies:
1933 |       "@eslint/eslintrc": 1.3.0
1934 |       "@humanwhocodes/config-array": 0.9.5
1935 |       ajv: 6.12.6
1936 |       chalk: 4.1.2
1937 |       cross-spawn: 7.0.3
1938 |       debug: 4.3.4
1939 |       doctrine: 3.0.0
1940 |       escape-string-regexp: 4.0.0
1941 |       eslint-scope: 7.1.1
1942 |       eslint-utils: 3.0.0_eslint@8.19.0
1943 |       eslint-visitor-keys: 3.3.0
1944 |       espree: 9.3.2
1945 |       esquery: 1.4.0
1946 |       esutils: 2.0.3
1947 |       fast-deep-equal: 3.1.3
1948 |       file-entry-cache: 6.0.1
1949 |       functional-red-black-tree: 1.0.1
1950 |       glob-parent: 6.0.2
1951 |       globals: 13.16.0
1952 |       ignore: 5.2.0
1953 |       import-fresh: 3.3.0
1954 |       imurmurhash: 0.1.4
1955 |       is-glob: 4.0.3
1956 |       js-yaml: 4.1.0
1957 |       json-stable-stringify-without-jsonify: 1.0.1
1958 |       levn: 0.4.1
1959 |       lodash.merge: 4.6.2
1960 |       minimatch: 3.1.2
1961 |       natural-compare: 1.4.0
1962 |       optionator: 0.9.1
1963 |       regexpp: 3.2.0
1964 |       strip-ansi: 6.0.1
1965 |       strip-json-comments: 3.1.1
1966 |       text-table: 0.2.0
1967 |       v8-compile-cache: 2.3.0
1968 |     transitivePeerDependencies:
1969 |       - supports-color
1970 |     dev: true
1971 | 
1972 |   /espree/9.3.2:
1973 |     resolution:
1974 |       {
1975 |         integrity: sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==,
1976 |       }
1977 |     engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
1978 |     dependencies:
1979 |       acorn: 8.7.1
1980 |       acorn-jsx: 5.3.2_acorn@8.7.1
1981 |       eslint-visitor-keys: 3.3.0
1982 |     dev: true
1983 | 
1984 |   /esquery/1.4.0:
1985 |     resolution:
1986 |       {
1987 |         integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==,
1988 |       }
1989 |     engines: { node: ">=0.10" }
1990 |     dependencies:
1991 |       estraverse: 5.3.0
1992 |     dev: true
1993 | 
1994 |   /esrecurse/4.3.0:
1995 |     resolution:
1996 |       {
1997 |         integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==,
1998 |       }
1999 |     engines: { node: ">=4.0" }
2000 |     dependencies:
2001 |       estraverse: 5.3.0
2002 |     dev: true
2003 | 
2004 |   /estraverse/4.3.0:
2005 |     resolution:
2006 |       {
2007 |         integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==,
2008 |       }
2009 |     engines: { node: ">=4.0" }
2010 |     dev: true
2011 | 
2012 |   /estraverse/5.3.0:
2013 |     resolution:
2014 |       {
2015 |         integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==,
2016 |       }
2017 |     engines: { node: ">=4.0" }
2018 |     dev: true
2019 | 
2020 |   /esutils/2.0.3:
2021 |     resolution:
2022 |       {
2023 |         integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==,
2024 |       }
2025 |     engines: { node: ">=0.10.0" }
2026 |     dev: true
2027 | 
2028 |   /execa/5.1.1:
2029 |     resolution:
2030 |       {
2031 |         integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==,
2032 |       }
2033 |     engines: { node: ">=10" }
2034 |     dependencies:
2035 |       cross-spawn: 7.0.3
2036 |       get-stream: 6.0.1
2037 |       human-signals: 2.1.0
2038 |       is-stream: 2.0.1
2039 |       merge-stream: 2.0.0
2040 |       npm-run-path: 4.0.1
2041 |       onetime: 5.1.2
2042 |       signal-exit: 3.0.7
2043 |       strip-final-newline: 2.0.0
2044 |     dev: true
2045 | 
2046 |   /execa/6.1.0:
2047 |     resolution:
2048 |       {
2049 |         integrity: sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==,
2050 |       }
2051 |     engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 }
2052 |     dependencies:
2053 |       cross-spawn: 7.0.3
2054 |       get-stream: 6.0.1
2055 |       human-signals: 3.0.1
2056 |       is-stream: 3.0.0
2057 |       merge-stream: 2.0.0
2058 |       npm-run-path: 5.1.0
2059 |       onetime: 6.0.0
2060 |       signal-exit: 3.0.7
2061 |       strip-final-newline: 3.0.0
2062 |     dev: true
2063 | 
2064 |   /fast-deep-equal/3.1.3:
2065 |     resolution:
2066 |       {
2067 |         integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==,
2068 |       }
2069 |     dev: true
2070 | 
2071 |   /fast-glob/3.2.11:
2072 |     resolution:
2073 |       {
2074 |         integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==,
2075 |       }
2076 |     engines: { node: ">=8.6.0" }
2077 |     dependencies:
2078 |       "@nodelib/fs.stat": 2.0.5
2079 |       "@nodelib/fs.walk": 1.2.8
2080 |       glob-parent: 5.1.2
2081 |       merge2: 1.4.1
2082 |       micromatch: 4.0.5
2083 |     dev: true
2084 | 
2085 |   /fast-json-stable-stringify/2.1.0:
2086 |     resolution:
2087 |       {
2088 |         integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==,
2089 |       }
2090 |     dev: true
2091 | 
2092 |   /fast-levenshtein/2.0.6:
2093 |     resolution:
2094 |       {
2095 |         integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==,
2096 |       }
2097 |     dev: true
2098 | 
2099 |   /fastq/1.13.0:
2100 |     resolution:
2101 |       {
2102 |         integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==,
2103 |       }
2104 |     dependencies:
2105 |       reusify: 1.0.4
2106 |     dev: true
2107 | 
2108 |   /file-entry-cache/6.0.1:
2109 |     resolution:
2110 |       {
2111 |         integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==,
2112 |       }
2113 |     engines: { node: ^10.12.0 || >=12.0.0 }
2114 |     dependencies:
2115 |       flat-cache: 3.0.4
2116 |     dev: true
2117 | 
2118 |   /fill-range/7.0.1:
2119 |     resolution:
2120 |       {
2121 |         integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==,
2122 |       }
2123 |     engines: { node: ">=8" }
2124 |     dependencies:
2125 |       to-regex-range: 5.0.1
2126 |     dev: true
2127 | 
2128 |   /find-up/2.1.0:
2129 |     resolution:
2130 |       {
2131 |         integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==,
2132 |       }
2133 |     engines: { node: ">=4" }
2134 |     dependencies:
2135 |       locate-path: 2.0.0
2136 |     dev: true
2137 | 
2138 |   /flat-cache/3.0.4:
2139 |     resolution:
2140 |       {
2141 |         integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==,
2142 |       }
2143 |     engines: { node: ^10.12.0 || >=12.0.0 }
2144 |     dependencies:
2145 |       flatted: 3.2.6
2146 |       rimraf: 3.0.2
2147 |     dev: true
2148 | 
2149 |   /flatted/3.2.6:
2150 |     resolution:
2151 |       {
2152 |         integrity: sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ==,
2153 |       }
2154 |     dev: true
2155 | 
2156 |   /fs.realpath/1.0.0:
2157 |     resolution:
2158 |       {
2159 |         integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==,
2160 |       }
2161 |     dev: true
2162 | 
2163 |   /fsevents/2.3.2:
2164 |     resolution:
2165 |       {
2166 |         integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==,
2167 |       }
2168 |     engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 }
2169 |     os: [darwin]
2170 |     requiresBuild: true
2171 |     dev: true
2172 |     optional: true
2173 | 
2174 |   /function-bind/1.1.1:
2175 |     resolution:
2176 |       {
2177 |         integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==,
2178 |       }
2179 |     dev: true
2180 | 
2181 |   /function.prototype.name/1.1.5:
2182 |     resolution:
2183 |       {
2184 |         integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==,
2185 |       }
2186 |     engines: { node: ">= 0.4" }
2187 |     dependencies:
2188 |       call-bind: 1.0.2
2189 |       define-properties: 1.1.4
2190 |       es-abstract: 1.20.1
2191 |       functions-have-names: 1.2.3
2192 |     dev: true
2193 | 
2194 |   /functional-red-black-tree/1.0.1:
2195 |     resolution:
2196 |       {
2197 |         integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==,
2198 |       }
2199 |     dev: true
2200 | 
2201 |   /functions-have-names/1.2.3:
2202 |     resolution:
2203 |       {
2204 |         integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==,
2205 |       }
2206 |     dev: true
2207 | 
2208 |   /gensync/1.0.0-beta.2:
2209 |     resolution:
2210 |       {
2211 |         integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==,
2212 |       }
2213 |     engines: { node: ">=6.9.0" }
2214 |     dev: false
2215 | 
2216 |   /get-func-name/2.0.0:
2217 |     resolution:
2218 |       {
2219 |         integrity: sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==,
2220 |       }
2221 |     dev: true
2222 | 
2223 |   /get-intrinsic/1.1.2:
2224 |     resolution:
2225 |       {
2226 |         integrity: sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==,
2227 |       }
2228 |     dependencies:
2229 |       function-bind: 1.1.1
2230 |       has: 1.0.3
2231 |       has-symbols: 1.0.3
2232 |     dev: true
2233 | 
2234 |   /get-stream/6.0.1:
2235 |     resolution:
2236 |       {
2237 |         integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==,
2238 |       }
2239 |     engines: { node: ">=10" }
2240 |     dev: true
2241 | 
2242 |   /get-symbol-description/1.0.0:
2243 |     resolution:
2244 |       {
2245 |         integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==,
2246 |       }
2247 |     engines: { node: ">= 0.4" }
2248 |     dependencies:
2249 |       call-bind: 1.0.2
2250 |       get-intrinsic: 1.1.2
2251 |     dev: true
2252 | 
2253 |   /get-them-args/1.3.2:
2254 |     resolution:
2255 |       {
2256 |         integrity: sha512-LRn8Jlk+DwZE4GTlDbT3Hikd1wSHgLMme/+7ddlqKd7ldwR6LjJgTVWzBnR01wnYGe4KgrXjg287RaI22UHmAw==,
2257 |       }
2258 |     dev: true
2259 | 
2260 |   /glob-parent/5.1.2:
2261 |     resolution:
2262 |       {
2263 |         integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==,
2264 |       }
2265 |     engines: { node: ">= 6" }
2266 |     dependencies:
2267 |       is-glob: 4.0.3
2268 |     dev: true
2269 | 
2270 |   /glob-parent/6.0.2:
2271 |     resolution:
2272 |       {
2273 |         integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==,
2274 |       }
2275 |     engines: { node: ">=10.13.0" }
2276 |     dependencies:
2277 |       is-glob: 4.0.3
2278 |     dev: true
2279 | 
2280 |   /glob/7.1.6:
2281 |     resolution:
2282 |       {
2283 |         integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==,
2284 |       }
2285 |     dependencies:
2286 |       fs.realpath: 1.0.0
2287 |       inflight: 1.0.6
2288 |       inherits: 2.0.4
2289 |       minimatch: 3.1.2
2290 |       once: 1.4.0
2291 |       path-is-absolute: 1.0.1
2292 |     dev: true
2293 | 
2294 |   /glob/7.2.3:
2295 |     resolution:
2296 |       {
2297 |         integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==,
2298 |       }
2299 |     dependencies:
2300 |       fs.realpath: 1.0.0
2301 |       inflight: 1.0.6
2302 |       inherits: 2.0.4
2303 |       minimatch: 3.1.2
2304 |       once: 1.4.0
2305 |       path-is-absolute: 1.0.1
2306 |     dev: true
2307 | 
2308 |   /glob/8.0.3:
2309 |     resolution:
2310 |       {
2311 |         integrity: sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==,
2312 |       }
2313 |     engines: { node: ">=12" }
2314 |     dependencies:
2315 |       fs.realpath: 1.0.0
2316 |       inflight: 1.0.6
2317 |       inherits: 2.0.4
2318 |       minimatch: 5.1.0
2319 |       once: 1.4.0
2320 |     dev: true
2321 | 
2322 |   /globals/11.12.0:
2323 |     resolution:
2324 |       {
2325 |         integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==,
2326 |       }
2327 |     engines: { node: ">=4" }
2328 |     dev: false
2329 | 
2330 |   /globals/13.16.0:
2331 |     resolution:
2332 |       {
2333 |         integrity: sha512-A1lrQfpNF+McdPOnnFqY3kSN0AFTy485bTi1bkLk4mVPODIUEcSfhHgRqA+QdXPksrSTTztYXx37NFV+GpGk3Q==,
2334 |       }
2335 |     engines: { node: ">=8" }
2336 |     dependencies:
2337 |       type-fest: 0.20.2
2338 |     dev: true
2339 | 
2340 |   /globby/11.1.0:
2341 |     resolution:
2342 |       {
2343 |         integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==,
2344 |       }
2345 |     engines: { node: ">=10" }
2346 |     dependencies:
2347 |       array-union: 2.1.0
2348 |       dir-glob: 3.0.1
2349 |       fast-glob: 3.2.11
2350 |       ignore: 5.2.0
2351 |       merge2: 1.4.1
2352 |       slash: 3.0.0
2353 |     dev: true
2354 | 
2355 |   /gonzales-pe/4.3.0:
2356 |     resolution:
2357 |       {
2358 |         integrity: sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==,
2359 |       }
2360 |     engines: { node: ">=0.6.0" }
2361 |     hasBin: true
2362 |     dependencies:
2363 |       minimist: 1.2.6
2364 |     dev: true
2365 | 
2366 |   /has-bigints/1.0.2:
2367 |     resolution:
2368 |       {
2369 |         integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==,
2370 |       }
2371 |     dev: true
2372 | 
2373 |   /has-flag/3.0.0:
2374 |     resolution:
2375 |       {
2376 |         integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==,
2377 |       }
2378 |     engines: { node: ">=4" }
2379 |     dev: false
2380 | 
2381 |   /has-flag/4.0.0:
2382 |     resolution:
2383 |       {
2384 |         integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==,
2385 |       }
2386 |     engines: { node: ">=8" }
2387 |     dev: true
2388 | 
2389 |   /has-property-descriptors/1.0.0:
2390 |     resolution:
2391 |       {
2392 |         integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==,
2393 |       }
2394 |     dependencies:
2395 |       get-intrinsic: 1.1.2
2396 |     dev: true
2397 | 
2398 |   /has-symbols/1.0.3:
2399 |     resolution:
2400 |       {
2401 |         integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==,
2402 |       }
2403 |     engines: { node: ">= 0.4" }
2404 |     dev: true
2405 | 
2406 |   /has-tostringtag/1.0.0:
2407 |     resolution:
2408 |       {
2409 |         integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==,
2410 |       }
2411 |     engines: { node: ">= 0.4" }
2412 |     dependencies:
2413 |       has-symbols: 1.0.3
2414 |     dev: true
2415 | 
2416 |   /has/1.0.3:
2417 |     resolution:
2418 |       {
2419 |         integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==,
2420 |       }
2421 |     engines: { node: ">= 0.4.0" }
2422 |     dependencies:
2423 |       function-bind: 1.1.1
2424 |     dev: true
2425 | 
2426 |   /human-signals/2.1.0:
2427 |     resolution:
2428 |       {
2429 |         integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==,
2430 |       }
2431 |     engines: { node: ">=10.17.0" }
2432 |     dev: true
2433 | 
2434 |   /human-signals/3.0.1:
2435 |     resolution:
2436 |       {
2437 |         integrity: sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==,
2438 |       }
2439 |     engines: { node: ">=12.20.0" }
2440 |     dev: true
2441 | 
2442 |   /husky/8.0.1:
2443 |     resolution:
2444 |       {
2445 |         integrity: sha512-xs7/chUH/CKdOCs7Zy0Aev9e/dKOMZf3K1Az1nar3tzlv0jfqnYtu235bstsWTmXOR0EfINrPa97yy4Lz6RiKw==,
2446 |       }
2447 |     engines: { node: ">=14" }
2448 |     hasBin: true
2449 |     dev: true
2450 | 
2451 |   /ignore-walk/5.0.1:
2452 |     resolution:
2453 |       {
2454 |         integrity: sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==,
2455 |       }
2456 |     engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 }
2457 |     dependencies:
2458 |       minimatch: 5.1.0
2459 |     dev: true
2460 | 
2461 |   /ignore/5.2.0:
2462 |     resolution:
2463 |       {
2464 |         integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==,
2465 |       }
2466 |     engines: { node: ">= 4" }
2467 |     dev: true
2468 | 
2469 |   /import-fresh/3.3.0:
2470 |     resolution:
2471 |       {
2472 |         integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==,
2473 |       }
2474 |     engines: { node: ">=6" }
2475 |     dependencies:
2476 |       parent-module: 1.0.1
2477 |       resolve-from: 4.0.0
2478 |     dev: true
2479 | 
2480 |   /imurmurhash/0.1.4:
2481 |     resolution:
2482 |       {
2483 |         integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==,
2484 |       }
2485 |     engines: { node: ">=0.8.19" }
2486 |     dev: true
2487 | 
2488 |   /indent-string/4.0.0:
2489 |     resolution:
2490 |       {
2491 |         integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==,
2492 |       }
2493 |     engines: { node: ">=8" }
2494 |     dev: true
2495 | 
2496 |   /inflight/1.0.6:
2497 |     resolution:
2498 |       {
2499 |         integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==,
2500 |       }
2501 |     dependencies:
2502 |       once: 1.4.0
2503 |       wrappy: 1.0.2
2504 |     dev: true
2505 | 
2506 |   /inherits/2.0.4:
2507 |     resolution:
2508 |       {
2509 |         integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==,
2510 |       }
2511 |     dev: true
2512 | 
2513 |   /internal-slot/1.0.3:
2514 |     resolution:
2515 |       {
2516 |         integrity: sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==,
2517 |       }
2518 |     engines: { node: ">= 0.4" }
2519 |     dependencies:
2520 |       get-intrinsic: 1.1.2
2521 |       has: 1.0.3
2522 |       side-channel: 1.0.4
2523 |     dev: true
2524 | 
2525 |   /is-bigint/1.0.4:
2526 |     resolution:
2527 |       {
2528 |         integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==,
2529 |       }
2530 |     dependencies:
2531 |       has-bigints: 1.0.2
2532 |     dev: true
2533 | 
2534 |   /is-binary-path/2.1.0:
2535 |     resolution:
2536 |       {
2537 |         integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==,
2538 |       }
2539 |     engines: { node: ">=8" }
2540 |     dependencies:
2541 |       binary-extensions: 2.2.0
2542 |     dev: true
2543 | 
2544 |   /is-boolean-object/1.1.2:
2545 |     resolution:
2546 |       {
2547 |         integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==,
2548 |       }
2549 |     engines: { node: ">= 0.4" }
2550 |     dependencies:
2551 |       call-bind: 1.0.2
2552 |       has-tostringtag: 1.0.0
2553 |     dev: true
2554 | 
2555 |   /is-callable/1.2.4:
2556 |     resolution:
2557 |       {
2558 |         integrity: sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==,
2559 |       }
2560 |     engines: { node: ">= 0.4" }
2561 |     dev: true
2562 | 
2563 |   /is-core-module/2.9.0:
2564 |     resolution:
2565 |       {
2566 |         integrity: sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==,
2567 |       }
2568 |     dependencies:
2569 |       has: 1.0.3
2570 |     dev: true
2571 | 
2572 |   /is-date-object/1.0.5:
2573 |     resolution:
2574 |       {
2575 |         integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==,
2576 |       }
2577 |     engines: { node: ">= 0.4" }
2578 |     dependencies:
2579 |       has-tostringtag: 1.0.0
2580 |     dev: true
2581 | 
2582 |   /is-extglob/2.1.1:
2583 |     resolution:
2584 |       {
2585 |         integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==,
2586 |       }
2587 |     engines: { node: ">=0.10.0" }
2588 |     dev: true
2589 | 
2590 |   /is-fullwidth-code-point/3.0.0:
2591 |     resolution:
2592 |       {
2593 |         integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==,
2594 |       }
2595 |     engines: { node: ">=8" }
2596 |     dev: true
2597 | 
2598 |   /is-fullwidth-code-point/4.0.0:
2599 |     resolution:
2600 |       {
2601 |         integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==,
2602 |       }
2603 |     engines: { node: ">=12" }
2604 |     dev: true
2605 | 
2606 |   /is-glob/4.0.3:
2607 |     resolution:
2608 |       {
2609 |         integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==,
2610 |       }
2611 |     engines: { node: ">=0.10.0" }
2612 |     dependencies:
2613 |       is-extglob: 2.1.1
2614 |     dev: true
2615 | 
2616 |   /is-negative-zero/2.0.2:
2617 |     resolution:
2618 |       {
2619 |         integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==,
2620 |       }
2621 |     engines: { node: ">= 0.4" }
2622 |     dev: true
2623 | 
2624 |   /is-number-object/1.0.7:
2625 |     resolution:
2626 |       {
2627 |         integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==,
2628 |       }
2629 |     engines: { node: ">= 0.4" }
2630 |     dependencies:
2631 |       has-tostringtag: 1.0.0
2632 |     dev: true
2633 | 
2634 |   /is-number/7.0.0:
2635 |     resolution:
2636 |       {
2637 |         integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==,
2638 |       }
2639 |     engines: { node: ">=0.12.0" }
2640 |     dev: true
2641 | 
2642 |   /is-regex/1.1.4:
2643 |     resolution:
2644 |       {
2645 |         integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==,
2646 |       }
2647 |     engines: { node: ">= 0.4" }
2648 |     dependencies:
2649 |       call-bind: 1.0.2
2650 |       has-tostringtag: 1.0.0
2651 |     dev: true
2652 | 
2653 |   /is-shared-array-buffer/1.0.2:
2654 |     resolution:
2655 |       {
2656 |         integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==,
2657 |       }
2658 |     dependencies:
2659 |       call-bind: 1.0.2
2660 |     dev: true
2661 | 
2662 |   /is-stream/2.0.1:
2663 |     resolution:
2664 |       {
2665 |         integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==,
2666 |       }
2667 |     engines: { node: ">=8" }
2668 |     dev: true
2669 | 
2670 |   /is-stream/3.0.0:
2671 |     resolution:
2672 |       {
2673 |         integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==,
2674 |       }
2675 |     engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 }
2676 |     dev: true
2677 | 
2678 |   /is-string/1.0.7:
2679 |     resolution:
2680 |       {
2681 |         integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==,
2682 |       }
2683 |     engines: { node: ">= 0.4" }
2684 |     dependencies:
2685 |       has-tostringtag: 1.0.0
2686 |     dev: true
2687 | 
2688 |   /is-symbol/1.0.4:
2689 |     resolution:
2690 |       {
2691 |         integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==,
2692 |       }
2693 |     engines: { node: ">= 0.4" }
2694 |     dependencies:
2695 |       has-symbols: 1.0.3
2696 |     dev: true
2697 | 
2698 |   /is-weakref/1.0.2:
2699 |     resolution:
2700 |       {
2701 |         integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==,
2702 |       }
2703 |     dependencies:
2704 |       call-bind: 1.0.2
2705 |     dev: true
2706 | 
2707 |   /isexe/2.0.0:
2708 |     resolution:
2709 |       {
2710 |         integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==,
2711 |       }
2712 |     dev: true
2713 | 
2714 |   /joycon/3.1.1:
2715 |     resolution:
2716 |       {
2717 |         integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==,
2718 |       }
2719 |     engines: { node: ">=10" }
2720 |     dev: true
2721 | 
2722 |   /js-tokens/4.0.0:
2723 |     resolution:
2724 |       {
2725 |         integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==,
2726 |       }
2727 | 
2728 |   /js-yaml/4.1.0:
2729 |     resolution:
2730 |       {
2731 |         integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==,
2732 |       }
2733 |     hasBin: true
2734 |     dependencies:
2735 |       argparse: 2.0.1
2736 |     dev: true
2737 | 
2738 |   /jsesc/2.5.2:
2739 |     resolution:
2740 |       {
2741 |         integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==,
2742 |       }
2743 |     engines: { node: ">=4" }
2744 |     hasBin: true
2745 |     dev: false
2746 | 
2747 |   /json-schema-traverse/0.4.1:
2748 |     resolution:
2749 |       {
2750 |         integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==,
2751 |       }
2752 |     dev: true
2753 | 
2754 |   /json-stable-stringify-without-jsonify/1.0.1:
2755 |     resolution:
2756 |       {
2757 |         integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==,
2758 |       }
2759 |     dev: true
2760 | 
2761 |   /json5/1.0.1:
2762 |     resolution:
2763 |       {
2764 |         integrity: sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==,
2765 |       }
2766 |     hasBin: true
2767 |     dependencies:
2768 |       minimist: 1.2.6
2769 |     dev: true
2770 | 
2771 |   /json5/2.2.1:
2772 |     resolution:
2773 |       {
2774 |         integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==,
2775 |       }
2776 |     engines: { node: ">=6" }
2777 |     hasBin: true
2778 |     dev: false
2779 | 
2780 |   /jsx-ast-utils/3.3.2:
2781 |     resolution:
2782 |       {
2783 |         integrity: sha512-4ZCADZHRkno244xlNnn4AOG6sRQ7iBZ5BbgZ4vW4y5IZw7cVUD1PPeblm1xx/nfmMxPdt/LHsXZW8z/j58+l9Q==,
2784 |       }
2785 |     engines: { node: ">=4.0" }
2786 |     dependencies:
2787 |       array-includes: 3.1.5
2788 |       object.assign: 4.1.2
2789 |     dev: true
2790 | 
2791 |   /kill-port/2.0.1:
2792 |     resolution:
2793 |       {
2794 |         integrity: sha512-e0SVOV5jFo0mx8r7bS29maVWp17qGqLBZ5ricNSajON6//kmb7qqqNnml4twNE8Dtj97UQD+gNFOaipS/q1zzQ==,
2795 |       }
2796 |     hasBin: true
2797 |     dependencies:
2798 |       get-them-args: 1.3.2
2799 |       shell-exec: 1.0.2
2800 |     dev: true
2801 | 
2802 |   /levn/0.4.1:
2803 |     resolution:
2804 |       {
2805 |         integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==,
2806 |       }
2807 |     engines: { node: ">= 0.8.0" }
2808 |     dependencies:
2809 |       prelude-ls: 1.2.1
2810 |       type-check: 0.4.0
2811 |     dev: true
2812 | 
2813 |   /lilconfig/2.0.5:
2814 |     resolution:
2815 |       {
2816 |         integrity: sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==,
2817 |       }
2818 |     engines: { node: ">=10" }
2819 |     dev: true
2820 | 
2821 |   /lines-and-columns/1.2.4:
2822 |     resolution:
2823 |       {
2824 |         integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==,
2825 |       }
2826 |     dev: true
2827 | 
2828 |   /linguist-languages/7.21.0:
2829 |     resolution:
2830 |       {
2831 |         integrity: sha512-KrWJJbFOvlDhjlt5OhUipVlXg+plUfRurICAyij1ZVxQcqPt/zeReb9KiUVdGUwwhS/2KS9h3TbyfYLA5MDlxQ==,
2832 |       }
2833 |     dev: false
2834 | 
2835 |   /lint-staged/13.0.3:
2836 |     resolution:
2837 |       {
2838 |         integrity: sha512-9hmrwSCFroTSYLjflGI8Uk+GWAwMB4OlpU4bMJEAT5d/llQwtYKoim4bLOyLCuWFAhWEupE0vkIFqtw/WIsPug==,
2839 |       }
2840 |     engines: { node: ^14.13.1 || >=16.0.0 }
2841 |     hasBin: true
2842 |     dependencies:
2843 |       cli-truncate: 3.1.0
2844 |       colorette: 2.0.19
2845 |       commander: 9.3.0
2846 |       debug: 4.3.4
2847 |       execa: 6.1.0
2848 |       lilconfig: 2.0.5
2849 |       listr2: 4.0.5
2850 |       micromatch: 4.0.5
2851 |       normalize-path: 3.0.0
2852 |       object-inspect: 1.12.2
2853 |       pidtree: 0.6.0
2854 |       string-argv: 0.3.1
2855 |       yaml: 2.1.1
2856 |     transitivePeerDependencies:
2857 |       - enquirer
2858 |       - supports-color
2859 |     dev: true
2860 | 
2861 |   /listr2/4.0.5:
2862 |     resolution:
2863 |       {
2864 |         integrity: sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==,
2865 |       }
2866 |     engines: { node: ">=12" }
2867 |     peerDependencies:
2868 |       enquirer: ">= 2.3.0 < 3"
2869 |     peerDependenciesMeta:
2870 |       enquirer:
2871 |         optional: true
2872 |     dependencies:
2873 |       cli-truncate: 2.1.0
2874 |       colorette: 2.0.19
2875 |       log-update: 4.0.0
2876 |       p-map: 4.0.0
2877 |       rfdc: 1.3.0
2878 |       rxjs: 7.5.5
2879 |       through: 2.3.8
2880 |       wrap-ansi: 7.0.0
2881 |     dev: true
2882 | 
2883 |   /load-tsconfig/0.2.3:
2884 |     resolution:
2885 |       {
2886 |         integrity: sha512-iyT2MXws+dc2Wi6o3grCFtGXpeMvHmJqS27sMPGtV2eUu4PeFnG+33I8BlFK1t1NWMjOpcx9bridn5yxLDX2gQ==,
2887 |       }
2888 |     engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 }
2889 |     dev: true
2890 | 
2891 |   /local-pkg/0.4.1:
2892 |     resolution:
2893 |       {
2894 |         integrity: sha512-lL87ytIGP2FU5PWwNDo0w3WhIo2gopIAxPg9RxDYF7m4rr5ahuZxP22xnJHIvaLTe4Z9P6uKKY2UHiwyB4pcrw==,
2895 |       }
2896 |     engines: { node: ">=14" }
2897 |     dev: true
2898 | 
2899 |   /locate-path/2.0.0:
2900 |     resolution:
2901 |       {
2902 |         integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==,
2903 |       }
2904 |     engines: { node: ">=4" }
2905 |     dependencies:
2906 |       p-locate: 2.0.0
2907 |       path-exists: 3.0.0
2908 |     dev: true
2909 | 
2910 |   /lodash.merge/4.6.2:
2911 |     resolution:
2912 |       {
2913 |         integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==,
2914 |       }
2915 |     dev: true
2916 | 
2917 |   /lodash.sortby/4.7.0:
2918 |     resolution:
2919 |       {
2920 |         integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==,
2921 |       }
2922 |     dev: true
2923 | 
2924 |   /lodash/4.17.21:
2925 |     resolution:
2926 |       {
2927 |         integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==,
2928 |       }
2929 |     dev: true
2930 | 
2931 |   /log-update/4.0.0:
2932 |     resolution:
2933 |       {
2934 |         integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==,
2935 |       }
2936 |     engines: { node: ">=10" }
2937 |     dependencies:
2938 |       ansi-escapes: 4.3.2
2939 |       cli-cursor: 3.1.0
2940 |       slice-ansi: 4.0.0
2941 |       wrap-ansi: 6.2.0
2942 |     dev: true
2943 | 
2944 |   /loose-envify/1.4.0:
2945 |     resolution:
2946 |       {
2947 |         integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==,
2948 |       }
2949 |     hasBin: true
2950 |     dependencies:
2951 |       js-tokens: 4.0.0
2952 |     dev: true
2953 | 
2954 |   /loupe/2.3.4:
2955 |     resolution:
2956 |       {
2957 |         integrity: sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==,
2958 |       }
2959 |     dependencies:
2960 |       get-func-name: 2.0.0
2961 |     dev: true
2962 | 
2963 |   /lru-cache/6.0.0:
2964 |     resolution:
2965 |       {
2966 |         integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==,
2967 |       }
2968 |     engines: { node: ">=10" }
2969 |     dependencies:
2970 |       yallist: 4.0.0
2971 |     dev: true
2972 | 
2973 |   /map-age-cleaner/0.1.3:
2974 |     resolution:
2975 |       {
2976 |         integrity: sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==,
2977 |       }
2978 |     engines: { node: ">=6" }
2979 |     dependencies:
2980 |       p-defer: 1.0.0
2981 |     dev: false
2982 | 
2983 |   /mem/8.1.1:
2984 |     resolution:
2985 |       {
2986 |         integrity: sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==,
2987 |       }
2988 |     engines: { node: ">=10" }
2989 |     dependencies:
2990 |       map-age-cleaner: 0.1.3
2991 |       mimic-fn: 3.1.0
2992 |     dev: false
2993 | 
2994 |   /merge-stream/2.0.0:
2995 |     resolution:
2996 |       {
2997 |         integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==,
2998 |       }
2999 |     dev: true
3000 | 
3001 |   /merge2/1.4.1:
3002 |     resolution:
3003 |       {
3004 |         integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==,
3005 |       }
3006 |     engines: { node: ">= 8" }
3007 |     dev: true
3008 | 
3009 |   /micromatch/4.0.5:
3010 |     resolution:
3011 |       {
3012 |         integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==,
3013 |       }
3014 |     engines: { node: ">=8.6" }
3015 |     dependencies:
3016 |       braces: 3.0.2
3017 |       picomatch: 2.3.1
3018 |     dev: true
3019 | 
3020 |   /mimic-fn/2.1.0:
3021 |     resolution:
3022 |       {
3023 |         integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==,
3024 |       }
3025 |     engines: { node: ">=6" }
3026 |     dev: true
3027 | 
3028 |   /mimic-fn/3.1.0:
3029 |     resolution:
3030 |       {
3031 |         integrity: sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==,
3032 |       }
3033 |     engines: { node: ">=8" }
3034 |     dev: false
3035 | 
3036 |   /mimic-fn/4.0.0:
3037 |     resolution:
3038 |       {
3039 |         integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==,
3040 |       }
3041 |     engines: { node: ">=12" }
3042 |     dev: true
3043 | 
3044 |   /minimatch/3.1.2:
3045 |     resolution:
3046 |       {
3047 |         integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==,
3048 |       }
3049 |     dependencies:
3050 |       brace-expansion: 1.1.11
3051 |     dev: true
3052 | 
3053 |   /minimatch/5.1.0:
3054 |     resolution:
3055 |       {
3056 |         integrity: sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==,
3057 |       }
3058 |     engines: { node: ">=10" }
3059 |     dependencies:
3060 |       brace-expansion: 2.0.1
3061 |     dev: true
3062 | 
3063 |   /minimist/1.2.6:
3064 |     resolution:
3065 |       {
3066 |         integrity: sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==,
3067 |       }
3068 |     dev: true
3069 | 
3070 |   /mri/1.2.0:
3071 |     resolution:
3072 |       {
3073 |         integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==,
3074 |       }
3075 |     engines: { node: ">=4" }
3076 |     dev: true
3077 | 
3078 |   /ms/2.0.0:
3079 |     resolution:
3080 |       {
3081 |         integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==,
3082 |       }
3083 |     dev: true
3084 | 
3085 |   /ms/2.1.2:
3086 |     resolution:
3087 |       {
3088 |         integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==,
3089 |       }
3090 | 
3091 |   /ms/2.1.3:
3092 |     resolution:
3093 |       {
3094 |         integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==,
3095 |       }
3096 |     dev: true
3097 | 
3098 |   /mz/2.7.0:
3099 |     resolution:
3100 |       {
3101 |         integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==,
3102 |       }
3103 |     dependencies:
3104 |       any-promise: 1.3.0
3105 |       object-assign: 4.1.1
3106 |       thenify-all: 1.6.0
3107 |     dev: true
3108 | 
3109 |   /nanoid/3.3.4:
3110 |     resolution:
3111 |       {
3112 |         integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==,
3113 |       }
3114 |     engines: { node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1 }
3115 |     hasBin: true
3116 |     dev: true
3117 | 
3118 |   /natural-compare/1.4.0:
3119 |     resolution:
3120 |       {
3121 |         integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==,
3122 |       }
3123 |     dev: true
3124 | 
3125 |   /node-releases/2.0.6:
3126 |     resolution:
3127 |       {
3128 |         integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==,
3129 |       }
3130 |     dev: false
3131 | 
3132 |   /normalize-path/3.0.0:
3133 |     resolution:
3134 |       {
3135 |         integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==,
3136 |       }
3137 |     engines: { node: ">=0.10.0" }
3138 |     dev: true
3139 | 
3140 |   /npm-bundled/1.1.2:
3141 |     resolution:
3142 |       {
3143 |         integrity: sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==,
3144 |       }
3145 |     dependencies:
3146 |       npm-normalize-package-bin: 1.0.1
3147 |     dev: true
3148 | 
3149 |   /npm-normalize-package-bin/1.0.1:
3150 |     resolution:
3151 |       {
3152 |         integrity: sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==,
3153 |       }
3154 |     dev: true
3155 | 
3156 |   /npm-packlist/5.1.1:
3157 |     resolution:
3158 |       {
3159 |         integrity: sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==,
3160 |       }
3161 |     engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 }
3162 |     hasBin: true
3163 |     dependencies:
3164 |       glob: 8.0.3
3165 |       ignore-walk: 5.0.1
3166 |       npm-bundled: 1.1.2
3167 |       npm-normalize-package-bin: 1.0.1
3168 |     dev: true
3169 | 
3170 |   /npm-run-path/4.0.1:
3171 |     resolution:
3172 |       {
3173 |         integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==,
3174 |       }
3175 |     engines: { node: ">=8" }
3176 |     dependencies:
3177 |       path-key: 3.1.1
3178 |     dev: true
3179 | 
3180 |   /npm-run-path/5.1.0:
3181 |     resolution:
3182 |       {
3183 |         integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==,
3184 |       }
3185 |     engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 }
3186 |     dependencies:
3187 |       path-key: 4.0.0
3188 |     dev: true
3189 | 
3190 |   /object-assign/4.1.1:
3191 |     resolution:
3192 |       {
3193 |         integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==,
3194 |       }
3195 |     engines: { node: ">=0.10.0" }
3196 |     dev: true
3197 | 
3198 |   /object-inspect/1.12.2:
3199 |     resolution:
3200 |       {
3201 |         integrity: sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==,
3202 |       }
3203 |     dev: true
3204 | 
3205 |   /object-keys/1.1.1:
3206 |     resolution:
3207 |       {
3208 |         integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==,
3209 |       }
3210 |     engines: { node: ">= 0.4" }
3211 |     dev: true
3212 | 
3213 |   /object.assign/4.1.2:
3214 |     resolution:
3215 |       {
3216 |         integrity: sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==,
3217 |       }
3218 |     engines: { node: ">= 0.4" }
3219 |     dependencies:
3220 |       call-bind: 1.0.2
3221 |       define-properties: 1.1.4
3222 |       has-symbols: 1.0.3
3223 |       object-keys: 1.1.1
3224 |     dev: true
3225 | 
3226 |   /object.entries/1.1.5:
3227 |     resolution:
3228 |       {
3229 |         integrity: sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==,
3230 |       }
3231 |     engines: { node: ">= 0.4" }
3232 |     dependencies:
3233 |       call-bind: 1.0.2
3234 |       define-properties: 1.1.4
3235 |       es-abstract: 1.20.1
3236 |     dev: true
3237 | 
3238 |   /object.fromentries/2.0.5:
3239 |     resolution:
3240 |       {
3241 |         integrity: sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==,
3242 |       }
3243 |     engines: { node: ">= 0.4" }
3244 |     dependencies:
3245 |       call-bind: 1.0.2
3246 |       define-properties: 1.1.4
3247 |       es-abstract: 1.20.1
3248 |     dev: true
3249 | 
3250 |   /object.hasown/1.1.1:
3251 |     resolution:
3252 |       {
3253 |         integrity: sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A==,
3254 |       }
3255 |     dependencies:
3256 |       define-properties: 1.1.4
3257 |       es-abstract: 1.20.1
3258 |     dev: true
3259 | 
3260 |   /object.values/1.1.5:
3261 |     resolution:
3262 |       {
3263 |         integrity: sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==,
3264 |       }
3265 |     engines: { node: ">= 0.4" }
3266 |     dependencies:
3267 |       call-bind: 1.0.2
3268 |       define-properties: 1.1.4
3269 |       es-abstract: 1.20.1
3270 |     dev: true
3271 | 
3272 |   /once/1.4.0:
3273 |     resolution:
3274 |       {
3275 |         integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==,
3276 |       }
3277 |     dependencies:
3278 |       wrappy: 1.0.2
3279 |     dev: true
3280 | 
3281 |   /onetime/5.1.2:
3282 |     resolution:
3283 |       {
3284 |         integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==,
3285 |       }
3286 |     engines: { node: ">=6" }
3287 |     dependencies:
3288 |       mimic-fn: 2.1.0
3289 |     dev: true
3290 | 
3291 |   /onetime/6.0.0:
3292 |     resolution:
3293 |       {
3294 |         integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==,
3295 |       }
3296 |     engines: { node: ">=12" }
3297 |     dependencies:
3298 |       mimic-fn: 4.0.0
3299 |     dev: true
3300 | 
3301 |   /optionator/0.9.1:
3302 |     resolution:
3303 |       {
3304 |         integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==,
3305 |       }
3306 |     engines: { node: ">= 0.8.0" }
3307 |     dependencies:
3308 |       deep-is: 0.1.4
3309 |       fast-levenshtein: 2.0.6
3310 |       levn: 0.4.1
3311 |       prelude-ls: 1.2.1
3312 |       type-check: 0.4.0
3313 |       word-wrap: 1.2.3
3314 |     dev: true
3315 | 
3316 |   /p-defer/1.0.0:
3317 |     resolution:
3318 |       {
3319 |         integrity: sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==,
3320 |       }
3321 |     engines: { node: ">=4" }
3322 |     dev: false
3323 | 
3324 |   /p-limit/1.3.0:
3325 |     resolution:
3326 |       {
3327 |         integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==,
3328 |       }
3329 |     engines: { node: ">=4" }
3330 |     dependencies:
3331 |       p-try: 1.0.0
3332 |     dev: true
3333 | 
3334 |   /p-locate/2.0.0:
3335 |     resolution:
3336 |       {
3337 |         integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==,
3338 |       }
3339 |     engines: { node: ">=4" }
3340 |     dependencies:
3341 |       p-limit: 1.3.0
3342 |     dev: true
3343 | 
3344 |   /p-map/4.0.0:
3345 |     resolution:
3346 |       {
3347 |         integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==,
3348 |       }
3349 |     engines: { node: ">=10" }
3350 |     dependencies:
3351 |       aggregate-error: 3.1.0
3352 |     dev: true
3353 | 
3354 |   /p-try/1.0.0:
3355 |     resolution:
3356 |       {
3357 |         integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==,
3358 |       }
3359 |     engines: { node: ">=4" }
3360 |     dev: true
3361 | 
3362 |   /parent-module/1.0.1:
3363 |     resolution:
3364 |       {
3365 |         integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==,
3366 |       }
3367 |     engines: { node: ">=6" }
3368 |     dependencies:
3369 |       callsites: 3.1.0
3370 |     dev: true
3371 | 
3372 |   /path-exists/3.0.0:
3373 |     resolution:
3374 |       {
3375 |         integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==,
3376 |       }
3377 |     engines: { node: ">=4" }
3378 |     dev: true
3379 | 
3380 |   /path-is-absolute/1.0.1:
3381 |     resolution:
3382 |       {
3383 |         integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==,
3384 |       }
3385 |     engines: { node: ">=0.10.0" }
3386 |     dev: true
3387 | 
3388 |   /path-key/3.1.1:
3389 |     resolution:
3390 |       {
3391 |         integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==,
3392 |       }
3393 |     engines: { node: ">=8" }
3394 |     dev: true
3395 | 
3396 |   /path-key/4.0.0:
3397 |     resolution:
3398 |       {
3399 |         integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==,
3400 |       }
3401 |     engines: { node: ">=12" }
3402 |     dev: true
3403 | 
3404 |   /path-parse/1.0.7:
3405 |     resolution:
3406 |       {
3407 |         integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==,
3408 |       }
3409 |     dev: true
3410 | 
3411 |   /path-type/4.0.0:
3412 |     resolution:
3413 |       {
3414 |         integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==,
3415 |       }
3416 |     engines: { node: ">=8" }
3417 |     dev: true
3418 | 
3419 |   /pathval/1.1.1:
3420 |     resolution:
3421 |       {
3422 |         integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==,
3423 |       }
3424 |     dev: true
3425 | 
3426 |   /php-parser/3.1.0-beta.11:
3427 |     resolution:
3428 |       {
3429 |         integrity: sha512-aKhWHXun6FKa0MX+GcJtEoLPSWuGQTiEkNgckVjT95OAnKG33c+zsDQEpXx4R74PQ030YZLNq9XV7odKapbOsg==,
3430 |       }
3431 |     dev: false
3432 | 
3433 |   /picocolors/1.0.0:
3434 |     resolution:
3435 |       {
3436 |         integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==,
3437 |       }
3438 | 
3439 |   /picomatch/2.3.1:
3440 |     resolution:
3441 |       {
3442 |         integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==,
3443 |       }
3444 |     engines: { node: ">=8.6" }
3445 |     dev: true
3446 | 
3447 |   /pidtree/0.6.0:
3448 |     resolution:
3449 |       {
3450 |         integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==,
3451 |       }
3452 |     engines: { node: ">=0.10" }
3453 |     hasBin: true
3454 |     dev: true
3455 | 
3456 |   /pirates/4.0.5:
3457 |     resolution:
3458 |       {
3459 |         integrity: sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==,
3460 |       }
3461 |     engines: { node: ">= 6" }
3462 |     dev: true
3463 | 
3464 |   /postcss-load-config/3.1.4:
3465 |     resolution:
3466 |       {
3467 |         integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==,
3468 |       }
3469 |     engines: { node: ">= 10" }
3470 |     peerDependencies:
3471 |       postcss: ">=8.0.9"
3472 |       ts-node: ">=9.0.0"
3473 |     peerDependenciesMeta:
3474 |       postcss:
3475 |         optional: true
3476 |       ts-node:
3477 |         optional: true
3478 |     dependencies:
3479 |       lilconfig: 2.0.5
3480 |       yaml: 1.10.2
3481 |     dev: true
3482 | 
3483 |   /postcss/8.4.14:
3484 |     resolution:
3485 |       {
3486 |         integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==,
3487 |       }
3488 |     engines: { node: ^10 || ^12 || >=14 }
3489 |     dependencies:
3490 |       nanoid: 3.3.4
3491 |       picocolors: 1.0.0
3492 |       source-map-js: 1.0.2
3493 |     dev: true
3494 | 
3495 |   /prelude-ls/1.2.1:
3496 |     resolution:
3497 |       {
3498 |         integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==,
3499 |       }
3500 |     engines: { node: ">= 0.8.0" }
3501 |     dev: true
3502 | 
3503 |   /prettier/2.7.1:
3504 |     resolution:
3505 |       {
3506 |         integrity: sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==,
3507 |       }
3508 |     engines: { node: ">=10.13.0" }
3509 |     hasBin: true
3510 | 
3511 |   /prop-types/15.8.1:
3512 |     resolution:
3513 |       {
3514 |         integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==,
3515 |       }
3516 |     dependencies:
3517 |       loose-envify: 1.4.0
3518 |       object-assign: 4.1.1
3519 |       react-is: 16.13.1
3520 |     dev: true
3521 | 
3522 |   /publint/0.1.1:
3523 |     resolution:
3524 |       {
3525 |         integrity: sha512-XMmyWCXlsF+NpW71aFAnrc1cIo0s+qZ5B9xzTNJLgMXjJtt1V1m9V1PsOPhLoDFpnFEMfKKlmt0HgfsMdKcpIA==,
3526 |       }
3527 |     engines: { node: ">=16" }
3528 |     hasBin: true
3529 |     dependencies:
3530 |       npm-packlist: 5.1.1
3531 |       picocolors: 1.0.0
3532 |       sade: 1.8.1
3533 |     dev: true
3534 | 
3535 |   /punycode/2.1.1:
3536 |     resolution:
3537 |       {
3538 |         integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==,
3539 |       }
3540 |     engines: { node: ">=6" }
3541 |     dev: true
3542 | 
3543 |   /queue-microtask/1.2.3:
3544 |     resolution:
3545 |       {
3546 |         integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==,
3547 |       }
3548 |     dev: true
3549 | 
3550 |   /react-is/16.13.1:
3551 |     resolution:
3552 |       {
3553 |         integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==,
3554 |       }
3555 |     dev: true
3556 | 
3557 |   /readdirp/3.6.0:
3558 |     resolution:
3559 |       {
3560 |         integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==,
3561 |       }
3562 |     engines: { node: ">=8.10.0" }
3563 |     dependencies:
3564 |       picomatch: 2.3.1
3565 |     dev: true
3566 | 
3567 |   /regexp.prototype.flags/1.4.3:
3568 |     resolution:
3569 |       {
3570 |         integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==,
3571 |       }
3572 |     engines: { node: ">= 0.4" }
3573 |     dependencies:
3574 |       call-bind: 1.0.2
3575 |       define-properties: 1.1.4
3576 |       functions-have-names: 1.2.3
3577 |     dev: true
3578 | 
3579 |   /regexpp/3.2.0:
3580 |     resolution:
3581 |       {
3582 |         integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==,
3583 |       }
3584 |     engines: { node: ">=8" }
3585 |     dev: true
3586 | 
3587 |   /resolve-from/4.0.0:
3588 |     resolution:
3589 |       {
3590 |         integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==,
3591 |       }
3592 |     engines: { node: ">=4" }
3593 |     dev: true
3594 | 
3595 |   /resolve-from/5.0.0:
3596 |     resolution:
3597 |       {
3598 |         integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==,
3599 |       }
3600 |     engines: { node: ">=8" }
3601 |     dev: true
3602 | 
3603 |   /resolve/1.22.1:
3604 |     resolution:
3605 |       {
3606 |         integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==,
3607 |       }
3608 |     hasBin: true
3609 |     dependencies:
3610 |       is-core-module: 2.9.0
3611 |       path-parse: 1.0.7
3612 |       supports-preserve-symlinks-flag: 1.0.0
3613 |     dev: true
3614 | 
3615 |   /resolve/2.0.0-next.4:
3616 |     resolution:
3617 |       {
3618 |         integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==,
3619 |       }
3620 |     hasBin: true
3621 |     dependencies:
3622 |       is-core-module: 2.9.0
3623 |       path-parse: 1.0.7
3624 |       supports-preserve-symlinks-flag: 1.0.0
3625 |     dev: true
3626 | 
3627 |   /restore-cursor/3.1.0:
3628 |     resolution:
3629 |       {
3630 |         integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==,
3631 |       }
3632 |     engines: { node: ">=8" }
3633 |     dependencies:
3634 |       onetime: 5.1.2
3635 |       signal-exit: 3.0.7
3636 |     dev: true
3637 | 
3638 |   /reusify/1.0.4:
3639 |     resolution:
3640 |       {
3641 |         integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==,
3642 |       }
3643 |     engines: { iojs: ">=1.0.0", node: ">=0.10.0" }
3644 |     dev: true
3645 | 
3646 |   /rfdc/1.3.0:
3647 |     resolution:
3648 |       {
3649 |         integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==,
3650 |       }
3651 |     dev: true
3652 | 
3653 |   /rimraf/3.0.2:
3654 |     resolution:
3655 |       {
3656 |         integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==,
3657 |       }
3658 |     hasBin: true
3659 |     dependencies:
3660 |       glob: 7.2.3
3661 |     dev: true
3662 | 
3663 |   /rollup/2.76.0:
3664 |     resolution:
3665 |       {
3666 |         integrity: sha512-9jwRIEY1jOzKLj3nsY/yot41r19ITdQrhs+q3ggNWhr9TQgduHqANvPpS32RNpzGklJu3G1AJfvlZLi/6wFgWA==,
3667 |       }
3668 |     engines: { node: ">=10.0.0" }
3669 |     hasBin: true
3670 |     optionalDependencies:
3671 |       fsevents: 2.3.2
3672 |     dev: true
3673 | 
3674 |   /run-parallel/1.2.0:
3675 |     resolution:
3676 |       {
3677 |         integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==,
3678 |       }
3679 |     dependencies:
3680 |       queue-microtask: 1.2.3
3681 |     dev: true
3682 | 
3683 |   /rxjs/7.5.5:
3684 |     resolution:
3685 |       {
3686 |         integrity: sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==,
3687 |       }
3688 |     dependencies:
3689 |       tslib: 2.4.0
3690 |     dev: true
3691 | 
3692 |   /sade/1.8.1:
3693 |     resolution:
3694 |       {
3695 |         integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==,
3696 |       }
3697 |     engines: { node: ">=6" }
3698 |     dependencies:
3699 |       mri: 1.2.0
3700 |     dev: true
3701 | 
3702 |   /safe-buffer/5.1.2:
3703 |     resolution:
3704 |       {
3705 |         integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==,
3706 |       }
3707 |     dev: false
3708 | 
3709 |   /semver/6.3.0:
3710 |     resolution:
3711 |       {
3712 |         integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==,
3713 |       }
3714 |     hasBin: true
3715 | 
3716 |   /semver/7.3.7:
3717 |     resolution:
3718 |       {
3719 |         integrity: sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==,
3720 |       }
3721 |     engines: { node: ">=10" }
3722 |     hasBin: true
3723 |     dependencies:
3724 |       lru-cache: 6.0.0
3725 |     dev: true
3726 | 
3727 |   /shebang-command/2.0.0:
3728 |     resolution:
3729 |       {
3730 |         integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==,
3731 |       }
3732 |     engines: { node: ">=8" }
3733 |     dependencies:
3734 |       shebang-regex: 3.0.0
3735 |     dev: true
3736 | 
3737 |   /shebang-regex/3.0.0:
3738 |     resolution:
3739 |       {
3740 |         integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==,
3741 |       }
3742 |     engines: { node: ">=8" }
3743 |     dev: true
3744 | 
3745 |   /shell-exec/1.0.2:
3746 |     resolution:
3747 |       {
3748 |         integrity: sha512-jyVd+kU2X+mWKMmGhx4fpWbPsjvD53k9ivqetutVW/BQ+WIZoDoP4d8vUMGezV6saZsiNoW2f9GIhg9Dondohg==,
3749 |       }
3750 |     dev: true
3751 | 
3752 |   /side-channel/1.0.4:
3753 |     resolution:
3754 |       {
3755 |         integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==,
3756 |       }
3757 |     dependencies:
3758 |       call-bind: 1.0.2
3759 |       get-intrinsic: 1.1.2
3760 |       object-inspect: 1.12.2
3761 |     dev: true
3762 | 
3763 |   /signal-exit/3.0.7:
3764 |     resolution:
3765 |       {
3766 |         integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==,
3767 |       }
3768 |     dev: true
3769 | 
3770 |   /slash/3.0.0:
3771 |     resolution:
3772 |       {
3773 |         integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==,
3774 |       }
3775 |     engines: { node: ">=8" }
3776 |     dev: true
3777 | 
3778 |   /slice-ansi/3.0.0:
3779 |     resolution:
3780 |       {
3781 |         integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==,
3782 |       }
3783 |     engines: { node: ">=8" }
3784 |     dependencies:
3785 |       ansi-styles: 4.3.0
3786 |       astral-regex: 2.0.0
3787 |       is-fullwidth-code-point: 3.0.0
3788 |     dev: true
3789 | 
3790 |   /slice-ansi/4.0.0:
3791 |     resolution:
3792 |       {
3793 |         integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==,
3794 |       }
3795 |     engines: { node: ">=10" }
3796 |     dependencies:
3797 |       ansi-styles: 4.3.0
3798 |       astral-regex: 2.0.0
3799 |       is-fullwidth-code-point: 3.0.0
3800 |     dev: true
3801 | 
3802 |   /slice-ansi/5.0.0:
3803 |     resolution:
3804 |       {
3805 |         integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==,
3806 |       }
3807 |     engines: { node: ">=12" }
3808 |     dependencies:
3809 |       ansi-styles: 6.1.0
3810 |       is-fullwidth-code-point: 4.0.0
3811 |     dev: true
3812 | 
3813 |   /source-map-js/1.0.2:
3814 |     resolution:
3815 |       {
3816 |         integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==,
3817 |       }
3818 |     engines: { node: ">=0.10.0" }
3819 |     dev: true
3820 | 
3821 |   /source-map/0.8.0-beta.0:
3822 |     resolution:
3823 |       {
3824 |         integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==,
3825 |       }
3826 |     engines: { node: ">= 8" }
3827 |     dependencies:
3828 |       whatwg-url: 7.1.0
3829 |     dev: true
3830 | 
3831 |   /string-argv/0.3.1:
3832 |     resolution:
3833 |       {
3834 |         integrity: sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==,
3835 |       }
3836 |     engines: { node: ">=0.6.19" }
3837 |     dev: true
3838 | 
3839 |   /string-width/4.2.3:
3840 |     resolution:
3841 |       {
3842 |         integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==,
3843 |       }
3844 |     engines: { node: ">=8" }
3845 |     dependencies:
3846 |       emoji-regex: 8.0.0
3847 |       is-fullwidth-code-point: 3.0.0
3848 |       strip-ansi: 6.0.1
3849 |     dev: true
3850 | 
3851 |   /string-width/5.1.2:
3852 |     resolution:
3853 |       {
3854 |         integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==,
3855 |       }
3856 |     engines: { node: ">=12" }
3857 |     dependencies:
3858 |       eastasianwidth: 0.2.0
3859 |       emoji-regex: 9.2.2
3860 |       strip-ansi: 7.0.1
3861 |     dev: true
3862 | 
3863 |   /string.prototype.matchall/4.0.7:
3864 |     resolution:
3865 |       {
3866 |         integrity: sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==,
3867 |       }
3868 |     dependencies:
3869 |       call-bind: 1.0.2
3870 |       define-properties: 1.1.4
3871 |       es-abstract: 1.20.1
3872 |       get-intrinsic: 1.1.2
3873 |       has-symbols: 1.0.3
3874 |       internal-slot: 1.0.3
3875 |       regexp.prototype.flags: 1.4.3
3876 |       side-channel: 1.0.4
3877 |     dev: true
3878 | 
3879 |   /string.prototype.trimend/1.0.5:
3880 |     resolution:
3881 |       {
3882 |         integrity: sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==,
3883 |       }
3884 |     dependencies:
3885 |       call-bind: 1.0.2
3886 |       define-properties: 1.1.4
3887 |       es-abstract: 1.20.1
3888 |     dev: true
3889 | 
3890 |   /string.prototype.trimstart/1.0.5:
3891 |     resolution:
3892 |       {
3893 |         integrity: sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==,
3894 |       }
3895 |     dependencies:
3896 |       call-bind: 1.0.2
3897 |       define-properties: 1.1.4
3898 |       es-abstract: 1.20.1
3899 |     dev: true
3900 | 
3901 |   /strip-ansi/6.0.1:
3902 |     resolution:
3903 |       {
3904 |         integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==,
3905 |       }
3906 |     engines: { node: ">=8" }
3907 |     dependencies:
3908 |       ansi-regex: 5.0.1
3909 |     dev: true
3910 | 
3911 |   /strip-ansi/7.0.1:
3912 |     resolution:
3913 |       {
3914 |         integrity: sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==,
3915 |       }
3916 |     engines: { node: ">=12" }
3917 |     dependencies:
3918 |       ansi-regex: 6.0.1
3919 |     dev: true
3920 | 
3921 |   /strip-bom/3.0.0:
3922 |     resolution:
3923 |       {
3924 |         integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==,
3925 |       }
3926 |     engines: { node: ">=4" }
3927 |     dev: true
3928 | 
3929 |   /strip-final-newline/2.0.0:
3930 |     resolution:
3931 |       {
3932 |         integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==,
3933 |       }
3934 |     engines: { node: ">=6" }
3935 |     dev: true
3936 | 
3937 |   /strip-final-newline/3.0.0:
3938 |     resolution:
3939 |       {
3940 |         integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==,
3941 |       }
3942 |     engines: { node: ">=12" }
3943 |     dev: true
3944 | 
3945 |   /strip-json-comments/3.1.1:
3946 |     resolution:
3947 |       {
3948 |         integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==,
3949 |       }
3950 |     engines: { node: ">=8" }
3951 |     dev: true
3952 | 
3953 |   /sucrase/3.23.0:
3954 |     resolution:
3955 |       {
3956 |         integrity: sha512-xgC1xboStzGhCnRywlBf/DLmkC+SkdAKqrNCDsxGrzM0phR5oUxoFKiQNrsc2D8wDdAm03iLbSZqjHDddo3IzQ==,
3957 |       }
3958 |     engines: { node: ">=8" }
3959 |     hasBin: true
3960 |     dependencies:
3961 |       commander: 4.1.1
3962 |       glob: 7.1.6
3963 |       lines-and-columns: 1.2.4
3964 |       mz: 2.7.0
3965 |       pirates: 4.0.5
3966 |       ts-interface-checker: 0.1.13
3967 |     dev: true
3968 | 
3969 |   /supports-color/5.5.0:
3970 |     resolution:
3971 |       {
3972 |         integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==,
3973 |       }
3974 |     engines: { node: ">=4" }
3975 |     dependencies:
3976 |       has-flag: 3.0.0
3977 |     dev: false
3978 | 
3979 |   /supports-color/7.2.0:
3980 |     resolution:
3981 |       {
3982 |         integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==,
3983 |       }
3984 |     engines: { node: ">=8" }
3985 |     dependencies:
3986 |       has-flag: 4.0.0
3987 |     dev: true
3988 | 
3989 |   /supports-preserve-symlinks-flag/1.0.0:
3990 |     resolution:
3991 |       {
3992 |         integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==,
3993 |       }
3994 |     engines: { node: ">= 0.4" }
3995 |     dev: true
3996 | 
3997 |   /text-table/0.2.0:
3998 |     resolution:
3999 |       {
4000 |         integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==,
4001 |       }
4002 |     dev: true
4003 | 
4004 |   /thenify-all/1.6.0:
4005 |     resolution:
4006 |       {
4007 |         integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==,
4008 |       }
4009 |     engines: { node: ">=0.8" }
4010 |     dependencies:
4011 |       thenify: 3.3.1
4012 |     dev: true
4013 | 
4014 |   /thenify/3.3.1:
4015 |     resolution:
4016 |       {
4017 |         integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==,
4018 |       }
4019 |     dependencies:
4020 |       any-promise: 1.3.0
4021 |     dev: true
4022 | 
4023 |   /through/2.3.8:
4024 |     resolution:
4025 |       {
4026 |         integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==,
4027 |       }
4028 |     dev: true
4029 | 
4030 |   /tinypool/0.2.2:
4031 |     resolution:
4032 |       {
4033 |         integrity: sha512-tp4n5OARNL3v8ntdJUyo5NsDfwvUtu8isB43USjrsQxQrADDKY6UGBkmFaw/2vNmEt8S/uSm2U5FhkiK1eAFGw==,
4034 |       }
4035 |     engines: { node: ">=14.0.0" }
4036 |     dev: true
4037 | 
4038 |   /tinyspy/0.3.3:
4039 |     resolution:
4040 |       {
4041 |         integrity: sha512-gRiUR8fuhUf0W9lzojPf1N1euJYA30ISebSfgca8z76FOvXtVXqd5ojEIaKLWbDQhAaC3ibxZIjqbyi4ybjcTw==,
4042 |       }
4043 |     engines: { node: ">=14.0.0" }
4044 |     dev: true
4045 | 
4046 |   /to-fast-properties/2.0.0:
4047 |     resolution:
4048 |       {
4049 |         integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==,
4050 |       }
4051 |     engines: { node: ">=4" }
4052 | 
4053 |   /to-regex-range/5.0.1:
4054 |     resolution:
4055 |       {
4056 |         integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==,
4057 |       }
4058 |     engines: { node: ">=8.0" }
4059 |     dependencies:
4060 |       is-number: 7.0.0
4061 |     dev: true
4062 | 
4063 |   /tr46/1.0.1:
4064 |     resolution:
4065 |       {
4066 |         integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==,
4067 |       }
4068 |     dependencies:
4069 |       punycode: 2.1.1
4070 |     dev: true
4071 | 
4072 |   /tree-kill/1.2.2:
4073 |     resolution:
4074 |       {
4075 |         integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==,
4076 |       }
4077 |     hasBin: true
4078 |     dev: true
4079 | 
4080 |   /ts-interface-checker/0.1.13:
4081 |     resolution:
4082 |       {
4083 |         integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==,
4084 |       }
4085 |     dev: true
4086 | 
4087 |   /tsconfig-paths/3.14.1:
4088 |     resolution:
4089 |       {
4090 |         integrity: sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==,
4091 |       }
4092 |     dependencies:
4093 |       "@types/json5": 0.0.29
4094 |       json5: 1.0.1
4095 |       minimist: 1.2.6
4096 |       strip-bom: 3.0.0
4097 |     dev: true
4098 | 
4099 |   /tslib/1.14.1:
4100 |     resolution:
4101 |       {
4102 |         integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==,
4103 |       }
4104 |     dev: true
4105 | 
4106 |   /tslib/2.4.0:
4107 |     resolution:
4108 |       {
4109 |         integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==,
4110 |       }
4111 |     dev: true
4112 | 
4113 |   /tsup/6.1.3_typescript@4.7.4:
4114 |     resolution:
4115 |       {
4116 |         integrity: sha512-eRpBnbfpDFng+EJNTQ90N7QAf4HAGGC7O3buHIjroKWK7D1ibk9/YnR/3cS8HsMU5T+6Oi+cnF+yU5WmCnB//Q==,
4117 |       }
4118 |     engines: { node: ">=14" }
4119 |     hasBin: true
4120 |     peerDependencies:
4121 |       "@swc/core": ^1
4122 |       postcss: ^8.4.12
4123 |       typescript: ^4.1.0
4124 |     peerDependenciesMeta:
4125 |       "@swc/core":
4126 |         optional: true
4127 |       postcss:
4128 |         optional: true
4129 |       typescript:
4130 |         optional: true
4131 |     dependencies:
4132 |       bundle-require: 3.0.4_esbuild@0.14.48
4133 |       cac: 6.7.12
4134 |       chokidar: 3.5.3
4135 |       debug: 4.3.4
4136 |       esbuild: 0.14.48
4137 |       execa: 5.1.1
4138 |       globby: 11.1.0
4139 |       joycon: 3.1.1
4140 |       postcss-load-config: 3.1.4
4141 |       resolve-from: 5.0.0
4142 |       rollup: 2.76.0
4143 |       source-map: 0.8.0-beta.0
4144 |       sucrase: 3.23.0
4145 |       tree-kill: 1.2.2
4146 |       typescript: 4.7.4
4147 |     transitivePeerDependencies:
4148 |       - supports-color
4149 |       - ts-node
4150 |     dev: true
4151 | 
4152 |   /tsutils/3.21.0_typescript@4.7.4:
4153 |     resolution:
4154 |       {
4155 |         integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==,
4156 |       }
4157 |     engines: { node: ">= 6" }
4158 |     peerDependencies:
4159 |       typescript: ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
4160 |     dependencies:
4161 |       tslib: 1.14.1
4162 |       typescript: 4.7.4
4163 |     dev: true
4164 | 
4165 |   /type-check/0.4.0:
4166 |     resolution:
4167 |       {
4168 |         integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==,
4169 |       }
4170 |     engines: { node: ">= 0.8.0" }
4171 |     dependencies:
4172 |       prelude-ls: 1.2.1
4173 |     dev: true
4174 | 
4175 |   /type-detect/4.0.8:
4176 |     resolution:
4177 |       {
4178 |         integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==,
4179 |       }
4180 |     engines: { node: ">=4" }
4181 |     dev: true
4182 | 
4183 |   /type-fest/0.20.2:
4184 |     resolution:
4185 |       {
4186 |         integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==,
4187 |       }
4188 |     engines: { node: ">=10" }
4189 |     dev: true
4190 | 
4191 |   /type-fest/0.21.3:
4192 |     resolution:
4193 |       {
4194 |         integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==,
4195 |       }
4196 |     engines: { node: ">=10" }
4197 |     dev: true
4198 | 
4199 |   /typescript/4.7.4:
4200 |     resolution:
4201 |       {
4202 |         integrity: sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==,
4203 |       }
4204 |     engines: { node: ">=4.2.0" }
4205 |     hasBin: true
4206 |     dev: true
4207 | 
4208 |   /unbox-primitive/1.0.2:
4209 |     resolution:
4210 |       {
4211 |         integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==,
4212 |       }
4213 |     dependencies:
4214 |       call-bind: 1.0.2
4215 |       has-bigints: 1.0.2
4216 |       has-symbols: 1.0.3
4217 |       which-boxed-primitive: 1.0.2
4218 |     dev: true
4219 | 
4220 |   /update-browserslist-db/1.0.5_browserslist@4.21.3:
4221 |     resolution:
4222 |       {
4223 |         integrity: sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==,
4224 |       }
4225 |     hasBin: true
4226 |     peerDependencies:
4227 |       browserslist: ">= 4.21.0"
4228 |     dependencies:
4229 |       browserslist: 4.21.3
4230 |       escalade: 3.1.1
4231 |       picocolors: 1.0.0
4232 |     dev: false
4233 | 
4234 |   /uri-js/4.4.1:
4235 |     resolution:
4236 |       {
4237 |         integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==,
4238 |       }
4239 |     dependencies:
4240 |       punycode: 2.1.1
4241 |     dev: true
4242 | 
4243 |   /v8-compile-cache/2.3.0:
4244 |     resolution:
4245 |       {
4246 |         integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==,
4247 |       }
4248 |     dev: true
4249 | 
4250 |   /vite/3.0.4:
4251 |     resolution:
4252 |       {
4253 |         integrity: sha512-NU304nqnBeOx2MkQnskBQxVsa0pRAH5FphokTGmyy8M3oxbvw7qAXts2GORxs+h/2vKsD+osMhZ7An6yK6F1dA==,
4254 |       }
4255 |     engines: { node: ^14.18.0 || >=16.0.0 }
4256 |     hasBin: true
4257 |     peerDependencies:
4258 |       less: "*"
4259 |       sass: "*"
4260 |       stylus: "*"
4261 |       terser: ^5.4.0
4262 |     peerDependenciesMeta:
4263 |       less:
4264 |         optional: true
4265 |       sass:
4266 |         optional: true
4267 |       stylus:
4268 |         optional: true
4269 |       terser:
4270 |         optional: true
4271 |     dependencies:
4272 |       esbuild: 0.14.48
4273 |       postcss: 8.4.14
4274 |       resolve: 1.22.1
4275 |       rollup: 2.76.0
4276 |     optionalDependencies:
4277 |       fsevents: 2.3.2
4278 |     dev: true
4279 | 
4280 |   /vitest/0.17.1:
4281 |     resolution:
4282 |       {
4283 |         integrity: sha512-d6NsFC6FPmZ5XdiSYfW5rwJ/b8060wqe2steNNlVbhO69HWma6CucIm5g7PXlCSkmKvrdEbUsZHPAarlH83VGw==,
4284 |       }
4285 |     engines: { node: ">=v14.16.0" }
4286 |     hasBin: true
4287 |     peerDependencies:
4288 |       "@edge-runtime/vm": "*"
4289 |       "@vitest/ui": "*"
4290 |       c8: "*"
4291 |       happy-dom: "*"
4292 |       jsdom: "*"
4293 |     peerDependenciesMeta:
4294 |       "@edge-runtime/vm":
4295 |         optional: true
4296 |       "@vitest/ui":
4297 |         optional: true
4298 |       c8:
4299 |         optional: true
4300 |       happy-dom:
4301 |         optional: true
4302 |       jsdom:
4303 |         optional: true
4304 |     dependencies:
4305 |       "@types/chai": 4.3.1
4306 |       "@types/chai-subset": 1.3.3
4307 |       "@types/node": 18.0.3
4308 |       chai: 4.3.6
4309 |       debug: 4.3.4
4310 |       local-pkg: 0.4.1
4311 |       tinypool: 0.2.2
4312 |       tinyspy: 0.3.3
4313 |       vite: 3.0.4
4314 |     transitivePeerDependencies:
4315 |       - less
4316 |       - sass
4317 |       - stylus
4318 |       - supports-color
4319 |       - terser
4320 |     dev: true
4321 | 
4322 |   /webidl-conversions/4.0.2:
4323 |     resolution:
4324 |       {
4325 |         integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==,
4326 |       }
4327 |     dev: true
4328 | 
4329 |   /whatwg-url/7.1.0:
4330 |     resolution:
4331 |       {
4332 |         integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==,
4333 |       }
4334 |     dependencies:
4335 |       lodash.sortby: 4.7.0
4336 |       tr46: 1.0.1
4337 |       webidl-conversions: 4.0.2
4338 |     dev: true
4339 | 
4340 |   /which-boxed-primitive/1.0.2:
4341 |     resolution:
4342 |       {
4343 |         integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==,
4344 |       }
4345 |     dependencies:
4346 |       is-bigint: 1.0.4
4347 |       is-boolean-object: 1.1.2
4348 |       is-number-object: 1.0.7
4349 |       is-string: 1.0.7
4350 |       is-symbol: 1.0.4
4351 |     dev: true
4352 | 
4353 |   /which/2.0.2:
4354 |     resolution:
4355 |       {
4356 |         integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==,
4357 |       }
4358 |     engines: { node: ">= 8" }
4359 |     hasBin: true
4360 |     dependencies:
4361 |       isexe: 2.0.0
4362 |     dev: true
4363 | 
4364 |   /word-wrap/1.2.3:
4365 |     resolution:
4366 |       {
4367 |         integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==,
4368 |       }
4369 |     engines: { node: ">=0.10.0" }
4370 |     dev: true
4371 | 
4372 |   /wrap-ansi/6.2.0:
4373 |     resolution:
4374 |       {
4375 |         integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==,
4376 |       }
4377 |     engines: { node: ">=8" }
4378 |     dependencies:
4379 |       ansi-styles: 4.3.0
4380 |       string-width: 4.2.3
4381 |       strip-ansi: 6.0.1
4382 |     dev: true
4383 | 
4384 |   /wrap-ansi/7.0.0:
4385 |     resolution:
4386 |       {
4387 |         integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==,
4388 |       }
4389 |     engines: { node: ">=10" }
4390 |     dependencies:
4391 |       ansi-styles: 4.3.0
4392 |       string-width: 4.2.3
4393 |       strip-ansi: 6.0.1
4394 |     dev: true
4395 | 
4396 |   /wrappy/1.0.2:
4397 |     resolution:
4398 |       {
4399 |         integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==,
4400 |       }
4401 |     dev: true
4402 | 
4403 |   /yallist/4.0.0:
4404 |     resolution:
4405 |       {
4406 |         integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==,
4407 |       }
4408 |     dev: true
4409 | 
4410 |   /yaml/1.10.2:
4411 |     resolution:
4412 |       {
4413 |         integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==,
4414 |       }
4415 |     engines: { node: ">= 6" }
4416 |     dev: true
4417 | 
4418 |   /yaml/2.1.1:
4419 |     resolution:
4420 |       {
4421 |         integrity: sha512-o96x3OPo8GjWeSLF+wOAbrPfhFOGY0W00GNaxCDv+9hkcDJEnev1yh8S7pgHF0ik6zc8sQLuL8hjHjJULZp8bw==,
4422 |       }
4423 |     engines: { node: ">= 14" }
4424 |     dev: true
4425 | 


--------------------------------------------------------------------------------
/pnpm-workspace.yaml:
--------------------------------------------------------------------------------
1 | packages:
2 |   - "packages/*"
3 |   - "examples/*"
4 | 


--------------------------------------------------------------------------------
/readme.md:
--------------------------------------------------------------------------------
1 | packages/php-tag/readme.md


--------------------------------------------------------------------------------
/version:
--------------------------------------------------------------------------------
 1 | #!/bin/bash
 2 | PROJECT_NAME=php-tag
 3 | 
 4 | WHITE='\033[1;37m'
 5 | GREEN='\033[0;32m'
 6 | BLUE='\033[1;34m'
 7 | NC='\033[0m'
 8 | 
 9 | echo -e ${WHITE}Updating package versions${NC}
10 | pnpm -r --filter=./packages/* exec -- bash -c "echo -e ${BLUE@Q}\$PNPM_PACKAGE_NAME${NC@Q}@${GREEN@Q}\`npm version --allow-same-version --no-git-tag-version $@\`${NC@Q}"
11 | echo -e ${WHITE}Updating dependency versions in examples${NC}
12 | pnpm -r --filter=./examples/* update --workspace --save-workspace-protocol=false $PROJECT_NAME
13 | 


--------------------------------------------------------------------------------