├── .changeset ├── README.md └── config.json ├── .eslintrc.json ├── .github └── workflows │ ├── publish.yml │ └── quality-control.yml ├── .gitignore ├── .prettierignore ├── .prettierrc ├── CHANGELOG.md ├── LICENSE ├── README.md ├── package-lock.json ├── package.json ├── pnpm-lock.yaml ├── src ├── commands │ └── init.ts ├── index.ts ├── scripts │ └── syncnetworkconfig.ts ├── types │ └── types.ts └── util │ └── util.ts └── tsconfig.json /.changeset/README.md: -------------------------------------------------------------------------------- 1 | # Changesets 2 | 3 | Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works 4 | with multi-package repos, or single-package repos to help you version and publish your code. You can 5 | find the full documentation for it [in our repository](https://github.com/changesets/changesets) 6 | 7 | We have a quick list of common questions to get you started engaging with this project in 8 | [our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md) 9 | -------------------------------------------------------------------------------- /.changeset/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://unpkg.com/@changesets/config@2.3.1/schema.json", 3 | "changelog": "@changesets/cli/changelog", 4 | "commit": false, 5 | "fixed": [], 6 | "linked": [], 7 | "access": "restricted", 8 | "baseBranch": "main", 9 | "updateInternalDependencies": "patch", 10 | "ignore": [] 11 | } 12 | -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | "parser": "@typescript-eslint/parser", 4 | "extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended", "prettier"], 5 | "plugins": ["@typescript-eslint"], 6 | "ignorePatterns": ["*.cjs", "*.js", "dist/**/*"], 7 | "overrides": [], 8 | "env": { 9 | "es2017": true, 10 | "node": true 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- 1 | name: Publish 2 | on: 3 | push: 4 | branches: 5 | - 'main' 6 | 7 | concurrency: ${{ github.workflow }}-${{ github.ref }} 8 | 9 | jobs: 10 | publish: 11 | runs-on: ubuntu-latest 12 | steps: 13 | - uses: actions/checkout@v3 14 | - uses: pnpm/action-setup@v2 15 | with: 16 | version: 8 17 | - uses: actions/setup-node@v3 18 | with: 19 | node-version: 18.x 20 | cache: 'pnpm' 21 | - run: pnpm install --frozen-lockfile 22 | - name: Create Release Pull Request or Publish 23 | id: changets 24 | uses: changesets/action@v1 25 | with: 26 | publish: pnpm release 27 | env: 28 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 29 | NPM_TOKEN: ${{ secrets.NPM_TOKEN }} 30 | -------------------------------------------------------------------------------- /.github/workflows/quality-control.yml: -------------------------------------------------------------------------------- 1 | name: Publish 2 | on: 3 | push: 4 | branches: 5 | - '*' 6 | 7 | jobs: 8 | quality-control: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - uses: actions/checkout@v3 12 | - uses: pnpm/action-setup@v2 13 | with: 14 | version: 8 15 | - uses: actions/setup-node@v3 16 | with: 17 | node-version: 18.x 18 | cache: 'pnpm' 19 | - run: pnpm install --frozen-lockfile 20 | - run: pnpm lint 21 | - run: pnpm format 22 | - run: pnpm build 23 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | /.svelte-kit 5 | /package 6 | .env 7 | .env.* 8 | !.env.example 9 | vite.config.js.timestamp-* 10 | vite.config.ts.timestamp-* -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | /.svelte-kit 5 | /package 6 | .env 7 | .env.* 8 | !.env.example 9 | 10 | # Ignore files for PNPM, NPM and YARN 11 | pnpm-lock.yaml 12 | package-lock.json 13 | yarn.lock 14 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "useTabs": true, 3 | "singleQuote": true, 4 | "trailingComma": "none", 5 | "printWidth": 100 6 | } 7 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # capkit 2 | 3 | ## 0.5.22 4 | 5 | ### Patch Changes 6 | 7 | - ccf7291: remove ios/ and android/ from .gitignore 8 | 9 | ## 0.5.21 10 | 11 | ### Patch Changes 12 | 13 | - dcd9366: Added proper version to -V command 14 | 15 | ## 0.5.20 16 | 17 | ### Patch Changes 18 | 19 | - 321b66e: Fixed bug where selecting no platforms would make the installation freeze (ty Liam) 20 | 21 | ## 0.5.19 22 | 23 | ### Patch Changes 24 | 25 | - 2292fe7: Improved docs -> TOC 26 | 27 | ## 0.5.18 28 | 29 | ### Patch Changes 30 | 31 | - 8a784a3: Improved gitignore job, fills in missing gitignores 32 | 33 | ## 0.5.17 34 | 35 | ### Patch Changes 36 | 37 | - 6a0d894: Converted internal config to json rather than js 38 | 39 | ## 0.5.16 40 | 41 | ### Patch Changes 42 | 43 | - bee2a49: Improved exposed API types and names 44 | 45 | ## 0.5.15 46 | 47 | ### Patch Changes 48 | 49 | - 1835b5b: Dropped dev command from script and renamed hotreload to syncnetworkconfig 50 | 51 | ## 0.5.14 52 | 53 | ### Patch Changes 54 | 55 | - c82028e: Removed typo causing dev server to fail 56 | 57 | ## 0.5.13 58 | 59 | ### Patch Changes 60 | 61 | - 93717f7: Fixed tsup chunking 62 | 63 | ## 0.5.12 64 | 65 | ### Patch Changes 66 | 67 | - b95b79d: Fixed opening dev server and logging out events 68 | 69 | ## 0.5.11 70 | 71 | ### Patch Changes 72 | 73 | - 9d0f0b0: Converted hotreload to one script and uses now typescript 74 | 75 | ## 0.5.10 76 | 77 | ### Patch Changes 78 | 79 | - fcdb613: Added banner to CLI 80 | 81 | ## 0.5.9 82 | 83 | ### Patch Changes 84 | 85 | - 1d549c8: Added scripst to includes files in package.json 86 | 87 | ## 0.5.8 88 | 89 | ### Patch Changes 90 | 91 | - 3b464ed: Fixed file paths 92 | 93 | ## 0.5.7 94 | 95 | ### Patch Changes 96 | 97 | - 4cbc8cf: Fixed file pathing issues 98 | 99 | ## 0.5.6 100 | 101 | ### Patch Changes 102 | 103 | - 9520eef: Added types 104 | 105 | ## 0.5.5 106 | 107 | ### Patch Changes 108 | 109 | - f899bb2: Fixed types decl 110 | 111 | ## 0.5.4 112 | 113 | ### Patch Changes 114 | 115 | - 66c45f2: Added type decl for exports 116 | 117 | ## 0.5.3 118 | 119 | ### Patch Changes 120 | 121 | - b2392f6: Added export for programmatically initing project 122 | 123 | ## 0.5.2 124 | 125 | ### Patch Changes 126 | 127 | - 7701028: Migrated to typescript 128 | 129 | ## 0.5.1 130 | 131 | ### Patch Changes 132 | 133 | - bc0e345: Reordered jobs to make ios and android additions succeed 134 | 135 | ## 0.5.0 136 | 137 | ### Minor Changes 138 | 139 | - f8ebe9a: Added gitignore job, /ios, /android and temp files are now removed 140 | 141 | ## 0.4.2 142 | 143 | ### Patch Changes 144 | 145 | - 2343f15: Fixed kleur imports 146 | 147 | ## 0.4.1 148 | 149 | ### Patch Changes 150 | 151 | - fa374c0: Removed unneccecary import from "kleur" that caused issues using the CLI 152 | 153 | ## 0.4.0 154 | 155 | ### Minor Changes 156 | 157 | - 4037783: Added coloring to CLI 158 | 159 | ## 0.3.0 160 | 161 | ### Minor Changes 162 | 163 | - 7ce3d3d: Fixed files copy 164 | 165 | ## 0.2.0 166 | 167 | ### Minor Changes 168 | 169 | - ddadabd: Fixed files copy still not working fully after recent fix 170 | 171 | ## 0.1.1 172 | 173 | ### Patch Changes 174 | 175 | - e2aee5c: Fixed files not being copied correctly 176 | 177 | ## 0.1.0 178 | 179 | ### Minor Changes 180 | 181 | - f21149a: Introducing changesets 182 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Hugo Korte 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | --- 6 | 7 | [![MIT License](https://img.shields.io/badge/License-MIT-green.svg)](https://choosealicense.com/licenses/mit/) 8 | ![GitHub last commit](https://img.shields.io/github/last-commit/hugos68/capkit) 9 | ![npm](https://img.shields.io/npm/v/capkit) 10 | ![npm](https://img.shields.io/npm/dt/capkit) 11 | 12 | # CapKit 13 | 14 | The CapKit CLI is a command-line interface that simplifies the process of configuring Capacitor with SvelteKit. With CapKit, you can quickly set up Capacitor for your SvelteKit app, making it easy to build and deploy native mobile applications as well as progressive web apps. 15 | 16 | ## Table of Contents 17 | 18 | - [CapKit](#capkit) 19 | - [Table of Contents](#table-of-contents) 20 | - [Installation](#installation) 21 | - [Usage](#usage) 22 | - [Development](#development) 23 | - [Build](#build) 24 | - [API](#api) 25 | - [Capacitor](#capacitor) 26 | - [Examples](#examples) 27 | - [Issues](#issues) 28 | - [License](#license) 29 | 30 | # Installation 31 | 32 | Before installing CapKit, be aware that building native applications requires you to use [Adapter Static](https://kit.svelte.dev/docs/adapter-static) because of the way Capacitor works. If you are only building a progressive web app you can use any adapter you want. 33 | 34 | To get started with the CLI you can simply go into your existing sveltekit project and run: 35 | 36 | npm: 37 | 38 | ```bash 39 | npx capkit init 40 | ``` 41 | 42 | pnpm: 43 | 44 | ```bash 45 | pnpm dlx capkit init 46 | ``` 47 | 48 | yarn: 49 | 50 | ```bash 51 | yarn dlx capkit init 52 | ``` 53 | 54 | bun: 55 | 56 | ```bash 57 | bunx capkit init 58 | ``` 59 | 60 | Upon doing this, you will be guided through a series of questions to help you configure your project optimally. These questions will allow you to tailor the setup to your specific requirements. 61 | 62 | # Usage 63 | 64 | ## Development 65 | 66 | When working with native applications and using their respective IDE's (Android Studio or Xcode) you can enable hot reloading by running: 67 | 68 | npm: 69 | 70 | ```bash 71 | npm run dev:cap 72 | ``` 73 | 74 | pnpm: 75 | 76 | ```bash 77 | pnpm dev:cap 78 | ``` 79 | 80 | yarn: 81 | 82 | ```bash 83 | yarn dev:cap 84 | ``` 85 | 86 | bun: 87 | 88 | ```bash 89 | bun dev:cap 90 | ``` 91 | 92 | If you are solely focusing on creating a progressive web app you can run: 93 | 94 | npm: 95 | 96 | ```bash 97 | npm run dev 98 | ``` 99 | 100 | pnpm: 101 | 102 | ```bash 103 | pnpm dev 104 | ``` 105 | 106 | yarn: 107 | 108 | ```bash 109 | yarn dev 110 | ``` 111 | 112 | bun: 113 | 114 | ```bash 115 | bun dev 116 | ``` 117 | 118 | ## Build 119 | 120 | When building to native platforms you can use: 121 | 122 | npm: 123 | 124 | ```bash 125 | npm run build:cap 126 | ``` 127 | 128 | pnpm: 129 | 130 | ```bash 131 | pnpm build:cap 132 | ``` 133 | 134 | yarn: 135 | 136 | ```bash 137 | yarn build:cap 138 | ``` 139 | 140 | bun: 141 | 142 | ```bash 143 | bun build:cap 144 | ``` 145 | 146 | If you are solely focusing on building a progressive web app you can run: 147 | 148 | npm: 149 | 150 | ```bash 151 | npm run build 152 | ``` 153 | 154 | pnpm: 155 | 156 | ```bash 157 | pnpm build 158 | ``` 159 | 160 | yarn: 161 | 162 | ```bash 163 | yarn build 164 | ``` 165 | 166 | bun: 167 | 168 | ```bash 169 | bun build 170 | ``` 171 | 172 | ## API 173 | 174 | CapKit also exposes an API to allow you to use it programmatically. This can be useful if you want to integrate CapKit into your own tooling or if you want to extend CapKit's functionality, you can use it like this: 175 | 176 | ```ts 177 | import { initializeProject, type Options } from 'capkit'; 178 | 179 | const options: Options = { 180 | appName: 'My App', 181 | appId: 'com.myapp', 182 | platforms: ['android', 'ios'], 183 | plugins: ['clipboard', 'push-notifications'] // See a full list of plugins here: https://capacitorjs.com/docs/apis 184 | }; 185 | 186 | initializeProject(options); 187 | ``` 188 | 189 | # Capacitor 190 | 191 | For further questions about Capacitor you can refer to the [Capacitor Docs](https://capacitorjs.com/docs). 192 | 193 | # Examples 194 | 195 | Here is a example project of a SvelteKit app with Capacitor deployed to Vercel: https://capkit-vercel.vercel.app/ 196 | Repository: https://github.com/Hugos68/capkit-vercel 197 | 198 | # Issues 199 | 200 | If you encounter any issues or have concerns, please take a moment to [report them](https://github.com/Hugos68/capkit/issues/new). Your feedback is greatly appreciated and improves the quality of CapKit. 201 | 202 | # License 203 | 204 | This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. 205 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "capkit", 3 | "version": "0.5.22", 4 | "description": "", 5 | "main": "dist/index.js", 6 | "module": "dist/index.mjs", 7 | "types": "dist/index.d.ts", 8 | "bin": { 9 | "capkit": "dist/index.js" 10 | }, 11 | "scripts": { 12 | "dev": "tsup src/index.ts src/scripts/syncnetworkconfig.ts --format esm --dts --watch", 13 | "build": "tsup src/index.ts src/scripts/syncnetworkconfig.ts --format esm --dts", 14 | "lint": "prettier --check . && eslint .", 15 | "lint:write": "prettier --write . && eslint . --fix", 16 | "format": "prettier --write .", 17 | "check": "tsc --noEmit", 18 | "release": "pnpm run build && changeset publish" 19 | }, 20 | "repository": { 21 | "type": "git", 22 | "url": "https://github.com/Hugos68/capkit" 23 | }, 24 | "publishConfig": { 25 | "access": "public" 26 | }, 27 | "keywords": [ 28 | "CLI", 29 | "Svelte", 30 | "SvelteKit", 31 | "Capacitor" 32 | ], 33 | "author": { 34 | "name": "Hugo Korte", 35 | "url": "https://github.com/Hugos68" 36 | }, 37 | "license": "MIT", 38 | "dependencies": { 39 | "@clack/prompts": "^0.7.0", 40 | "commander": "^11.0.0", 41 | "kleur": "^4.1.5", 42 | "prettier": "^3.0.3" 43 | }, 44 | "type": "module", 45 | "devDependencies": { 46 | "@changesets/cli": "^2.26.2", 47 | "@types/node": "^20.6.3", 48 | "@typescript-eslint/eslint-plugin": "^6.7.2", 49 | "@typescript-eslint/parser": "^6.7.2", 50 | "eslint-config-prettier": "^9.0.0", 51 | "tsup": "^7.2.0", 52 | "typescript": "^5.2.2" 53 | }, 54 | "files": [ 55 | "dist", 56 | "scripts/*" 57 | ] 58 | } 59 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | dependencies: 8 | '@clack/prompts': 9 | specifier: ^0.7.0 10 | version: 0.7.0 11 | commander: 12 | specifier: ^11.0.0 13 | version: 11.0.0 14 | kleur: 15 | specifier: ^4.1.5 16 | version: 4.1.5 17 | prettier: 18 | specifier: ^3.0.3 19 | version: 3.0.3 20 | 21 | devDependencies: 22 | '@changesets/cli': 23 | specifier: ^2.26.2 24 | version: 2.26.2 25 | '@types/node': 26 | specifier: ^20.6.3 27 | version: 20.6.3 28 | '@typescript-eslint/eslint-plugin': 29 | specifier: ^6.7.2 30 | version: 6.7.2(@typescript-eslint/parser@6.7.2)(eslint@8.50.0)(typescript@5.2.2) 31 | '@typescript-eslint/parser': 32 | specifier: ^6.7.2 33 | version: 6.7.2(eslint@8.50.0)(typescript@5.2.2) 34 | eslint-config-prettier: 35 | specifier: ^9.0.0 36 | version: 9.0.0(eslint@8.50.0) 37 | tsup: 38 | specifier: ^7.2.0 39 | version: 7.2.0(typescript@5.2.2) 40 | typescript: 41 | specifier: ^5.2.2 42 | version: 5.2.2 43 | 44 | packages: 45 | 46 | /@aashutoshrathi/word-wrap@1.2.6: 47 | resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} 48 | engines: {node: '>=0.10.0'} 49 | dev: true 50 | 51 | /@babel/code-frame@7.22.13: 52 | resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} 53 | engines: {node: '>=6.9.0'} 54 | dependencies: 55 | '@babel/highlight': 7.22.20 56 | chalk: 2.4.2 57 | dev: true 58 | 59 | /@babel/helper-validator-identifier@7.22.20: 60 | resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} 61 | engines: {node: '>=6.9.0'} 62 | dev: true 63 | 64 | /@babel/highlight@7.22.20: 65 | resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} 66 | engines: {node: '>=6.9.0'} 67 | dependencies: 68 | '@babel/helper-validator-identifier': 7.22.20 69 | chalk: 2.4.2 70 | js-tokens: 4.0.0 71 | dev: true 72 | 73 | /@babel/runtime@7.22.15: 74 | resolution: {integrity: sha512-T0O+aa+4w0u06iNmapipJXMV4HoUir03hpx3/YqXXhu9xim3w+dVphjFWl1OH8NbZHw5Lbm9k45drDkgq2VNNA==} 75 | engines: {node: '>=6.9.0'} 76 | dependencies: 77 | regenerator-runtime: 0.14.0 78 | dev: true 79 | 80 | /@changesets/apply-release-plan@6.1.4: 81 | resolution: {integrity: sha512-FMpKF1fRlJyCZVYHr3CbinpZZ+6MwvOtWUuO8uo+svcATEoc1zRDcj23pAurJ2TZ/uVz1wFHH6K3NlACy0PLew==} 82 | dependencies: 83 | '@babel/runtime': 7.22.15 84 | '@changesets/config': 2.3.1 85 | '@changesets/get-version-range-type': 0.3.2 86 | '@changesets/git': 2.0.0 87 | '@changesets/types': 5.2.1 88 | '@manypkg/get-packages': 1.1.3 89 | detect-indent: 6.1.0 90 | fs-extra: 7.0.1 91 | lodash.startcase: 4.4.0 92 | outdent: 0.5.0 93 | prettier: 2.8.8 94 | resolve-from: 5.0.0 95 | semver: 7.5.4 96 | dev: true 97 | 98 | /@changesets/assemble-release-plan@5.2.4: 99 | resolution: {integrity: sha512-xJkWX+1/CUaOUWTguXEbCDTyWJFECEhmdtbkjhn5GVBGxdP/JwaHBIU9sW3FR6gD07UwZ7ovpiPclQZs+j+mvg==} 100 | dependencies: 101 | '@babel/runtime': 7.22.15 102 | '@changesets/errors': 0.1.4 103 | '@changesets/get-dependents-graph': 1.3.6 104 | '@changesets/types': 5.2.1 105 | '@manypkg/get-packages': 1.1.3 106 | semver: 7.5.4 107 | dev: true 108 | 109 | /@changesets/changelog-git@0.1.14: 110 | resolution: {integrity: sha512-+vRfnKtXVWsDDxGctOfzJsPhaCdXRYoe+KyWYoq5X/GqoISREiat0l3L8B0a453B2B4dfHGcZaGyowHbp9BSaA==} 111 | dependencies: 112 | '@changesets/types': 5.2.1 113 | dev: true 114 | 115 | /@changesets/cli@2.26.2: 116 | resolution: {integrity: sha512-dnWrJTmRR8bCHikJHl9b9HW3gXACCehz4OasrXpMp7sx97ECuBGGNjJhjPhdZNCvMy9mn4BWdplI323IbqsRig==} 117 | hasBin: true 118 | dependencies: 119 | '@babel/runtime': 7.22.15 120 | '@changesets/apply-release-plan': 6.1.4 121 | '@changesets/assemble-release-plan': 5.2.4 122 | '@changesets/changelog-git': 0.1.14 123 | '@changesets/config': 2.3.1 124 | '@changesets/errors': 0.1.4 125 | '@changesets/get-dependents-graph': 1.3.6 126 | '@changesets/get-release-plan': 3.0.17 127 | '@changesets/git': 2.0.0 128 | '@changesets/logger': 0.0.5 129 | '@changesets/pre': 1.0.14 130 | '@changesets/read': 0.5.9 131 | '@changesets/types': 5.2.1 132 | '@changesets/write': 0.2.3 133 | '@manypkg/get-packages': 1.1.3 134 | '@types/is-ci': 3.0.0 135 | '@types/semver': 7.5.2 136 | ansi-colors: 4.1.3 137 | chalk: 2.4.2 138 | enquirer: 2.4.1 139 | external-editor: 3.1.0 140 | fs-extra: 7.0.1 141 | human-id: 1.0.2 142 | is-ci: 3.0.1 143 | meow: 6.1.1 144 | outdent: 0.5.0 145 | p-limit: 2.3.0 146 | preferred-pm: 3.1.2 147 | resolve-from: 5.0.0 148 | semver: 7.5.4 149 | spawndamnit: 2.0.0 150 | term-size: 2.2.1 151 | tty-table: 4.2.1 152 | dev: true 153 | 154 | /@changesets/config@2.3.1: 155 | resolution: {integrity: sha512-PQXaJl82CfIXddUOppj4zWu+987GCw2M+eQcOepxN5s+kvnsZOwjEJO3DH9eVy+OP6Pg/KFEWdsECFEYTtbg6w==} 156 | dependencies: 157 | '@changesets/errors': 0.1.4 158 | '@changesets/get-dependents-graph': 1.3.6 159 | '@changesets/logger': 0.0.5 160 | '@changesets/types': 5.2.1 161 | '@manypkg/get-packages': 1.1.3 162 | fs-extra: 7.0.1 163 | micromatch: 4.0.5 164 | dev: true 165 | 166 | /@changesets/errors@0.1.4: 167 | resolution: {integrity: sha512-HAcqPF7snsUJ/QzkWoKfRfXushHTu+K5KZLJWPb34s4eCZShIf8BFO3fwq6KU8+G7L5KdtN2BzQAXOSXEyiY9Q==} 168 | dependencies: 169 | extendable-error: 0.1.7 170 | dev: true 171 | 172 | /@changesets/get-dependents-graph@1.3.6: 173 | resolution: {integrity: sha512-Q/sLgBANmkvUm09GgRsAvEtY3p1/5OCzgBE5vX3vgb5CvW0j7CEljocx5oPXeQSNph6FXulJlXV3Re/v3K3P3Q==} 174 | dependencies: 175 | '@changesets/types': 5.2.1 176 | '@manypkg/get-packages': 1.1.3 177 | chalk: 2.4.2 178 | fs-extra: 7.0.1 179 | semver: 7.5.4 180 | dev: true 181 | 182 | /@changesets/get-release-plan@3.0.17: 183 | resolution: {integrity: sha512-6IwKTubNEgoOZwDontYc2x2cWXfr6IKxP3IhKeK+WjyD6y3M4Gl/jdQvBw+m/5zWILSOCAaGLu2ZF6Q+WiPniw==} 184 | dependencies: 185 | '@babel/runtime': 7.22.15 186 | '@changesets/assemble-release-plan': 5.2.4 187 | '@changesets/config': 2.3.1 188 | '@changesets/pre': 1.0.14 189 | '@changesets/read': 0.5.9 190 | '@changesets/types': 5.2.1 191 | '@manypkg/get-packages': 1.1.3 192 | dev: true 193 | 194 | /@changesets/get-version-range-type@0.3.2: 195 | resolution: {integrity: sha512-SVqwYs5pULYjYT4op21F2pVbcrca4qA/bAA3FmFXKMN7Y+HcO8sbZUTx3TAy2VXulP2FACd1aC7f2nTuqSPbqg==} 196 | dev: true 197 | 198 | /@changesets/git@2.0.0: 199 | resolution: {integrity: sha512-enUVEWbiqUTxqSnmesyJGWfzd51PY4H7mH9yUw0hPVpZBJ6tQZFMU3F3mT/t9OJ/GjyiM4770i+sehAn6ymx6A==} 200 | dependencies: 201 | '@babel/runtime': 7.22.15 202 | '@changesets/errors': 0.1.4 203 | '@changesets/types': 5.2.1 204 | '@manypkg/get-packages': 1.1.3 205 | is-subdir: 1.2.0 206 | micromatch: 4.0.5 207 | spawndamnit: 2.0.0 208 | dev: true 209 | 210 | /@changesets/logger@0.0.5: 211 | resolution: {integrity: sha512-gJyZHomu8nASHpaANzc6bkQMO9gU/ib20lqew1rVx753FOxffnCrJlGIeQVxNWCqM+o6OOleCo/ivL8UAO5iFw==} 212 | dependencies: 213 | chalk: 2.4.2 214 | dev: true 215 | 216 | /@changesets/parse@0.3.16: 217 | resolution: {integrity: sha512-127JKNd167ayAuBjUggZBkmDS5fIKsthnr9jr6bdnuUljroiERW7FBTDNnNVyJ4l69PzR57pk6mXQdtJyBCJKg==} 218 | dependencies: 219 | '@changesets/types': 5.2.1 220 | js-yaml: 3.14.1 221 | dev: true 222 | 223 | /@changesets/pre@1.0.14: 224 | resolution: {integrity: sha512-dTsHmxQWEQekHYHbg+M1mDVYFvegDh9j/kySNuDKdylwfMEevTeDouR7IfHNyVodxZXu17sXoJuf2D0vi55FHQ==} 225 | dependencies: 226 | '@babel/runtime': 7.22.15 227 | '@changesets/errors': 0.1.4 228 | '@changesets/types': 5.2.1 229 | '@manypkg/get-packages': 1.1.3 230 | fs-extra: 7.0.1 231 | dev: true 232 | 233 | /@changesets/read@0.5.9: 234 | resolution: {integrity: sha512-T8BJ6JS6j1gfO1HFq50kU3qawYxa4NTbI/ASNVVCBTsKquy2HYwM9r7ZnzkiMe8IEObAJtUVGSrePCOxAK2haQ==} 235 | dependencies: 236 | '@babel/runtime': 7.22.15 237 | '@changesets/git': 2.0.0 238 | '@changesets/logger': 0.0.5 239 | '@changesets/parse': 0.3.16 240 | '@changesets/types': 5.2.1 241 | chalk: 2.4.2 242 | fs-extra: 7.0.1 243 | p-filter: 2.1.0 244 | dev: true 245 | 246 | /@changesets/types@4.1.0: 247 | resolution: {integrity: sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==} 248 | dev: true 249 | 250 | /@changesets/types@5.2.1: 251 | resolution: {integrity: sha512-myLfHbVOqaq9UtUKqR/nZA/OY7xFjQMdfgfqeZIBK4d0hA6pgxArvdv8M+6NUzzBsjWLOtvApv8YHr4qM+Kpfg==} 252 | dev: true 253 | 254 | /@changesets/write@0.2.3: 255 | resolution: {integrity: sha512-Dbamr7AIMvslKnNYsLFafaVORx4H0pvCA2MHqgtNCySMe1blImEyAEOzDmcgKAkgz4+uwoLz7demIrX+JBr/Xw==} 256 | dependencies: 257 | '@babel/runtime': 7.22.15 258 | '@changesets/types': 5.2.1 259 | fs-extra: 7.0.1 260 | human-id: 1.0.2 261 | prettier: 2.8.8 262 | dev: true 263 | 264 | /@clack/core@0.3.3: 265 | resolution: {integrity: sha512-5ZGyb75BUBjlll6eOa1m/IZBxwk91dooBWhPSL67sWcLS0zt9SnswRL0l26TVdBhb0wnWORRxUn//uH6n4z7+A==} 266 | dependencies: 267 | picocolors: 1.0.0 268 | sisteransi: 1.0.5 269 | dev: false 270 | 271 | /@clack/prompts@0.7.0: 272 | resolution: {integrity: sha512-0MhX9/B4iL6Re04jPrttDm+BsP8y6mS7byuv0BvXgdXhbV5PdlsHt55dvNsuBCPZ7xq1oTAOOuotR9NFbQyMSA==} 273 | dependencies: 274 | '@clack/core': 0.3.3 275 | picocolors: 1.0.0 276 | sisteransi: 1.0.5 277 | dev: false 278 | bundledDependencies: 279 | - is-unicode-supported 280 | 281 | /@esbuild/android-arm64@0.18.20: 282 | resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} 283 | engines: {node: '>=12'} 284 | cpu: [arm64] 285 | os: [android] 286 | requiresBuild: true 287 | dev: true 288 | optional: true 289 | 290 | /@esbuild/android-arm@0.18.20: 291 | resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==} 292 | engines: {node: '>=12'} 293 | cpu: [arm] 294 | os: [android] 295 | requiresBuild: true 296 | dev: true 297 | optional: true 298 | 299 | /@esbuild/android-x64@0.18.20: 300 | resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==} 301 | engines: {node: '>=12'} 302 | cpu: [x64] 303 | os: [android] 304 | requiresBuild: true 305 | dev: true 306 | optional: true 307 | 308 | /@esbuild/darwin-arm64@0.18.20: 309 | resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==} 310 | engines: {node: '>=12'} 311 | cpu: [arm64] 312 | os: [darwin] 313 | requiresBuild: true 314 | dev: true 315 | optional: true 316 | 317 | /@esbuild/darwin-x64@0.18.20: 318 | resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==} 319 | engines: {node: '>=12'} 320 | cpu: [x64] 321 | os: [darwin] 322 | requiresBuild: true 323 | dev: true 324 | optional: true 325 | 326 | /@esbuild/freebsd-arm64@0.18.20: 327 | resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==} 328 | engines: {node: '>=12'} 329 | cpu: [arm64] 330 | os: [freebsd] 331 | requiresBuild: true 332 | dev: true 333 | optional: true 334 | 335 | /@esbuild/freebsd-x64@0.18.20: 336 | resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==} 337 | engines: {node: '>=12'} 338 | cpu: [x64] 339 | os: [freebsd] 340 | requiresBuild: true 341 | dev: true 342 | optional: true 343 | 344 | /@esbuild/linux-arm64@0.18.20: 345 | resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==} 346 | engines: {node: '>=12'} 347 | cpu: [arm64] 348 | os: [linux] 349 | requiresBuild: true 350 | dev: true 351 | optional: true 352 | 353 | /@esbuild/linux-arm@0.18.20: 354 | resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==} 355 | engines: {node: '>=12'} 356 | cpu: [arm] 357 | os: [linux] 358 | requiresBuild: true 359 | dev: true 360 | optional: true 361 | 362 | /@esbuild/linux-ia32@0.18.20: 363 | resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==} 364 | engines: {node: '>=12'} 365 | cpu: [ia32] 366 | os: [linux] 367 | requiresBuild: true 368 | dev: true 369 | optional: true 370 | 371 | /@esbuild/linux-loong64@0.18.20: 372 | resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==} 373 | engines: {node: '>=12'} 374 | cpu: [loong64] 375 | os: [linux] 376 | requiresBuild: true 377 | dev: true 378 | optional: true 379 | 380 | /@esbuild/linux-mips64el@0.18.20: 381 | resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==} 382 | engines: {node: '>=12'} 383 | cpu: [mips64el] 384 | os: [linux] 385 | requiresBuild: true 386 | dev: true 387 | optional: true 388 | 389 | /@esbuild/linux-ppc64@0.18.20: 390 | resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==} 391 | engines: {node: '>=12'} 392 | cpu: [ppc64] 393 | os: [linux] 394 | requiresBuild: true 395 | dev: true 396 | optional: true 397 | 398 | /@esbuild/linux-riscv64@0.18.20: 399 | resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==} 400 | engines: {node: '>=12'} 401 | cpu: [riscv64] 402 | os: [linux] 403 | requiresBuild: true 404 | dev: true 405 | optional: true 406 | 407 | /@esbuild/linux-s390x@0.18.20: 408 | resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==} 409 | engines: {node: '>=12'} 410 | cpu: [s390x] 411 | os: [linux] 412 | requiresBuild: true 413 | dev: true 414 | optional: true 415 | 416 | /@esbuild/linux-x64@0.18.20: 417 | resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==} 418 | engines: {node: '>=12'} 419 | cpu: [x64] 420 | os: [linux] 421 | requiresBuild: true 422 | dev: true 423 | optional: true 424 | 425 | /@esbuild/netbsd-x64@0.18.20: 426 | resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==} 427 | engines: {node: '>=12'} 428 | cpu: [x64] 429 | os: [netbsd] 430 | requiresBuild: true 431 | dev: true 432 | optional: true 433 | 434 | /@esbuild/openbsd-x64@0.18.20: 435 | resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==} 436 | engines: {node: '>=12'} 437 | cpu: [x64] 438 | os: [openbsd] 439 | requiresBuild: true 440 | dev: true 441 | optional: true 442 | 443 | /@esbuild/sunos-x64@0.18.20: 444 | resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} 445 | engines: {node: '>=12'} 446 | cpu: [x64] 447 | os: [sunos] 448 | requiresBuild: true 449 | dev: true 450 | optional: true 451 | 452 | /@esbuild/win32-arm64@0.18.20: 453 | resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==} 454 | engines: {node: '>=12'} 455 | cpu: [arm64] 456 | os: [win32] 457 | requiresBuild: true 458 | dev: true 459 | optional: true 460 | 461 | /@esbuild/win32-ia32@0.18.20: 462 | resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==} 463 | engines: {node: '>=12'} 464 | cpu: [ia32] 465 | os: [win32] 466 | requiresBuild: true 467 | dev: true 468 | optional: true 469 | 470 | /@esbuild/win32-x64@0.18.20: 471 | resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==} 472 | engines: {node: '>=12'} 473 | cpu: [x64] 474 | os: [win32] 475 | requiresBuild: true 476 | dev: true 477 | optional: true 478 | 479 | /@eslint-community/eslint-utils@4.4.0(eslint@8.50.0): 480 | resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} 481 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 482 | peerDependencies: 483 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 484 | dependencies: 485 | eslint: 8.50.0 486 | eslint-visitor-keys: 3.4.3 487 | dev: true 488 | 489 | /@eslint-community/regexpp@4.8.1: 490 | resolution: {integrity: sha512-PWiOzLIUAjN/w5K17PoF4n6sKBw0gqLHPhywmYHP4t1VFQQVYeb1yWsJwnMVEMl3tUHME7X/SJPZLmtG7XBDxQ==} 491 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 492 | dev: true 493 | 494 | /@eslint/eslintrc@2.1.2: 495 | resolution: {integrity: sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==} 496 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 497 | dependencies: 498 | ajv: 6.12.6 499 | debug: 4.3.4 500 | espree: 9.6.1 501 | globals: 13.22.0 502 | ignore: 5.2.4 503 | import-fresh: 3.3.0 504 | js-yaml: 4.1.0 505 | minimatch: 3.1.2 506 | strip-json-comments: 3.1.1 507 | transitivePeerDependencies: 508 | - supports-color 509 | dev: true 510 | 511 | /@eslint/js@8.50.0: 512 | resolution: {integrity: sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==} 513 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 514 | dev: true 515 | 516 | /@humanwhocodes/config-array@0.11.11: 517 | resolution: {integrity: sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==} 518 | engines: {node: '>=10.10.0'} 519 | dependencies: 520 | '@humanwhocodes/object-schema': 1.2.1 521 | debug: 4.3.4 522 | minimatch: 3.1.2 523 | transitivePeerDependencies: 524 | - supports-color 525 | dev: true 526 | 527 | /@humanwhocodes/module-importer@1.0.1: 528 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 529 | engines: {node: '>=12.22'} 530 | dev: true 531 | 532 | /@humanwhocodes/object-schema@1.2.1: 533 | resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} 534 | dev: true 535 | 536 | /@jridgewell/gen-mapping@0.3.3: 537 | resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} 538 | engines: {node: '>=6.0.0'} 539 | dependencies: 540 | '@jridgewell/set-array': 1.1.2 541 | '@jridgewell/sourcemap-codec': 1.4.15 542 | '@jridgewell/trace-mapping': 0.3.19 543 | dev: true 544 | 545 | /@jridgewell/resolve-uri@3.1.1: 546 | resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} 547 | engines: {node: '>=6.0.0'} 548 | dev: true 549 | 550 | /@jridgewell/set-array@1.1.2: 551 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} 552 | engines: {node: '>=6.0.0'} 553 | dev: true 554 | 555 | /@jridgewell/sourcemap-codec@1.4.15: 556 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} 557 | dev: true 558 | 559 | /@jridgewell/trace-mapping@0.3.19: 560 | resolution: {integrity: sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==} 561 | dependencies: 562 | '@jridgewell/resolve-uri': 3.1.1 563 | '@jridgewell/sourcemap-codec': 1.4.15 564 | dev: true 565 | 566 | /@manypkg/find-root@1.1.0: 567 | resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} 568 | dependencies: 569 | '@babel/runtime': 7.22.15 570 | '@types/node': 12.20.55 571 | find-up: 4.1.0 572 | fs-extra: 8.1.0 573 | dev: true 574 | 575 | /@manypkg/get-packages@1.1.3: 576 | resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} 577 | dependencies: 578 | '@babel/runtime': 7.22.15 579 | '@changesets/types': 4.1.0 580 | '@manypkg/find-root': 1.1.0 581 | fs-extra: 8.1.0 582 | globby: 11.1.0 583 | read-yaml-file: 1.1.0 584 | dev: true 585 | 586 | /@nodelib/fs.scandir@2.1.5: 587 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 588 | engines: {node: '>= 8'} 589 | dependencies: 590 | '@nodelib/fs.stat': 2.0.5 591 | run-parallel: 1.2.0 592 | dev: true 593 | 594 | /@nodelib/fs.stat@2.0.5: 595 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 596 | engines: {node: '>= 8'} 597 | dev: true 598 | 599 | /@nodelib/fs.walk@1.2.8: 600 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 601 | engines: {node: '>= 8'} 602 | dependencies: 603 | '@nodelib/fs.scandir': 2.1.5 604 | fastq: 1.15.0 605 | dev: true 606 | 607 | /@types/is-ci@3.0.0: 608 | resolution: {integrity: sha512-Q0Op0hdWbYd1iahB+IFNQcWXFq4O0Q5MwQP7uN0souuQ4rPg1vEYcnIOfr1gY+M+6rc8FGoRaBO1mOOvL29sEQ==} 609 | dependencies: 610 | ci-info: 3.8.0 611 | dev: true 612 | 613 | /@types/json-schema@7.0.13: 614 | resolution: {integrity: sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==} 615 | dev: true 616 | 617 | /@types/minimist@1.2.2: 618 | resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==} 619 | dev: true 620 | 621 | /@types/node@12.20.55: 622 | resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} 623 | dev: true 624 | 625 | /@types/node@20.6.3: 626 | resolution: {integrity: sha512-HksnYH4Ljr4VQgEy2lTStbCKv/P590tmPe5HqOnv9Gprffgv5WXAY+Y5Gqniu0GGqeTCUdBnzC3QSrzPkBkAMA==} 627 | dev: true 628 | 629 | /@types/normalize-package-data@2.4.1: 630 | resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} 631 | dev: true 632 | 633 | /@types/semver@7.5.2: 634 | resolution: {integrity: sha512-7aqorHYgdNO4DM36stTiGO3DvKoex9TQRwsJU6vMaFGyqpBA1MNZkz+PG3gaNUPpTAOYhT1WR7M1JyA3fbS9Cw==} 635 | dev: true 636 | 637 | /@typescript-eslint/eslint-plugin@6.7.2(@typescript-eslint/parser@6.7.2)(eslint@8.50.0)(typescript@5.2.2): 638 | resolution: {integrity: sha512-ooaHxlmSgZTM6CHYAFRlifqh1OAr3PAQEwi7lhYhaegbnXrnh7CDcHmc3+ihhbQC7H0i4JF0psI5ehzkF6Yl6Q==} 639 | engines: {node: ^16.0.0 || >=18.0.0} 640 | peerDependencies: 641 | '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha 642 | eslint: ^7.0.0 || ^8.0.0 643 | typescript: '*' 644 | peerDependenciesMeta: 645 | typescript: 646 | optional: true 647 | dependencies: 648 | '@eslint-community/regexpp': 4.8.1 649 | '@typescript-eslint/parser': 6.7.2(eslint@8.50.0)(typescript@5.2.2) 650 | '@typescript-eslint/scope-manager': 6.7.2 651 | '@typescript-eslint/type-utils': 6.7.2(eslint@8.50.0)(typescript@5.2.2) 652 | '@typescript-eslint/utils': 6.7.2(eslint@8.50.0)(typescript@5.2.2) 653 | '@typescript-eslint/visitor-keys': 6.7.2 654 | debug: 4.3.4 655 | eslint: 8.50.0 656 | graphemer: 1.4.0 657 | ignore: 5.2.4 658 | natural-compare: 1.4.0 659 | semver: 7.5.4 660 | ts-api-utils: 1.0.3(typescript@5.2.2) 661 | typescript: 5.2.2 662 | transitivePeerDependencies: 663 | - supports-color 664 | dev: true 665 | 666 | /@typescript-eslint/parser@6.7.2(eslint@8.50.0)(typescript@5.2.2): 667 | resolution: {integrity: sha512-KA3E4ox0ws+SPyxQf9iSI25R6b4Ne78ORhNHeVKrPQnoYsb9UhieoiRoJgrzgEeKGOXhcY1i8YtOeCHHTDa6Fw==} 668 | engines: {node: ^16.0.0 || >=18.0.0} 669 | peerDependencies: 670 | eslint: ^7.0.0 || ^8.0.0 671 | typescript: '*' 672 | peerDependenciesMeta: 673 | typescript: 674 | optional: true 675 | dependencies: 676 | '@typescript-eslint/scope-manager': 6.7.2 677 | '@typescript-eslint/types': 6.7.2 678 | '@typescript-eslint/typescript-estree': 6.7.2(typescript@5.2.2) 679 | '@typescript-eslint/visitor-keys': 6.7.2 680 | debug: 4.3.4 681 | eslint: 8.50.0 682 | typescript: 5.2.2 683 | transitivePeerDependencies: 684 | - supports-color 685 | dev: true 686 | 687 | /@typescript-eslint/scope-manager@6.7.2: 688 | resolution: {integrity: sha512-bgi6plgyZjEqapr7u2mhxGR6E8WCzKNUFWNh6fkpVe9+yzRZeYtDTbsIBzKbcxI+r1qVWt6VIoMSNZ4r2A+6Yw==} 689 | engines: {node: ^16.0.0 || >=18.0.0} 690 | dependencies: 691 | '@typescript-eslint/types': 6.7.2 692 | '@typescript-eslint/visitor-keys': 6.7.2 693 | dev: true 694 | 695 | /@typescript-eslint/type-utils@6.7.2(eslint@8.50.0)(typescript@5.2.2): 696 | resolution: {integrity: sha512-36F4fOYIROYRl0qj95dYKx6kybddLtsbmPIYNK0OBeXv2j9L5nZ17j9jmfy+bIDHKQgn2EZX+cofsqi8NPATBQ==} 697 | engines: {node: ^16.0.0 || >=18.0.0} 698 | peerDependencies: 699 | eslint: ^7.0.0 || ^8.0.0 700 | typescript: '*' 701 | peerDependenciesMeta: 702 | typescript: 703 | optional: true 704 | dependencies: 705 | '@typescript-eslint/typescript-estree': 6.7.2(typescript@5.2.2) 706 | '@typescript-eslint/utils': 6.7.2(eslint@8.50.0)(typescript@5.2.2) 707 | debug: 4.3.4 708 | eslint: 8.50.0 709 | ts-api-utils: 1.0.3(typescript@5.2.2) 710 | typescript: 5.2.2 711 | transitivePeerDependencies: 712 | - supports-color 713 | dev: true 714 | 715 | /@typescript-eslint/types@6.7.2: 716 | resolution: {integrity: sha512-flJYwMYgnUNDAN9/GAI3l8+wTmvTYdv64fcH8aoJK76Y+1FCZ08RtI5zDerM/FYT5DMkAc+19E4aLmd5KqdFyg==} 717 | engines: {node: ^16.0.0 || >=18.0.0} 718 | dev: true 719 | 720 | /@typescript-eslint/typescript-estree@6.7.2(typescript@5.2.2): 721 | resolution: {integrity: sha512-kiJKVMLkoSciGyFU0TOY0fRxnp9qq1AzVOHNeN1+B9erKFCJ4Z8WdjAkKQPP+b1pWStGFqezMLltxO+308dJTQ==} 722 | engines: {node: ^16.0.0 || >=18.0.0} 723 | peerDependencies: 724 | typescript: '*' 725 | peerDependenciesMeta: 726 | typescript: 727 | optional: true 728 | dependencies: 729 | '@typescript-eslint/types': 6.7.2 730 | '@typescript-eslint/visitor-keys': 6.7.2 731 | debug: 4.3.4 732 | globby: 11.1.0 733 | is-glob: 4.0.3 734 | semver: 7.5.4 735 | ts-api-utils: 1.0.3(typescript@5.2.2) 736 | typescript: 5.2.2 737 | transitivePeerDependencies: 738 | - supports-color 739 | dev: true 740 | 741 | /@typescript-eslint/utils@6.7.2(eslint@8.50.0)(typescript@5.2.2): 742 | resolution: {integrity: sha512-ZCcBJug/TS6fXRTsoTkgnsvyWSiXwMNiPzBUani7hDidBdj1779qwM1FIAmpH4lvlOZNF3EScsxxuGifjpLSWQ==} 743 | engines: {node: ^16.0.0 || >=18.0.0} 744 | peerDependencies: 745 | eslint: ^7.0.0 || ^8.0.0 746 | dependencies: 747 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.50.0) 748 | '@types/json-schema': 7.0.13 749 | '@types/semver': 7.5.2 750 | '@typescript-eslint/scope-manager': 6.7.2 751 | '@typescript-eslint/types': 6.7.2 752 | '@typescript-eslint/typescript-estree': 6.7.2(typescript@5.2.2) 753 | eslint: 8.50.0 754 | semver: 7.5.4 755 | transitivePeerDependencies: 756 | - supports-color 757 | - typescript 758 | dev: true 759 | 760 | /@typescript-eslint/visitor-keys@6.7.2: 761 | resolution: {integrity: sha512-uVw9VIMFBUTz8rIeaUT3fFe8xIUx8r4ywAdlQv1ifH+6acn/XF8Y6rwJ7XNmkNMDrTW+7+vxFFPIF40nJCVsMQ==} 762 | engines: {node: ^16.0.0 || >=18.0.0} 763 | dependencies: 764 | '@typescript-eslint/types': 6.7.2 765 | eslint-visitor-keys: 3.4.3 766 | dev: true 767 | 768 | /acorn-jsx@5.3.2(acorn@8.10.0): 769 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 770 | peerDependencies: 771 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 772 | dependencies: 773 | acorn: 8.10.0 774 | dev: true 775 | 776 | /acorn@8.10.0: 777 | resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} 778 | engines: {node: '>=0.4.0'} 779 | hasBin: true 780 | dev: true 781 | 782 | /ajv@6.12.6: 783 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 784 | dependencies: 785 | fast-deep-equal: 3.1.3 786 | fast-json-stable-stringify: 2.1.0 787 | json-schema-traverse: 0.4.1 788 | uri-js: 4.4.1 789 | dev: true 790 | 791 | /ansi-colors@4.1.3: 792 | resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} 793 | engines: {node: '>=6'} 794 | dev: true 795 | 796 | /ansi-regex@5.0.1: 797 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 798 | engines: {node: '>=8'} 799 | dev: true 800 | 801 | /ansi-styles@3.2.1: 802 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 803 | engines: {node: '>=4'} 804 | dependencies: 805 | color-convert: 1.9.3 806 | dev: true 807 | 808 | /ansi-styles@4.3.0: 809 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 810 | engines: {node: '>=8'} 811 | dependencies: 812 | color-convert: 2.0.1 813 | dev: true 814 | 815 | /any-promise@1.3.0: 816 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 817 | dev: true 818 | 819 | /anymatch@3.1.3: 820 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} 821 | engines: {node: '>= 8'} 822 | dependencies: 823 | normalize-path: 3.0.0 824 | picomatch: 2.3.1 825 | dev: true 826 | 827 | /argparse@1.0.10: 828 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} 829 | dependencies: 830 | sprintf-js: 1.0.3 831 | dev: true 832 | 833 | /argparse@2.0.1: 834 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 835 | dev: true 836 | 837 | /array-buffer-byte-length@1.0.0: 838 | resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} 839 | dependencies: 840 | call-bind: 1.0.2 841 | is-array-buffer: 3.0.2 842 | dev: true 843 | 844 | /array-union@2.1.0: 845 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 846 | engines: {node: '>=8'} 847 | dev: true 848 | 849 | /array.prototype.flat@1.3.2: 850 | resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} 851 | engines: {node: '>= 0.4'} 852 | dependencies: 853 | call-bind: 1.0.2 854 | define-properties: 1.2.1 855 | es-abstract: 1.22.2 856 | es-shim-unscopables: 1.0.0 857 | dev: true 858 | 859 | /arraybuffer.prototype.slice@1.0.2: 860 | resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} 861 | engines: {node: '>= 0.4'} 862 | dependencies: 863 | array-buffer-byte-length: 1.0.0 864 | call-bind: 1.0.2 865 | define-properties: 1.2.1 866 | es-abstract: 1.22.2 867 | get-intrinsic: 1.2.1 868 | is-array-buffer: 3.0.2 869 | is-shared-array-buffer: 1.0.2 870 | dev: true 871 | 872 | /arrify@1.0.1: 873 | resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} 874 | engines: {node: '>=0.10.0'} 875 | dev: true 876 | 877 | /available-typed-arrays@1.0.5: 878 | resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} 879 | engines: {node: '>= 0.4'} 880 | dev: true 881 | 882 | /balanced-match@1.0.2: 883 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 884 | dev: true 885 | 886 | /better-path-resolve@1.0.0: 887 | resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} 888 | engines: {node: '>=4'} 889 | dependencies: 890 | is-windows: 1.0.2 891 | dev: true 892 | 893 | /binary-extensions@2.2.0: 894 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} 895 | engines: {node: '>=8'} 896 | dev: true 897 | 898 | /brace-expansion@1.1.11: 899 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 900 | dependencies: 901 | balanced-match: 1.0.2 902 | concat-map: 0.0.1 903 | dev: true 904 | 905 | /braces@3.0.2: 906 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 907 | engines: {node: '>=8'} 908 | dependencies: 909 | fill-range: 7.0.1 910 | dev: true 911 | 912 | /breakword@1.0.6: 913 | resolution: {integrity: sha512-yjxDAYyK/pBvws9H4xKYpLDpYKEH6CzrBPAuXq3x18I+c/2MkVtT3qAr7Oloi6Dss9qNhPVueAAVU1CSeNDIXw==} 914 | dependencies: 915 | wcwidth: 1.0.1 916 | dev: true 917 | 918 | /bundle-require@4.0.1(esbuild@0.18.20): 919 | resolution: {integrity: sha512-9NQkRHlNdNpDBGmLpngF3EFDcwodhMUuLz9PaWYciVcQF9SE4LFjM2DB/xV1Li5JiuDMv7ZUWuC3rGbqR0MAXQ==} 920 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 921 | peerDependencies: 922 | esbuild: '>=0.17' 923 | dependencies: 924 | esbuild: 0.18.20 925 | load-tsconfig: 0.2.5 926 | dev: true 927 | 928 | /cac@6.7.14: 929 | resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} 930 | engines: {node: '>=8'} 931 | dev: true 932 | 933 | /call-bind@1.0.2: 934 | resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} 935 | dependencies: 936 | function-bind: 1.1.1 937 | get-intrinsic: 1.2.1 938 | dev: true 939 | 940 | /callsites@3.1.0: 941 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 942 | engines: {node: '>=6'} 943 | dev: true 944 | 945 | /camelcase-keys@6.2.2: 946 | resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==} 947 | engines: {node: '>=8'} 948 | dependencies: 949 | camelcase: 5.3.1 950 | map-obj: 4.3.0 951 | quick-lru: 4.0.1 952 | dev: true 953 | 954 | /camelcase@5.3.1: 955 | resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} 956 | engines: {node: '>=6'} 957 | dev: true 958 | 959 | /chalk@2.4.2: 960 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 961 | engines: {node: '>=4'} 962 | dependencies: 963 | ansi-styles: 3.2.1 964 | escape-string-regexp: 1.0.5 965 | supports-color: 5.5.0 966 | dev: true 967 | 968 | /chalk@4.1.2: 969 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 970 | engines: {node: '>=10'} 971 | dependencies: 972 | ansi-styles: 4.3.0 973 | supports-color: 7.2.0 974 | dev: true 975 | 976 | /chardet@0.7.0: 977 | resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} 978 | dev: true 979 | 980 | /chokidar@3.5.3: 981 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} 982 | engines: {node: '>= 8.10.0'} 983 | dependencies: 984 | anymatch: 3.1.3 985 | braces: 3.0.2 986 | glob-parent: 5.1.2 987 | is-binary-path: 2.1.0 988 | is-glob: 4.0.3 989 | normalize-path: 3.0.0 990 | readdirp: 3.6.0 991 | optionalDependencies: 992 | fsevents: 2.3.3 993 | dev: true 994 | 995 | /ci-info@3.8.0: 996 | resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} 997 | engines: {node: '>=8'} 998 | dev: true 999 | 1000 | /cliui@6.0.0: 1001 | resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} 1002 | dependencies: 1003 | string-width: 4.2.3 1004 | strip-ansi: 6.0.1 1005 | wrap-ansi: 6.2.0 1006 | dev: true 1007 | 1008 | /cliui@8.0.1: 1009 | resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} 1010 | engines: {node: '>=12'} 1011 | dependencies: 1012 | string-width: 4.2.3 1013 | strip-ansi: 6.0.1 1014 | wrap-ansi: 7.0.0 1015 | dev: true 1016 | 1017 | /clone@1.0.4: 1018 | resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} 1019 | engines: {node: '>=0.8'} 1020 | dev: true 1021 | 1022 | /color-convert@1.9.3: 1023 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 1024 | dependencies: 1025 | color-name: 1.1.3 1026 | dev: true 1027 | 1028 | /color-convert@2.0.1: 1029 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 1030 | engines: {node: '>=7.0.0'} 1031 | dependencies: 1032 | color-name: 1.1.4 1033 | dev: true 1034 | 1035 | /color-name@1.1.3: 1036 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} 1037 | dev: true 1038 | 1039 | /color-name@1.1.4: 1040 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 1041 | dev: true 1042 | 1043 | /commander@11.0.0: 1044 | resolution: {integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==} 1045 | engines: {node: '>=16'} 1046 | dev: false 1047 | 1048 | /commander@4.1.1: 1049 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} 1050 | engines: {node: '>= 6'} 1051 | dev: true 1052 | 1053 | /concat-map@0.0.1: 1054 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1055 | dev: true 1056 | 1057 | /cross-spawn@5.1.0: 1058 | resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} 1059 | dependencies: 1060 | lru-cache: 4.1.5 1061 | shebang-command: 1.2.0 1062 | which: 1.3.1 1063 | dev: true 1064 | 1065 | /cross-spawn@7.0.3: 1066 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 1067 | engines: {node: '>= 8'} 1068 | dependencies: 1069 | path-key: 3.1.1 1070 | shebang-command: 2.0.0 1071 | which: 2.0.2 1072 | dev: true 1073 | 1074 | /csv-generate@3.4.3: 1075 | resolution: {integrity: sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==} 1076 | dev: true 1077 | 1078 | /csv-parse@4.16.3: 1079 | resolution: {integrity: sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg==} 1080 | dev: true 1081 | 1082 | /csv-stringify@5.6.5: 1083 | resolution: {integrity: sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A==} 1084 | dev: true 1085 | 1086 | /csv@5.5.3: 1087 | resolution: {integrity: sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g==} 1088 | engines: {node: '>= 0.1.90'} 1089 | dependencies: 1090 | csv-generate: 3.4.3 1091 | csv-parse: 4.16.3 1092 | csv-stringify: 5.6.5 1093 | stream-transform: 2.1.3 1094 | dev: true 1095 | 1096 | /debug@4.3.4: 1097 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 1098 | engines: {node: '>=6.0'} 1099 | peerDependencies: 1100 | supports-color: '*' 1101 | peerDependenciesMeta: 1102 | supports-color: 1103 | optional: true 1104 | dependencies: 1105 | ms: 2.1.2 1106 | dev: true 1107 | 1108 | /decamelize-keys@1.1.1: 1109 | resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==} 1110 | engines: {node: '>=0.10.0'} 1111 | dependencies: 1112 | decamelize: 1.2.0 1113 | map-obj: 1.0.1 1114 | dev: true 1115 | 1116 | /decamelize@1.2.0: 1117 | resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} 1118 | engines: {node: '>=0.10.0'} 1119 | dev: true 1120 | 1121 | /deep-is@0.1.4: 1122 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 1123 | dev: true 1124 | 1125 | /defaults@1.0.4: 1126 | resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} 1127 | dependencies: 1128 | clone: 1.0.4 1129 | dev: true 1130 | 1131 | /define-data-property@1.1.0: 1132 | resolution: {integrity: sha512-UzGwzcjyv3OtAvolTj1GoyNYzfFR+iqbGjcnBEENZVCpM4/Ng1yhGNvS3lR/xDS74Tb2wGG9WzNSNIOS9UVb2g==} 1133 | engines: {node: '>= 0.4'} 1134 | dependencies: 1135 | get-intrinsic: 1.2.1 1136 | gopd: 1.0.1 1137 | has-property-descriptors: 1.0.0 1138 | dev: true 1139 | 1140 | /define-properties@1.2.1: 1141 | resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} 1142 | engines: {node: '>= 0.4'} 1143 | dependencies: 1144 | define-data-property: 1.1.0 1145 | has-property-descriptors: 1.0.0 1146 | object-keys: 1.1.1 1147 | dev: true 1148 | 1149 | /detect-indent@6.1.0: 1150 | resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} 1151 | engines: {node: '>=8'} 1152 | dev: true 1153 | 1154 | /dir-glob@3.0.1: 1155 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 1156 | engines: {node: '>=8'} 1157 | dependencies: 1158 | path-type: 4.0.0 1159 | dev: true 1160 | 1161 | /doctrine@3.0.0: 1162 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 1163 | engines: {node: '>=6.0.0'} 1164 | dependencies: 1165 | esutils: 2.0.3 1166 | dev: true 1167 | 1168 | /emoji-regex@8.0.0: 1169 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 1170 | dev: true 1171 | 1172 | /enquirer@2.4.1: 1173 | resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} 1174 | engines: {node: '>=8.6'} 1175 | dependencies: 1176 | ansi-colors: 4.1.3 1177 | strip-ansi: 6.0.1 1178 | dev: true 1179 | 1180 | /error-ex@1.3.2: 1181 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} 1182 | dependencies: 1183 | is-arrayish: 0.2.1 1184 | dev: true 1185 | 1186 | /es-abstract@1.22.2: 1187 | resolution: {integrity: sha512-YoxfFcDmhjOgWPWsV13+2RNjq1F6UQnfs+8TftwNqtzlmFzEXvlUwdrNrYeaizfjQzRMxkZ6ElWMOJIFKdVqwA==} 1188 | engines: {node: '>= 0.4'} 1189 | dependencies: 1190 | array-buffer-byte-length: 1.0.0 1191 | arraybuffer.prototype.slice: 1.0.2 1192 | available-typed-arrays: 1.0.5 1193 | call-bind: 1.0.2 1194 | es-set-tostringtag: 2.0.1 1195 | es-to-primitive: 1.2.1 1196 | function.prototype.name: 1.1.6 1197 | get-intrinsic: 1.2.1 1198 | get-symbol-description: 1.0.0 1199 | globalthis: 1.0.3 1200 | gopd: 1.0.1 1201 | has: 1.0.3 1202 | has-property-descriptors: 1.0.0 1203 | has-proto: 1.0.1 1204 | has-symbols: 1.0.3 1205 | internal-slot: 1.0.5 1206 | is-array-buffer: 3.0.2 1207 | is-callable: 1.2.7 1208 | is-negative-zero: 2.0.2 1209 | is-regex: 1.1.4 1210 | is-shared-array-buffer: 1.0.2 1211 | is-string: 1.0.7 1212 | is-typed-array: 1.1.12 1213 | is-weakref: 1.0.2 1214 | object-inspect: 1.12.3 1215 | object-keys: 1.1.1 1216 | object.assign: 4.1.4 1217 | regexp.prototype.flags: 1.5.1 1218 | safe-array-concat: 1.0.1 1219 | safe-regex-test: 1.0.0 1220 | string.prototype.trim: 1.2.8 1221 | string.prototype.trimend: 1.0.7 1222 | string.prototype.trimstart: 1.0.7 1223 | typed-array-buffer: 1.0.0 1224 | typed-array-byte-length: 1.0.0 1225 | typed-array-byte-offset: 1.0.0 1226 | typed-array-length: 1.0.4 1227 | unbox-primitive: 1.0.2 1228 | which-typed-array: 1.1.11 1229 | dev: true 1230 | 1231 | /es-set-tostringtag@2.0.1: 1232 | resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} 1233 | engines: {node: '>= 0.4'} 1234 | dependencies: 1235 | get-intrinsic: 1.2.1 1236 | has: 1.0.3 1237 | has-tostringtag: 1.0.0 1238 | dev: true 1239 | 1240 | /es-shim-unscopables@1.0.0: 1241 | resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} 1242 | dependencies: 1243 | has: 1.0.3 1244 | dev: true 1245 | 1246 | /es-to-primitive@1.2.1: 1247 | resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} 1248 | engines: {node: '>= 0.4'} 1249 | dependencies: 1250 | is-callable: 1.2.7 1251 | is-date-object: 1.0.5 1252 | is-symbol: 1.0.4 1253 | dev: true 1254 | 1255 | /esbuild@0.18.20: 1256 | resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==} 1257 | engines: {node: '>=12'} 1258 | hasBin: true 1259 | requiresBuild: true 1260 | optionalDependencies: 1261 | '@esbuild/android-arm': 0.18.20 1262 | '@esbuild/android-arm64': 0.18.20 1263 | '@esbuild/android-x64': 0.18.20 1264 | '@esbuild/darwin-arm64': 0.18.20 1265 | '@esbuild/darwin-x64': 0.18.20 1266 | '@esbuild/freebsd-arm64': 0.18.20 1267 | '@esbuild/freebsd-x64': 0.18.20 1268 | '@esbuild/linux-arm': 0.18.20 1269 | '@esbuild/linux-arm64': 0.18.20 1270 | '@esbuild/linux-ia32': 0.18.20 1271 | '@esbuild/linux-loong64': 0.18.20 1272 | '@esbuild/linux-mips64el': 0.18.20 1273 | '@esbuild/linux-ppc64': 0.18.20 1274 | '@esbuild/linux-riscv64': 0.18.20 1275 | '@esbuild/linux-s390x': 0.18.20 1276 | '@esbuild/linux-x64': 0.18.20 1277 | '@esbuild/netbsd-x64': 0.18.20 1278 | '@esbuild/openbsd-x64': 0.18.20 1279 | '@esbuild/sunos-x64': 0.18.20 1280 | '@esbuild/win32-arm64': 0.18.20 1281 | '@esbuild/win32-ia32': 0.18.20 1282 | '@esbuild/win32-x64': 0.18.20 1283 | dev: true 1284 | 1285 | /escalade@3.1.1: 1286 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 1287 | engines: {node: '>=6'} 1288 | dev: true 1289 | 1290 | /escape-string-regexp@1.0.5: 1291 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} 1292 | engines: {node: '>=0.8.0'} 1293 | dev: true 1294 | 1295 | /escape-string-regexp@4.0.0: 1296 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 1297 | engines: {node: '>=10'} 1298 | dev: true 1299 | 1300 | /eslint-config-prettier@9.0.0(eslint@8.50.0): 1301 | resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==} 1302 | hasBin: true 1303 | peerDependencies: 1304 | eslint: '>=7.0.0' 1305 | dependencies: 1306 | eslint: 8.50.0 1307 | dev: true 1308 | 1309 | /eslint-scope@7.2.2: 1310 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} 1311 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1312 | dependencies: 1313 | esrecurse: 4.3.0 1314 | estraverse: 5.3.0 1315 | dev: true 1316 | 1317 | /eslint-visitor-keys@3.4.3: 1318 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 1319 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1320 | dev: true 1321 | 1322 | /eslint@8.50.0: 1323 | resolution: {integrity: sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==} 1324 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1325 | hasBin: true 1326 | dependencies: 1327 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.50.0) 1328 | '@eslint-community/regexpp': 4.8.1 1329 | '@eslint/eslintrc': 2.1.2 1330 | '@eslint/js': 8.50.0 1331 | '@humanwhocodes/config-array': 0.11.11 1332 | '@humanwhocodes/module-importer': 1.0.1 1333 | '@nodelib/fs.walk': 1.2.8 1334 | ajv: 6.12.6 1335 | chalk: 4.1.2 1336 | cross-spawn: 7.0.3 1337 | debug: 4.3.4 1338 | doctrine: 3.0.0 1339 | escape-string-regexp: 4.0.0 1340 | eslint-scope: 7.2.2 1341 | eslint-visitor-keys: 3.4.3 1342 | espree: 9.6.1 1343 | esquery: 1.5.0 1344 | esutils: 2.0.3 1345 | fast-deep-equal: 3.1.3 1346 | file-entry-cache: 6.0.1 1347 | find-up: 5.0.0 1348 | glob-parent: 6.0.2 1349 | globals: 13.22.0 1350 | graphemer: 1.4.0 1351 | ignore: 5.2.4 1352 | imurmurhash: 0.1.4 1353 | is-glob: 4.0.3 1354 | is-path-inside: 3.0.3 1355 | js-yaml: 4.1.0 1356 | json-stable-stringify-without-jsonify: 1.0.1 1357 | levn: 0.4.1 1358 | lodash.merge: 4.6.2 1359 | minimatch: 3.1.2 1360 | natural-compare: 1.4.0 1361 | optionator: 0.9.3 1362 | strip-ansi: 6.0.1 1363 | text-table: 0.2.0 1364 | transitivePeerDependencies: 1365 | - supports-color 1366 | dev: true 1367 | 1368 | /espree@9.6.1: 1369 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} 1370 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1371 | dependencies: 1372 | acorn: 8.10.0 1373 | acorn-jsx: 5.3.2(acorn@8.10.0) 1374 | eslint-visitor-keys: 3.4.3 1375 | dev: true 1376 | 1377 | /esprima@4.0.1: 1378 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 1379 | engines: {node: '>=4'} 1380 | hasBin: true 1381 | dev: true 1382 | 1383 | /esquery@1.5.0: 1384 | resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} 1385 | engines: {node: '>=0.10'} 1386 | dependencies: 1387 | estraverse: 5.3.0 1388 | dev: true 1389 | 1390 | /esrecurse@4.3.0: 1391 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 1392 | engines: {node: '>=4.0'} 1393 | dependencies: 1394 | estraverse: 5.3.0 1395 | dev: true 1396 | 1397 | /estraverse@5.3.0: 1398 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 1399 | engines: {node: '>=4.0'} 1400 | dev: true 1401 | 1402 | /esutils@2.0.3: 1403 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 1404 | engines: {node: '>=0.10.0'} 1405 | dev: true 1406 | 1407 | /execa@5.1.1: 1408 | resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} 1409 | engines: {node: '>=10'} 1410 | dependencies: 1411 | cross-spawn: 7.0.3 1412 | get-stream: 6.0.1 1413 | human-signals: 2.1.0 1414 | is-stream: 2.0.1 1415 | merge-stream: 2.0.0 1416 | npm-run-path: 4.0.1 1417 | onetime: 5.1.2 1418 | signal-exit: 3.0.7 1419 | strip-final-newline: 2.0.0 1420 | dev: true 1421 | 1422 | /extendable-error@0.1.7: 1423 | resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} 1424 | dev: true 1425 | 1426 | /external-editor@3.1.0: 1427 | resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} 1428 | engines: {node: '>=4'} 1429 | dependencies: 1430 | chardet: 0.7.0 1431 | iconv-lite: 0.4.24 1432 | tmp: 0.0.33 1433 | dev: true 1434 | 1435 | /fast-deep-equal@3.1.3: 1436 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1437 | dev: true 1438 | 1439 | /fast-glob@3.3.1: 1440 | resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} 1441 | engines: {node: '>=8.6.0'} 1442 | dependencies: 1443 | '@nodelib/fs.stat': 2.0.5 1444 | '@nodelib/fs.walk': 1.2.8 1445 | glob-parent: 5.1.2 1446 | merge2: 1.4.1 1447 | micromatch: 4.0.5 1448 | dev: true 1449 | 1450 | /fast-json-stable-stringify@2.1.0: 1451 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1452 | dev: true 1453 | 1454 | /fast-levenshtein@2.0.6: 1455 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 1456 | dev: true 1457 | 1458 | /fastq@1.15.0: 1459 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} 1460 | dependencies: 1461 | reusify: 1.0.4 1462 | dev: true 1463 | 1464 | /file-entry-cache@6.0.1: 1465 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 1466 | engines: {node: ^10.12.0 || >=12.0.0} 1467 | dependencies: 1468 | flat-cache: 3.1.0 1469 | dev: true 1470 | 1471 | /fill-range@7.0.1: 1472 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 1473 | engines: {node: '>=8'} 1474 | dependencies: 1475 | to-regex-range: 5.0.1 1476 | dev: true 1477 | 1478 | /find-up@4.1.0: 1479 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} 1480 | engines: {node: '>=8'} 1481 | dependencies: 1482 | locate-path: 5.0.0 1483 | path-exists: 4.0.0 1484 | dev: true 1485 | 1486 | /find-up@5.0.0: 1487 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 1488 | engines: {node: '>=10'} 1489 | dependencies: 1490 | locate-path: 6.0.0 1491 | path-exists: 4.0.0 1492 | dev: true 1493 | 1494 | /find-yarn-workspace-root2@1.2.16: 1495 | resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} 1496 | dependencies: 1497 | micromatch: 4.0.5 1498 | pkg-dir: 4.2.0 1499 | dev: true 1500 | 1501 | /flat-cache@3.1.0: 1502 | resolution: {integrity: sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==} 1503 | engines: {node: '>=12.0.0'} 1504 | dependencies: 1505 | flatted: 3.2.9 1506 | keyv: 4.5.3 1507 | rimraf: 3.0.2 1508 | dev: true 1509 | 1510 | /flatted@3.2.9: 1511 | resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} 1512 | dev: true 1513 | 1514 | /for-each@0.3.3: 1515 | resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} 1516 | dependencies: 1517 | is-callable: 1.2.7 1518 | dev: true 1519 | 1520 | /fs-extra@7.0.1: 1521 | resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} 1522 | engines: {node: '>=6 <7 || >=8'} 1523 | dependencies: 1524 | graceful-fs: 4.2.11 1525 | jsonfile: 4.0.0 1526 | universalify: 0.1.2 1527 | dev: true 1528 | 1529 | /fs-extra@8.1.0: 1530 | resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} 1531 | engines: {node: '>=6 <7 || >=8'} 1532 | dependencies: 1533 | graceful-fs: 4.2.11 1534 | jsonfile: 4.0.0 1535 | universalify: 0.1.2 1536 | dev: true 1537 | 1538 | /fs.realpath@1.0.0: 1539 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1540 | dev: true 1541 | 1542 | /fsevents@2.3.3: 1543 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 1544 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 1545 | os: [darwin] 1546 | requiresBuild: true 1547 | dev: true 1548 | optional: true 1549 | 1550 | /function-bind@1.1.1: 1551 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 1552 | dev: true 1553 | 1554 | /function.prototype.name@1.1.6: 1555 | resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} 1556 | engines: {node: '>= 0.4'} 1557 | dependencies: 1558 | call-bind: 1.0.2 1559 | define-properties: 1.2.1 1560 | es-abstract: 1.22.2 1561 | functions-have-names: 1.2.3 1562 | dev: true 1563 | 1564 | /functions-have-names@1.2.3: 1565 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} 1566 | dev: true 1567 | 1568 | /get-caller-file@2.0.5: 1569 | resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} 1570 | engines: {node: 6.* || 8.* || >= 10.*} 1571 | dev: true 1572 | 1573 | /get-intrinsic@1.2.1: 1574 | resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} 1575 | dependencies: 1576 | function-bind: 1.1.1 1577 | has: 1.0.3 1578 | has-proto: 1.0.1 1579 | has-symbols: 1.0.3 1580 | dev: true 1581 | 1582 | /get-stream@6.0.1: 1583 | resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} 1584 | engines: {node: '>=10'} 1585 | dev: true 1586 | 1587 | /get-symbol-description@1.0.0: 1588 | resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} 1589 | engines: {node: '>= 0.4'} 1590 | dependencies: 1591 | call-bind: 1.0.2 1592 | get-intrinsic: 1.2.1 1593 | dev: true 1594 | 1595 | /glob-parent@5.1.2: 1596 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 1597 | engines: {node: '>= 6'} 1598 | dependencies: 1599 | is-glob: 4.0.3 1600 | dev: true 1601 | 1602 | /glob-parent@6.0.2: 1603 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 1604 | engines: {node: '>=10.13.0'} 1605 | dependencies: 1606 | is-glob: 4.0.3 1607 | dev: true 1608 | 1609 | /glob@7.1.6: 1610 | resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} 1611 | dependencies: 1612 | fs.realpath: 1.0.0 1613 | inflight: 1.0.6 1614 | inherits: 2.0.4 1615 | minimatch: 3.1.2 1616 | once: 1.4.0 1617 | path-is-absolute: 1.0.1 1618 | dev: true 1619 | 1620 | /globals@13.22.0: 1621 | resolution: {integrity: sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==} 1622 | engines: {node: '>=8'} 1623 | dependencies: 1624 | type-fest: 0.20.2 1625 | dev: true 1626 | 1627 | /globalthis@1.0.3: 1628 | resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} 1629 | engines: {node: '>= 0.4'} 1630 | dependencies: 1631 | define-properties: 1.2.1 1632 | dev: true 1633 | 1634 | /globby@11.1.0: 1635 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 1636 | engines: {node: '>=10'} 1637 | dependencies: 1638 | array-union: 2.1.0 1639 | dir-glob: 3.0.1 1640 | fast-glob: 3.3.1 1641 | ignore: 5.2.4 1642 | merge2: 1.4.1 1643 | slash: 3.0.0 1644 | dev: true 1645 | 1646 | /gopd@1.0.1: 1647 | resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} 1648 | dependencies: 1649 | get-intrinsic: 1.2.1 1650 | dev: true 1651 | 1652 | /graceful-fs@4.2.11: 1653 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 1654 | dev: true 1655 | 1656 | /grapheme-splitter@1.0.4: 1657 | resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} 1658 | dev: true 1659 | 1660 | /graphemer@1.4.0: 1661 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 1662 | dev: true 1663 | 1664 | /hard-rejection@2.1.0: 1665 | resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} 1666 | engines: {node: '>=6'} 1667 | dev: true 1668 | 1669 | /has-bigints@1.0.2: 1670 | resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} 1671 | dev: true 1672 | 1673 | /has-flag@3.0.0: 1674 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} 1675 | engines: {node: '>=4'} 1676 | dev: true 1677 | 1678 | /has-flag@4.0.0: 1679 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1680 | engines: {node: '>=8'} 1681 | dev: true 1682 | 1683 | /has-property-descriptors@1.0.0: 1684 | resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} 1685 | dependencies: 1686 | get-intrinsic: 1.2.1 1687 | dev: true 1688 | 1689 | /has-proto@1.0.1: 1690 | resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} 1691 | engines: {node: '>= 0.4'} 1692 | dev: true 1693 | 1694 | /has-symbols@1.0.3: 1695 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} 1696 | engines: {node: '>= 0.4'} 1697 | dev: true 1698 | 1699 | /has-tostringtag@1.0.0: 1700 | resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} 1701 | engines: {node: '>= 0.4'} 1702 | dependencies: 1703 | has-symbols: 1.0.3 1704 | dev: true 1705 | 1706 | /has@1.0.3: 1707 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 1708 | engines: {node: '>= 0.4.0'} 1709 | dependencies: 1710 | function-bind: 1.1.1 1711 | dev: true 1712 | 1713 | /hosted-git-info@2.8.9: 1714 | resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} 1715 | dev: true 1716 | 1717 | /human-id@1.0.2: 1718 | resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} 1719 | dev: true 1720 | 1721 | /human-signals@2.1.0: 1722 | resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} 1723 | engines: {node: '>=10.17.0'} 1724 | dev: true 1725 | 1726 | /iconv-lite@0.4.24: 1727 | resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} 1728 | engines: {node: '>=0.10.0'} 1729 | dependencies: 1730 | safer-buffer: 2.1.2 1731 | dev: true 1732 | 1733 | /ignore@5.2.4: 1734 | resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} 1735 | engines: {node: '>= 4'} 1736 | dev: true 1737 | 1738 | /import-fresh@3.3.0: 1739 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 1740 | engines: {node: '>=6'} 1741 | dependencies: 1742 | parent-module: 1.0.1 1743 | resolve-from: 4.0.0 1744 | dev: true 1745 | 1746 | /imurmurhash@0.1.4: 1747 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 1748 | engines: {node: '>=0.8.19'} 1749 | dev: true 1750 | 1751 | /indent-string@4.0.0: 1752 | resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} 1753 | engines: {node: '>=8'} 1754 | dev: true 1755 | 1756 | /inflight@1.0.6: 1757 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 1758 | dependencies: 1759 | once: 1.4.0 1760 | wrappy: 1.0.2 1761 | dev: true 1762 | 1763 | /inherits@2.0.4: 1764 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1765 | dev: true 1766 | 1767 | /internal-slot@1.0.5: 1768 | resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} 1769 | engines: {node: '>= 0.4'} 1770 | dependencies: 1771 | get-intrinsic: 1.2.1 1772 | has: 1.0.3 1773 | side-channel: 1.0.4 1774 | dev: true 1775 | 1776 | /is-array-buffer@3.0.2: 1777 | resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} 1778 | dependencies: 1779 | call-bind: 1.0.2 1780 | get-intrinsic: 1.2.1 1781 | is-typed-array: 1.1.12 1782 | dev: true 1783 | 1784 | /is-arrayish@0.2.1: 1785 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} 1786 | dev: true 1787 | 1788 | /is-bigint@1.0.4: 1789 | resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} 1790 | dependencies: 1791 | has-bigints: 1.0.2 1792 | dev: true 1793 | 1794 | /is-binary-path@2.1.0: 1795 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 1796 | engines: {node: '>=8'} 1797 | dependencies: 1798 | binary-extensions: 2.2.0 1799 | dev: true 1800 | 1801 | /is-boolean-object@1.1.2: 1802 | resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} 1803 | engines: {node: '>= 0.4'} 1804 | dependencies: 1805 | call-bind: 1.0.2 1806 | has-tostringtag: 1.0.0 1807 | dev: true 1808 | 1809 | /is-callable@1.2.7: 1810 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} 1811 | engines: {node: '>= 0.4'} 1812 | dev: true 1813 | 1814 | /is-ci@3.0.1: 1815 | resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} 1816 | hasBin: true 1817 | dependencies: 1818 | ci-info: 3.8.0 1819 | dev: true 1820 | 1821 | /is-core-module@2.13.0: 1822 | resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==} 1823 | dependencies: 1824 | has: 1.0.3 1825 | dev: true 1826 | 1827 | /is-date-object@1.0.5: 1828 | resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} 1829 | engines: {node: '>= 0.4'} 1830 | dependencies: 1831 | has-tostringtag: 1.0.0 1832 | dev: true 1833 | 1834 | /is-extglob@2.1.1: 1835 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1836 | engines: {node: '>=0.10.0'} 1837 | dev: true 1838 | 1839 | /is-fullwidth-code-point@3.0.0: 1840 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 1841 | engines: {node: '>=8'} 1842 | dev: true 1843 | 1844 | /is-glob@4.0.3: 1845 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1846 | engines: {node: '>=0.10.0'} 1847 | dependencies: 1848 | is-extglob: 2.1.1 1849 | dev: true 1850 | 1851 | /is-negative-zero@2.0.2: 1852 | resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} 1853 | engines: {node: '>= 0.4'} 1854 | dev: true 1855 | 1856 | /is-number-object@1.0.7: 1857 | resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} 1858 | engines: {node: '>= 0.4'} 1859 | dependencies: 1860 | has-tostringtag: 1.0.0 1861 | dev: true 1862 | 1863 | /is-number@7.0.0: 1864 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1865 | engines: {node: '>=0.12.0'} 1866 | dev: true 1867 | 1868 | /is-path-inside@3.0.3: 1869 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} 1870 | engines: {node: '>=8'} 1871 | dev: true 1872 | 1873 | /is-plain-obj@1.1.0: 1874 | resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} 1875 | engines: {node: '>=0.10.0'} 1876 | dev: true 1877 | 1878 | /is-regex@1.1.4: 1879 | resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} 1880 | engines: {node: '>= 0.4'} 1881 | dependencies: 1882 | call-bind: 1.0.2 1883 | has-tostringtag: 1.0.0 1884 | dev: true 1885 | 1886 | /is-shared-array-buffer@1.0.2: 1887 | resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} 1888 | dependencies: 1889 | call-bind: 1.0.2 1890 | dev: true 1891 | 1892 | /is-stream@2.0.1: 1893 | resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} 1894 | engines: {node: '>=8'} 1895 | dev: true 1896 | 1897 | /is-string@1.0.7: 1898 | resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} 1899 | engines: {node: '>= 0.4'} 1900 | dependencies: 1901 | has-tostringtag: 1.0.0 1902 | dev: true 1903 | 1904 | /is-subdir@1.2.0: 1905 | resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} 1906 | engines: {node: '>=4'} 1907 | dependencies: 1908 | better-path-resolve: 1.0.0 1909 | dev: true 1910 | 1911 | /is-symbol@1.0.4: 1912 | resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} 1913 | engines: {node: '>= 0.4'} 1914 | dependencies: 1915 | has-symbols: 1.0.3 1916 | dev: true 1917 | 1918 | /is-typed-array@1.1.12: 1919 | resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} 1920 | engines: {node: '>= 0.4'} 1921 | dependencies: 1922 | which-typed-array: 1.1.11 1923 | dev: true 1924 | 1925 | /is-weakref@1.0.2: 1926 | resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} 1927 | dependencies: 1928 | call-bind: 1.0.2 1929 | dev: true 1930 | 1931 | /is-windows@1.0.2: 1932 | resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} 1933 | engines: {node: '>=0.10.0'} 1934 | dev: true 1935 | 1936 | /isarray@2.0.5: 1937 | resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} 1938 | dev: true 1939 | 1940 | /isexe@2.0.0: 1941 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1942 | dev: true 1943 | 1944 | /joycon@3.1.1: 1945 | resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} 1946 | engines: {node: '>=10'} 1947 | dev: true 1948 | 1949 | /js-tokens@4.0.0: 1950 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 1951 | dev: true 1952 | 1953 | /js-yaml@3.14.1: 1954 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} 1955 | hasBin: true 1956 | dependencies: 1957 | argparse: 1.0.10 1958 | esprima: 4.0.1 1959 | dev: true 1960 | 1961 | /js-yaml@4.1.0: 1962 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 1963 | hasBin: true 1964 | dependencies: 1965 | argparse: 2.0.1 1966 | dev: true 1967 | 1968 | /json-buffer@3.0.1: 1969 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 1970 | dev: true 1971 | 1972 | /json-parse-even-better-errors@2.3.1: 1973 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} 1974 | dev: true 1975 | 1976 | /json-schema-traverse@0.4.1: 1977 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1978 | dev: true 1979 | 1980 | /json-stable-stringify-without-jsonify@1.0.1: 1981 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 1982 | dev: true 1983 | 1984 | /jsonfile@4.0.0: 1985 | resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} 1986 | optionalDependencies: 1987 | graceful-fs: 4.2.11 1988 | dev: true 1989 | 1990 | /keyv@4.5.3: 1991 | resolution: {integrity: sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==} 1992 | dependencies: 1993 | json-buffer: 3.0.1 1994 | dev: true 1995 | 1996 | /kind-of@6.0.3: 1997 | resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} 1998 | engines: {node: '>=0.10.0'} 1999 | dev: true 2000 | 2001 | /kleur@4.1.5: 2002 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 2003 | engines: {node: '>=6'} 2004 | 2005 | /levn@0.4.1: 2006 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 2007 | engines: {node: '>= 0.8.0'} 2008 | dependencies: 2009 | prelude-ls: 1.2.1 2010 | type-check: 0.4.0 2011 | dev: true 2012 | 2013 | /lilconfig@2.1.0: 2014 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} 2015 | engines: {node: '>=10'} 2016 | dev: true 2017 | 2018 | /lines-and-columns@1.2.4: 2019 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 2020 | dev: true 2021 | 2022 | /load-tsconfig@0.2.5: 2023 | resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} 2024 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 2025 | dev: true 2026 | 2027 | /load-yaml-file@0.2.0: 2028 | resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} 2029 | engines: {node: '>=6'} 2030 | dependencies: 2031 | graceful-fs: 4.2.11 2032 | js-yaml: 3.14.1 2033 | pify: 4.0.1 2034 | strip-bom: 3.0.0 2035 | dev: true 2036 | 2037 | /locate-path@5.0.0: 2038 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} 2039 | engines: {node: '>=8'} 2040 | dependencies: 2041 | p-locate: 4.1.0 2042 | dev: true 2043 | 2044 | /locate-path@6.0.0: 2045 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 2046 | engines: {node: '>=10'} 2047 | dependencies: 2048 | p-locate: 5.0.0 2049 | dev: true 2050 | 2051 | /lodash.merge@4.6.2: 2052 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 2053 | dev: true 2054 | 2055 | /lodash.sortby@4.7.0: 2056 | resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} 2057 | dev: true 2058 | 2059 | /lodash.startcase@4.4.0: 2060 | resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} 2061 | dev: true 2062 | 2063 | /lru-cache@4.1.5: 2064 | resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} 2065 | dependencies: 2066 | pseudomap: 1.0.2 2067 | yallist: 2.1.2 2068 | dev: true 2069 | 2070 | /lru-cache@6.0.0: 2071 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 2072 | engines: {node: '>=10'} 2073 | dependencies: 2074 | yallist: 4.0.0 2075 | dev: true 2076 | 2077 | /map-obj@1.0.1: 2078 | resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} 2079 | engines: {node: '>=0.10.0'} 2080 | dev: true 2081 | 2082 | /map-obj@4.3.0: 2083 | resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} 2084 | engines: {node: '>=8'} 2085 | dev: true 2086 | 2087 | /meow@6.1.1: 2088 | resolution: {integrity: sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==} 2089 | engines: {node: '>=8'} 2090 | dependencies: 2091 | '@types/minimist': 1.2.2 2092 | camelcase-keys: 6.2.2 2093 | decamelize-keys: 1.1.1 2094 | hard-rejection: 2.1.0 2095 | minimist-options: 4.1.0 2096 | normalize-package-data: 2.5.0 2097 | read-pkg-up: 7.0.1 2098 | redent: 3.0.0 2099 | trim-newlines: 3.0.1 2100 | type-fest: 0.13.1 2101 | yargs-parser: 18.1.3 2102 | dev: true 2103 | 2104 | /merge-stream@2.0.0: 2105 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} 2106 | dev: true 2107 | 2108 | /merge2@1.4.1: 2109 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 2110 | engines: {node: '>= 8'} 2111 | dev: true 2112 | 2113 | /micromatch@4.0.5: 2114 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 2115 | engines: {node: '>=8.6'} 2116 | dependencies: 2117 | braces: 3.0.2 2118 | picomatch: 2.3.1 2119 | dev: true 2120 | 2121 | /mimic-fn@2.1.0: 2122 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} 2123 | engines: {node: '>=6'} 2124 | dev: true 2125 | 2126 | /min-indent@1.0.1: 2127 | resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} 2128 | engines: {node: '>=4'} 2129 | dev: true 2130 | 2131 | /minimatch@3.1.2: 2132 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 2133 | dependencies: 2134 | brace-expansion: 1.1.11 2135 | dev: true 2136 | 2137 | /minimist-options@4.1.0: 2138 | resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} 2139 | engines: {node: '>= 6'} 2140 | dependencies: 2141 | arrify: 1.0.1 2142 | is-plain-obj: 1.1.0 2143 | kind-of: 6.0.3 2144 | dev: true 2145 | 2146 | /mixme@0.5.9: 2147 | resolution: {integrity: sha512-VC5fg6ySUscaWUpI4gxCBTQMH2RdUpNrk+MsbpCYtIvf9SBJdiUey4qE7BXviJsJR4nDQxCZ+3yaYNW3guz/Pw==} 2148 | engines: {node: '>= 8.0.0'} 2149 | dev: true 2150 | 2151 | /ms@2.1.2: 2152 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 2153 | dev: true 2154 | 2155 | /mz@2.7.0: 2156 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} 2157 | dependencies: 2158 | any-promise: 1.3.0 2159 | object-assign: 4.1.1 2160 | thenify-all: 1.6.0 2161 | dev: true 2162 | 2163 | /natural-compare@1.4.0: 2164 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 2165 | dev: true 2166 | 2167 | /normalize-package-data@2.5.0: 2168 | resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} 2169 | dependencies: 2170 | hosted-git-info: 2.8.9 2171 | resolve: 1.22.6 2172 | semver: 5.7.2 2173 | validate-npm-package-license: 3.0.4 2174 | dev: true 2175 | 2176 | /normalize-path@3.0.0: 2177 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 2178 | engines: {node: '>=0.10.0'} 2179 | dev: true 2180 | 2181 | /npm-run-path@4.0.1: 2182 | resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} 2183 | engines: {node: '>=8'} 2184 | dependencies: 2185 | path-key: 3.1.1 2186 | dev: true 2187 | 2188 | /object-assign@4.1.1: 2189 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 2190 | engines: {node: '>=0.10.0'} 2191 | dev: true 2192 | 2193 | /object-inspect@1.12.3: 2194 | resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} 2195 | dev: true 2196 | 2197 | /object-keys@1.1.1: 2198 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} 2199 | engines: {node: '>= 0.4'} 2200 | dev: true 2201 | 2202 | /object.assign@4.1.4: 2203 | resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} 2204 | engines: {node: '>= 0.4'} 2205 | dependencies: 2206 | call-bind: 1.0.2 2207 | define-properties: 1.2.1 2208 | has-symbols: 1.0.3 2209 | object-keys: 1.1.1 2210 | dev: true 2211 | 2212 | /once@1.4.0: 2213 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 2214 | dependencies: 2215 | wrappy: 1.0.2 2216 | dev: true 2217 | 2218 | /onetime@5.1.2: 2219 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} 2220 | engines: {node: '>=6'} 2221 | dependencies: 2222 | mimic-fn: 2.1.0 2223 | dev: true 2224 | 2225 | /optionator@0.9.3: 2226 | resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} 2227 | engines: {node: '>= 0.8.0'} 2228 | dependencies: 2229 | '@aashutoshrathi/word-wrap': 1.2.6 2230 | deep-is: 0.1.4 2231 | fast-levenshtein: 2.0.6 2232 | levn: 0.4.1 2233 | prelude-ls: 1.2.1 2234 | type-check: 0.4.0 2235 | dev: true 2236 | 2237 | /os-tmpdir@1.0.2: 2238 | resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} 2239 | engines: {node: '>=0.10.0'} 2240 | dev: true 2241 | 2242 | /outdent@0.5.0: 2243 | resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} 2244 | dev: true 2245 | 2246 | /p-filter@2.1.0: 2247 | resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} 2248 | engines: {node: '>=8'} 2249 | dependencies: 2250 | p-map: 2.1.0 2251 | dev: true 2252 | 2253 | /p-limit@2.3.0: 2254 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} 2255 | engines: {node: '>=6'} 2256 | dependencies: 2257 | p-try: 2.2.0 2258 | dev: true 2259 | 2260 | /p-limit@3.1.0: 2261 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 2262 | engines: {node: '>=10'} 2263 | dependencies: 2264 | yocto-queue: 0.1.0 2265 | dev: true 2266 | 2267 | /p-locate@4.1.0: 2268 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} 2269 | engines: {node: '>=8'} 2270 | dependencies: 2271 | p-limit: 2.3.0 2272 | dev: true 2273 | 2274 | /p-locate@5.0.0: 2275 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 2276 | engines: {node: '>=10'} 2277 | dependencies: 2278 | p-limit: 3.1.0 2279 | dev: true 2280 | 2281 | /p-map@2.1.0: 2282 | resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} 2283 | engines: {node: '>=6'} 2284 | dev: true 2285 | 2286 | /p-try@2.2.0: 2287 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} 2288 | engines: {node: '>=6'} 2289 | dev: true 2290 | 2291 | /parent-module@1.0.1: 2292 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 2293 | engines: {node: '>=6'} 2294 | dependencies: 2295 | callsites: 3.1.0 2296 | dev: true 2297 | 2298 | /parse-json@5.2.0: 2299 | resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} 2300 | engines: {node: '>=8'} 2301 | dependencies: 2302 | '@babel/code-frame': 7.22.13 2303 | error-ex: 1.3.2 2304 | json-parse-even-better-errors: 2.3.1 2305 | lines-and-columns: 1.2.4 2306 | dev: true 2307 | 2308 | /path-exists@4.0.0: 2309 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 2310 | engines: {node: '>=8'} 2311 | dev: true 2312 | 2313 | /path-is-absolute@1.0.1: 2314 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 2315 | engines: {node: '>=0.10.0'} 2316 | dev: true 2317 | 2318 | /path-key@3.1.1: 2319 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 2320 | engines: {node: '>=8'} 2321 | dev: true 2322 | 2323 | /path-parse@1.0.7: 2324 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 2325 | dev: true 2326 | 2327 | /path-type@4.0.0: 2328 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 2329 | engines: {node: '>=8'} 2330 | dev: true 2331 | 2332 | /picocolors@1.0.0: 2333 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 2334 | dev: false 2335 | 2336 | /picomatch@2.3.1: 2337 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 2338 | engines: {node: '>=8.6'} 2339 | dev: true 2340 | 2341 | /pify@4.0.1: 2342 | resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} 2343 | engines: {node: '>=6'} 2344 | dev: true 2345 | 2346 | /pirates@4.0.6: 2347 | resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} 2348 | engines: {node: '>= 6'} 2349 | dev: true 2350 | 2351 | /pkg-dir@4.2.0: 2352 | resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} 2353 | engines: {node: '>=8'} 2354 | dependencies: 2355 | find-up: 4.1.0 2356 | dev: true 2357 | 2358 | /postcss-load-config@4.0.1: 2359 | resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==} 2360 | engines: {node: '>= 14'} 2361 | peerDependencies: 2362 | postcss: '>=8.0.9' 2363 | ts-node: '>=9.0.0' 2364 | peerDependenciesMeta: 2365 | postcss: 2366 | optional: true 2367 | ts-node: 2368 | optional: true 2369 | dependencies: 2370 | lilconfig: 2.1.0 2371 | yaml: 2.3.2 2372 | dev: true 2373 | 2374 | /preferred-pm@3.1.2: 2375 | resolution: {integrity: sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==} 2376 | engines: {node: '>=10'} 2377 | dependencies: 2378 | find-up: 5.0.0 2379 | find-yarn-workspace-root2: 1.2.16 2380 | path-exists: 4.0.0 2381 | which-pm: 2.0.0 2382 | dev: true 2383 | 2384 | /prelude-ls@1.2.1: 2385 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 2386 | engines: {node: '>= 0.8.0'} 2387 | dev: true 2388 | 2389 | /prettier@2.8.8: 2390 | resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} 2391 | engines: {node: '>=10.13.0'} 2392 | hasBin: true 2393 | dev: true 2394 | 2395 | /prettier@3.0.3: 2396 | resolution: {integrity: sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==} 2397 | engines: {node: '>=14'} 2398 | hasBin: true 2399 | dev: false 2400 | 2401 | /pseudomap@1.0.2: 2402 | resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} 2403 | dev: true 2404 | 2405 | /punycode@2.3.0: 2406 | resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} 2407 | engines: {node: '>=6'} 2408 | dev: true 2409 | 2410 | /queue-microtask@1.2.3: 2411 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 2412 | dev: true 2413 | 2414 | /quick-lru@4.0.1: 2415 | resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==} 2416 | engines: {node: '>=8'} 2417 | dev: true 2418 | 2419 | /read-pkg-up@7.0.1: 2420 | resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} 2421 | engines: {node: '>=8'} 2422 | dependencies: 2423 | find-up: 4.1.0 2424 | read-pkg: 5.2.0 2425 | type-fest: 0.8.1 2426 | dev: true 2427 | 2428 | /read-pkg@5.2.0: 2429 | resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} 2430 | engines: {node: '>=8'} 2431 | dependencies: 2432 | '@types/normalize-package-data': 2.4.1 2433 | normalize-package-data: 2.5.0 2434 | parse-json: 5.2.0 2435 | type-fest: 0.6.0 2436 | dev: true 2437 | 2438 | /read-yaml-file@1.1.0: 2439 | resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} 2440 | engines: {node: '>=6'} 2441 | dependencies: 2442 | graceful-fs: 4.2.11 2443 | js-yaml: 3.14.1 2444 | pify: 4.0.1 2445 | strip-bom: 3.0.0 2446 | dev: true 2447 | 2448 | /readdirp@3.6.0: 2449 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 2450 | engines: {node: '>=8.10.0'} 2451 | dependencies: 2452 | picomatch: 2.3.1 2453 | dev: true 2454 | 2455 | /redent@3.0.0: 2456 | resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} 2457 | engines: {node: '>=8'} 2458 | dependencies: 2459 | indent-string: 4.0.0 2460 | strip-indent: 3.0.0 2461 | dev: true 2462 | 2463 | /regenerator-runtime@0.14.0: 2464 | resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} 2465 | dev: true 2466 | 2467 | /regexp.prototype.flags@1.5.1: 2468 | resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} 2469 | engines: {node: '>= 0.4'} 2470 | dependencies: 2471 | call-bind: 1.0.2 2472 | define-properties: 1.2.1 2473 | set-function-name: 2.0.1 2474 | dev: true 2475 | 2476 | /require-directory@2.1.1: 2477 | resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} 2478 | engines: {node: '>=0.10.0'} 2479 | dev: true 2480 | 2481 | /require-main-filename@2.0.0: 2482 | resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} 2483 | dev: true 2484 | 2485 | /resolve-from@4.0.0: 2486 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 2487 | engines: {node: '>=4'} 2488 | dev: true 2489 | 2490 | /resolve-from@5.0.0: 2491 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} 2492 | engines: {node: '>=8'} 2493 | dev: true 2494 | 2495 | /resolve@1.22.6: 2496 | resolution: {integrity: sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw==} 2497 | hasBin: true 2498 | dependencies: 2499 | is-core-module: 2.13.0 2500 | path-parse: 1.0.7 2501 | supports-preserve-symlinks-flag: 1.0.0 2502 | dev: true 2503 | 2504 | /reusify@1.0.4: 2505 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 2506 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 2507 | dev: true 2508 | 2509 | /rimraf@3.0.2: 2510 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 2511 | hasBin: true 2512 | dependencies: 2513 | glob: 7.1.6 2514 | dev: true 2515 | 2516 | /rollup@3.29.2: 2517 | resolution: {integrity: sha512-CJouHoZ27v6siztc21eEQGo0kIcE5D1gVPA571ez0mMYb25LGYGKnVNXpEj5MGlepmDWGXNjDB5q7uNiPHC11A==} 2518 | engines: {node: '>=14.18.0', npm: '>=8.0.0'} 2519 | hasBin: true 2520 | optionalDependencies: 2521 | fsevents: 2.3.3 2522 | dev: true 2523 | 2524 | /run-parallel@1.2.0: 2525 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 2526 | dependencies: 2527 | queue-microtask: 1.2.3 2528 | dev: true 2529 | 2530 | /safe-array-concat@1.0.1: 2531 | resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} 2532 | engines: {node: '>=0.4'} 2533 | dependencies: 2534 | call-bind: 1.0.2 2535 | get-intrinsic: 1.2.1 2536 | has-symbols: 1.0.3 2537 | isarray: 2.0.5 2538 | dev: true 2539 | 2540 | /safe-regex-test@1.0.0: 2541 | resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} 2542 | dependencies: 2543 | call-bind: 1.0.2 2544 | get-intrinsic: 1.2.1 2545 | is-regex: 1.1.4 2546 | dev: true 2547 | 2548 | /safer-buffer@2.1.2: 2549 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} 2550 | dev: true 2551 | 2552 | /semver@5.7.2: 2553 | resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} 2554 | hasBin: true 2555 | dev: true 2556 | 2557 | /semver@7.5.4: 2558 | resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} 2559 | engines: {node: '>=10'} 2560 | hasBin: true 2561 | dependencies: 2562 | lru-cache: 6.0.0 2563 | dev: true 2564 | 2565 | /set-blocking@2.0.0: 2566 | resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} 2567 | dev: true 2568 | 2569 | /set-function-name@2.0.1: 2570 | resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} 2571 | engines: {node: '>= 0.4'} 2572 | dependencies: 2573 | define-data-property: 1.1.0 2574 | functions-have-names: 1.2.3 2575 | has-property-descriptors: 1.0.0 2576 | dev: true 2577 | 2578 | /shebang-command@1.2.0: 2579 | resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} 2580 | engines: {node: '>=0.10.0'} 2581 | dependencies: 2582 | shebang-regex: 1.0.0 2583 | dev: true 2584 | 2585 | /shebang-command@2.0.0: 2586 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 2587 | engines: {node: '>=8'} 2588 | dependencies: 2589 | shebang-regex: 3.0.0 2590 | dev: true 2591 | 2592 | /shebang-regex@1.0.0: 2593 | resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} 2594 | engines: {node: '>=0.10.0'} 2595 | dev: true 2596 | 2597 | /shebang-regex@3.0.0: 2598 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 2599 | engines: {node: '>=8'} 2600 | dev: true 2601 | 2602 | /side-channel@1.0.4: 2603 | resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} 2604 | dependencies: 2605 | call-bind: 1.0.2 2606 | get-intrinsic: 1.2.1 2607 | object-inspect: 1.12.3 2608 | dev: true 2609 | 2610 | /signal-exit@3.0.7: 2611 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 2612 | dev: true 2613 | 2614 | /sisteransi@1.0.5: 2615 | resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} 2616 | dev: false 2617 | 2618 | /slash@3.0.0: 2619 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 2620 | engines: {node: '>=8'} 2621 | dev: true 2622 | 2623 | /smartwrap@2.0.2: 2624 | resolution: {integrity: sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==} 2625 | engines: {node: '>=6'} 2626 | hasBin: true 2627 | dependencies: 2628 | array.prototype.flat: 1.3.2 2629 | breakword: 1.0.6 2630 | grapheme-splitter: 1.0.4 2631 | strip-ansi: 6.0.1 2632 | wcwidth: 1.0.1 2633 | yargs: 15.4.1 2634 | dev: true 2635 | 2636 | /source-map@0.8.0-beta.0: 2637 | resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} 2638 | engines: {node: '>= 8'} 2639 | dependencies: 2640 | whatwg-url: 7.1.0 2641 | dev: true 2642 | 2643 | /spawndamnit@2.0.0: 2644 | resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==} 2645 | dependencies: 2646 | cross-spawn: 5.1.0 2647 | signal-exit: 3.0.7 2648 | dev: true 2649 | 2650 | /spdx-correct@3.2.0: 2651 | resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} 2652 | dependencies: 2653 | spdx-expression-parse: 3.0.1 2654 | spdx-license-ids: 3.0.15 2655 | dev: true 2656 | 2657 | /spdx-exceptions@2.3.0: 2658 | resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} 2659 | dev: true 2660 | 2661 | /spdx-expression-parse@3.0.1: 2662 | resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} 2663 | dependencies: 2664 | spdx-exceptions: 2.3.0 2665 | spdx-license-ids: 3.0.15 2666 | dev: true 2667 | 2668 | /spdx-license-ids@3.0.15: 2669 | resolution: {integrity: sha512-lpT8hSQp9jAKp9mhtBU4Xjon8LPGBvLIuBiSVhMEtmLecTh2mO0tlqrAMp47tBXzMr13NJMQ2lf7RpQGLJ3HsQ==} 2670 | dev: true 2671 | 2672 | /sprintf-js@1.0.3: 2673 | resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} 2674 | dev: true 2675 | 2676 | /stream-transform@2.1.3: 2677 | resolution: {integrity: sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==} 2678 | dependencies: 2679 | mixme: 0.5.9 2680 | dev: true 2681 | 2682 | /string-width@4.2.3: 2683 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 2684 | engines: {node: '>=8'} 2685 | dependencies: 2686 | emoji-regex: 8.0.0 2687 | is-fullwidth-code-point: 3.0.0 2688 | strip-ansi: 6.0.1 2689 | dev: true 2690 | 2691 | /string.prototype.trim@1.2.8: 2692 | resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} 2693 | engines: {node: '>= 0.4'} 2694 | dependencies: 2695 | call-bind: 1.0.2 2696 | define-properties: 1.2.1 2697 | es-abstract: 1.22.2 2698 | dev: true 2699 | 2700 | /string.prototype.trimend@1.0.7: 2701 | resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} 2702 | dependencies: 2703 | call-bind: 1.0.2 2704 | define-properties: 1.2.1 2705 | es-abstract: 1.22.2 2706 | dev: true 2707 | 2708 | /string.prototype.trimstart@1.0.7: 2709 | resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} 2710 | dependencies: 2711 | call-bind: 1.0.2 2712 | define-properties: 1.2.1 2713 | es-abstract: 1.22.2 2714 | dev: true 2715 | 2716 | /strip-ansi@6.0.1: 2717 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 2718 | engines: {node: '>=8'} 2719 | dependencies: 2720 | ansi-regex: 5.0.1 2721 | dev: true 2722 | 2723 | /strip-bom@3.0.0: 2724 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 2725 | engines: {node: '>=4'} 2726 | dev: true 2727 | 2728 | /strip-final-newline@2.0.0: 2729 | resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} 2730 | engines: {node: '>=6'} 2731 | dev: true 2732 | 2733 | /strip-indent@3.0.0: 2734 | resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} 2735 | engines: {node: '>=8'} 2736 | dependencies: 2737 | min-indent: 1.0.1 2738 | dev: true 2739 | 2740 | /strip-json-comments@3.1.1: 2741 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 2742 | engines: {node: '>=8'} 2743 | dev: true 2744 | 2745 | /sucrase@3.34.0: 2746 | resolution: {integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==} 2747 | engines: {node: '>=8'} 2748 | hasBin: true 2749 | dependencies: 2750 | '@jridgewell/gen-mapping': 0.3.3 2751 | commander: 4.1.1 2752 | glob: 7.1.6 2753 | lines-and-columns: 1.2.4 2754 | mz: 2.7.0 2755 | pirates: 4.0.6 2756 | ts-interface-checker: 0.1.13 2757 | dev: true 2758 | 2759 | /supports-color@5.5.0: 2760 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 2761 | engines: {node: '>=4'} 2762 | dependencies: 2763 | has-flag: 3.0.0 2764 | dev: true 2765 | 2766 | /supports-color@7.2.0: 2767 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 2768 | engines: {node: '>=8'} 2769 | dependencies: 2770 | has-flag: 4.0.0 2771 | dev: true 2772 | 2773 | /supports-preserve-symlinks-flag@1.0.0: 2774 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 2775 | engines: {node: '>= 0.4'} 2776 | dev: true 2777 | 2778 | /term-size@2.2.1: 2779 | resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} 2780 | engines: {node: '>=8'} 2781 | dev: true 2782 | 2783 | /text-table@0.2.0: 2784 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 2785 | dev: true 2786 | 2787 | /thenify-all@1.6.0: 2788 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} 2789 | engines: {node: '>=0.8'} 2790 | dependencies: 2791 | thenify: 3.3.1 2792 | dev: true 2793 | 2794 | /thenify@3.3.1: 2795 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 2796 | dependencies: 2797 | any-promise: 1.3.0 2798 | dev: true 2799 | 2800 | /tmp@0.0.33: 2801 | resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} 2802 | engines: {node: '>=0.6.0'} 2803 | dependencies: 2804 | os-tmpdir: 1.0.2 2805 | dev: true 2806 | 2807 | /to-regex-range@5.0.1: 2808 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 2809 | engines: {node: '>=8.0'} 2810 | dependencies: 2811 | is-number: 7.0.0 2812 | dev: true 2813 | 2814 | /tr46@1.0.1: 2815 | resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} 2816 | dependencies: 2817 | punycode: 2.3.0 2818 | dev: true 2819 | 2820 | /tree-kill@1.2.2: 2821 | resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} 2822 | hasBin: true 2823 | dev: true 2824 | 2825 | /trim-newlines@3.0.1: 2826 | resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} 2827 | engines: {node: '>=8'} 2828 | dev: true 2829 | 2830 | /ts-api-utils@1.0.3(typescript@5.2.2): 2831 | resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} 2832 | engines: {node: '>=16.13.0'} 2833 | peerDependencies: 2834 | typescript: '>=4.2.0' 2835 | dependencies: 2836 | typescript: 5.2.2 2837 | dev: true 2838 | 2839 | /ts-interface-checker@0.1.13: 2840 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} 2841 | dev: true 2842 | 2843 | /tsup@7.2.0(typescript@5.2.2): 2844 | resolution: {integrity: sha512-vDHlczXbgUvY3rWvqFEbSqmC1L7woozbzngMqTtL2PGBODTtWlRwGDDawhvWzr5c1QjKe4OAKqJGfE1xeXUvtQ==} 2845 | engines: {node: '>=16.14'} 2846 | hasBin: true 2847 | peerDependencies: 2848 | '@swc/core': ^1 2849 | postcss: ^8.4.12 2850 | typescript: '>=4.1.0' 2851 | peerDependenciesMeta: 2852 | '@swc/core': 2853 | optional: true 2854 | postcss: 2855 | optional: true 2856 | typescript: 2857 | optional: true 2858 | dependencies: 2859 | bundle-require: 4.0.1(esbuild@0.18.20) 2860 | cac: 6.7.14 2861 | chokidar: 3.5.3 2862 | debug: 4.3.4 2863 | esbuild: 0.18.20 2864 | execa: 5.1.1 2865 | globby: 11.1.0 2866 | joycon: 3.1.1 2867 | postcss-load-config: 4.0.1 2868 | resolve-from: 5.0.0 2869 | rollup: 3.29.2 2870 | source-map: 0.8.0-beta.0 2871 | sucrase: 3.34.0 2872 | tree-kill: 1.2.2 2873 | typescript: 5.2.2 2874 | transitivePeerDependencies: 2875 | - supports-color 2876 | - ts-node 2877 | dev: true 2878 | 2879 | /tty-table@4.2.1: 2880 | resolution: {integrity: sha512-xz0uKo+KakCQ+Dxj1D/tKn2FSyreSYWzdkL/BYhgN6oMW808g8QRMuh1atAV9fjTPbWBjfbkKQpI/5rEcnAc7g==} 2881 | engines: {node: '>=8.0.0'} 2882 | hasBin: true 2883 | dependencies: 2884 | chalk: 4.1.2 2885 | csv: 5.5.3 2886 | kleur: 4.1.5 2887 | smartwrap: 2.0.2 2888 | strip-ansi: 6.0.1 2889 | wcwidth: 1.0.1 2890 | yargs: 17.7.2 2891 | dev: true 2892 | 2893 | /type-check@0.4.0: 2894 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 2895 | engines: {node: '>= 0.8.0'} 2896 | dependencies: 2897 | prelude-ls: 1.2.1 2898 | dev: true 2899 | 2900 | /type-fest@0.13.1: 2901 | resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} 2902 | engines: {node: '>=10'} 2903 | dev: true 2904 | 2905 | /type-fest@0.20.2: 2906 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 2907 | engines: {node: '>=10'} 2908 | dev: true 2909 | 2910 | /type-fest@0.6.0: 2911 | resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} 2912 | engines: {node: '>=8'} 2913 | dev: true 2914 | 2915 | /type-fest@0.8.1: 2916 | resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} 2917 | engines: {node: '>=8'} 2918 | dev: true 2919 | 2920 | /typed-array-buffer@1.0.0: 2921 | resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} 2922 | engines: {node: '>= 0.4'} 2923 | dependencies: 2924 | call-bind: 1.0.2 2925 | get-intrinsic: 1.2.1 2926 | is-typed-array: 1.1.12 2927 | dev: true 2928 | 2929 | /typed-array-byte-length@1.0.0: 2930 | resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} 2931 | engines: {node: '>= 0.4'} 2932 | dependencies: 2933 | call-bind: 1.0.2 2934 | for-each: 0.3.3 2935 | has-proto: 1.0.1 2936 | is-typed-array: 1.1.12 2937 | dev: true 2938 | 2939 | /typed-array-byte-offset@1.0.0: 2940 | resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} 2941 | engines: {node: '>= 0.4'} 2942 | dependencies: 2943 | available-typed-arrays: 1.0.5 2944 | call-bind: 1.0.2 2945 | for-each: 0.3.3 2946 | has-proto: 1.0.1 2947 | is-typed-array: 1.1.12 2948 | dev: true 2949 | 2950 | /typed-array-length@1.0.4: 2951 | resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} 2952 | dependencies: 2953 | call-bind: 1.0.2 2954 | for-each: 0.3.3 2955 | is-typed-array: 1.1.12 2956 | dev: true 2957 | 2958 | /typescript@5.2.2: 2959 | resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} 2960 | engines: {node: '>=14.17'} 2961 | hasBin: true 2962 | dev: true 2963 | 2964 | /unbox-primitive@1.0.2: 2965 | resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} 2966 | dependencies: 2967 | call-bind: 1.0.2 2968 | has-bigints: 1.0.2 2969 | has-symbols: 1.0.3 2970 | which-boxed-primitive: 1.0.2 2971 | dev: true 2972 | 2973 | /universalify@0.1.2: 2974 | resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} 2975 | engines: {node: '>= 4.0.0'} 2976 | dev: true 2977 | 2978 | /uri-js@4.4.1: 2979 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 2980 | dependencies: 2981 | punycode: 2.3.0 2982 | dev: true 2983 | 2984 | /validate-npm-package-license@3.0.4: 2985 | resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} 2986 | dependencies: 2987 | spdx-correct: 3.2.0 2988 | spdx-expression-parse: 3.0.1 2989 | dev: true 2990 | 2991 | /wcwidth@1.0.1: 2992 | resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} 2993 | dependencies: 2994 | defaults: 1.0.4 2995 | dev: true 2996 | 2997 | /webidl-conversions@4.0.2: 2998 | resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} 2999 | dev: true 3000 | 3001 | /whatwg-url@7.1.0: 3002 | resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} 3003 | dependencies: 3004 | lodash.sortby: 4.7.0 3005 | tr46: 1.0.1 3006 | webidl-conversions: 4.0.2 3007 | dev: true 3008 | 3009 | /which-boxed-primitive@1.0.2: 3010 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} 3011 | dependencies: 3012 | is-bigint: 1.0.4 3013 | is-boolean-object: 1.1.2 3014 | is-number-object: 1.0.7 3015 | is-string: 1.0.7 3016 | is-symbol: 1.0.4 3017 | dev: true 3018 | 3019 | /which-module@2.0.1: 3020 | resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} 3021 | dev: true 3022 | 3023 | /which-pm@2.0.0: 3024 | resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==} 3025 | engines: {node: '>=8.15'} 3026 | dependencies: 3027 | load-yaml-file: 0.2.0 3028 | path-exists: 4.0.0 3029 | dev: true 3030 | 3031 | /which-typed-array@1.1.11: 3032 | resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} 3033 | engines: {node: '>= 0.4'} 3034 | dependencies: 3035 | available-typed-arrays: 1.0.5 3036 | call-bind: 1.0.2 3037 | for-each: 0.3.3 3038 | gopd: 1.0.1 3039 | has-tostringtag: 1.0.0 3040 | dev: true 3041 | 3042 | /which@1.3.1: 3043 | resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} 3044 | hasBin: true 3045 | dependencies: 3046 | isexe: 2.0.0 3047 | dev: true 3048 | 3049 | /which@2.0.2: 3050 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 3051 | engines: {node: '>= 8'} 3052 | hasBin: true 3053 | dependencies: 3054 | isexe: 2.0.0 3055 | dev: true 3056 | 3057 | /wrap-ansi@6.2.0: 3058 | resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} 3059 | engines: {node: '>=8'} 3060 | dependencies: 3061 | ansi-styles: 4.3.0 3062 | string-width: 4.2.3 3063 | strip-ansi: 6.0.1 3064 | dev: true 3065 | 3066 | /wrap-ansi@7.0.0: 3067 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 3068 | engines: {node: '>=10'} 3069 | dependencies: 3070 | ansi-styles: 4.3.0 3071 | string-width: 4.2.3 3072 | strip-ansi: 6.0.1 3073 | dev: true 3074 | 3075 | /wrappy@1.0.2: 3076 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 3077 | dev: true 3078 | 3079 | /y18n@4.0.3: 3080 | resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} 3081 | dev: true 3082 | 3083 | /y18n@5.0.8: 3084 | resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} 3085 | engines: {node: '>=10'} 3086 | dev: true 3087 | 3088 | /yallist@2.1.2: 3089 | resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} 3090 | dev: true 3091 | 3092 | /yallist@4.0.0: 3093 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 3094 | dev: true 3095 | 3096 | /yaml@2.3.2: 3097 | resolution: {integrity: sha512-N/lyzTPaJasoDmfV7YTrYCI0G/3ivm/9wdG0aHuheKowWQwGTsK0Eoiw6utmzAnI6pkJa0DUVygvp3spqqEKXg==} 3098 | engines: {node: '>= 14'} 3099 | dev: true 3100 | 3101 | /yargs-parser@18.1.3: 3102 | resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} 3103 | engines: {node: '>=6'} 3104 | dependencies: 3105 | camelcase: 5.3.1 3106 | decamelize: 1.2.0 3107 | dev: true 3108 | 3109 | /yargs-parser@21.1.1: 3110 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} 3111 | engines: {node: '>=12'} 3112 | dev: true 3113 | 3114 | /yargs@15.4.1: 3115 | resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==} 3116 | engines: {node: '>=8'} 3117 | dependencies: 3118 | cliui: 6.0.0 3119 | decamelize: 1.2.0 3120 | find-up: 4.1.0 3121 | get-caller-file: 2.0.5 3122 | require-directory: 2.1.1 3123 | require-main-filename: 2.0.0 3124 | set-blocking: 2.0.0 3125 | string-width: 4.2.3 3126 | which-module: 2.0.1 3127 | y18n: 4.0.3 3128 | yargs-parser: 18.1.3 3129 | dev: true 3130 | 3131 | /yargs@17.7.2: 3132 | resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} 3133 | engines: {node: '>=12'} 3134 | dependencies: 3135 | cliui: 8.0.1 3136 | escalade: 3.1.1 3137 | get-caller-file: 2.0.5 3138 | require-directory: 2.1.1 3139 | string-width: 4.2.3 3140 | y18n: 5.0.8 3141 | yargs-parser: 21.1.1 3142 | dev: true 3143 | 3144 | /yocto-queue@0.1.0: 3145 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 3146 | engines: {node: '>=10'} 3147 | dev: true 3148 | -------------------------------------------------------------------------------- /src/commands/init.ts: -------------------------------------------------------------------------------- 1 | import kleur from 'kleur'; 2 | import { intro, text, multiselect, confirm, cancel, outro } from '@clack/prompts'; 3 | import { promises as fs, existsSync } from 'fs'; 4 | import { asyncExec, getConfigExtension, getPM, isDirectory, executeJobs } from '../util/util.js'; 5 | import path from 'path'; 6 | import { fileURLToPath } from 'url'; 7 | import { Job, Platform, Plugin, ProjectOptions } from '../types/types.js'; 8 | 9 | export async function init() { 10 | console.log(` 11 | ██████ █████ ██████ ██ ██ ██ ████████ ██████ ██ ██ 12 | ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ 13 | ██ ███████ ██████ █████ ██ ██ ██ ██ ██ 14 | ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ 15 | ██████ ██ ██ ██ ██ ██ ██ ██ ██████ ███████ ██ 16 | `); 17 | intro(`Welcome to the ${kleur.underline('capkit')} CLI!`); 18 | const options = await promptOptions(); 19 | await initializeProject(options); 20 | outro( 21 | `You're all set! Happy coding!\n\n${kleur.grey( 22 | 'If you run into any issues, please report them here: https://github.com/Hugos68/capkit/issues/new' 23 | )}` 24 | ); 25 | } 26 | 27 | async function promptOptions() { 28 | const configExtension = getConfigExtension(); 29 | 30 | if (configExtension) { 31 | const shouldContinue = await confirm({ 32 | message: `Found existing Capacitor config: "${kleur.cyan( 33 | `capacitor.config.${configExtension}` 34 | )}".\nProceeding will ${kleur.underline( 35 | 'overwrite your current configuration' 36 | )}. Do you want to continue?` 37 | }); 38 | if (!shouldContinue) { 39 | cancel('Operation canceled'); 40 | process.exit(1); 41 | } 42 | } 43 | 44 | const packageJsonName = JSON.parse(String(await fs.readFile('package.json')))['name']; 45 | 46 | const appName = (await text({ 47 | message: `What is the ${kleur.underline('name')} of your project?`, 48 | placeholder: packageJsonName, 49 | validate: (value) => { 50 | if (value.length < 1) return 'Invalid name. Must be at least 1 character long.'; 51 | } 52 | })) as string; 53 | 54 | const appId = (await text({ 55 | message: `What is the ${kleur.underline('ID')} of your project?`, 56 | placeholder: `com.company.${appName}`, 57 | validate: (value) => { 58 | if (!/^[a-z][a-z0-9_]*(\.[a-z0-9_]+)+$/.test(value.toLowerCase())) { 59 | return `Invalid App ID "${value}". Must be in Java package form with no dashes (ex: com.example.app)`; 60 | } 61 | } 62 | })) as string; 63 | 64 | const shouldPromptPlatforms = await confirm({ 65 | message: 'Do you want to add additional platforms?' 66 | }); 67 | 68 | const allPlatforms = ['Android', 'iOS']; 69 | 70 | let platforms: Platform[] = []; 71 | if (shouldPromptPlatforms) { 72 | platforms = (await multiselect({ 73 | message: 'What platforms do you want to add?', 74 | options: allPlatforms.map((platform) => { 75 | return { 76 | value: platform.toLowerCase() as Platform, 77 | label: platform 78 | }; 79 | }), 80 | required: false 81 | })) as Platform[]; 82 | } 83 | 84 | const allPlugins = [ 85 | 'Action Sheet', 86 | 'App', 87 | 'App Launcher', 88 | 'Browser', 89 | 'Camera', 90 | 'Clipboard', 91 | 'Device', 92 | 'Dialog', 93 | 'Filesystem', 94 | 'Geolocation', 95 | 'Google Maps', 96 | 'Haptics', 97 | 'Keyboard', 98 | 'Local Notifications', 99 | 'Motion', 100 | 'Network', 101 | 'Preferences', 102 | 'Push Notifications', 103 | 'Screen Reader', 104 | 'Share', 105 | 'Splash Screen', 106 | 'Status Bar', 107 | 'Text Zoom', 108 | 'Toast' 109 | ]; 110 | 111 | const shouldPromptPlugins = await confirm({ 112 | message: 'Do you want to add additional plugins?' 113 | }); 114 | 115 | let plugins: Plugin[] = []; 116 | if (shouldPromptPlugins) { 117 | plugins = (await multiselect({ 118 | message: 'What plugins do you want to add?', 119 | options: allPlugins.map((plugin) => { 120 | return { 121 | value: plugin.toLowerCase().replace(/ /g, '-') as Plugin, 122 | label: plugin 123 | }; 124 | }), 125 | required: false 126 | })) as Plugin[]; 127 | } 128 | 129 | const options = { 130 | appName, 131 | appId, 132 | platforms, 133 | plugins 134 | } as ProjectOptions; 135 | 136 | return options; 137 | } 138 | 139 | export async function initializeProject({ appName, appId, platforms, plugins }: ProjectOptions) { 140 | const extension = getConfigExtension(); 141 | const packageManager = getPM(); 142 | const jobs: Job[] = []; 143 | 144 | /* Configuration jobs */ 145 | if (extension) { 146 | jobs.push({ 147 | start: `Removing existing config: "${kleur.cyan(`capacitor.config.${extension}`)}"`, 148 | stop: `Successfully removed existing config: "${kleur.cyan( 149 | `capacitor.config.${extension}` 150 | )}"`, 151 | task: async () => await fs.unlink(`capacitor.config.${extension}`) 152 | }); 153 | } 154 | 155 | jobs.push({ 156 | start: `Creating: "${kleur.cyan('capacitor.config.json')}"`, 157 | stop: `Successfully created: "${kleur.cyan('capacitor.config.json')}"`, 158 | task: async () => 159 | await fs.writeFile( 160 | 'capacitor.config.json', 161 | JSON.stringify({ appId, appName, webDir: 'build' }, null, 2) 162 | ) 163 | }); 164 | 165 | jobs.push({ 166 | start: `Configuring: "${kleur.cyan('package.json')}"`, 167 | stop: `Successfully configured: "${kleur.cyan('package.json')}"`, 168 | task: async () => { 169 | const packageJson = JSON.parse(String(await fs.readFile('package.json'))); 170 | packageJson.scripts['dev:cap'] = 'node scripts/syncnetworkconfig.js && vite dev --host'; 171 | packageJson.scripts['build:cap'] = 'vite build && npx cap sync'; 172 | return await fs.writeFile('package.json', JSON.stringify(packageJson, null, 2)); 173 | } 174 | }); 175 | 176 | if (existsSync(`${process.cwd()}/.gitignore`)) { 177 | jobs.push({ 178 | start: `Configuring: "${kleur.cyan('.gitignore')}"`, 179 | stop: `Successfully configured: "${kleur.cyan('.gitignore')}"`, 180 | task: async () => { 181 | const lines = ['# Capacitor', 'capacitor.config.json.timestamp-*']; 182 | const gitignore = await fs.readFile(`${process.cwd()}/.gitignore`, 'utf-8'); 183 | const uniqueLines = lines.filter((line) => !gitignore.includes(line)); 184 | if (uniqueLines.length === 0) return; 185 | const newGitignore = gitignore + '\n' + uniqueLines.join('\n'); 186 | return fs.writeFile('.gitignore', newGitignore, 'utf-8'); 187 | } 188 | }); 189 | } 190 | 191 | /* Install jobs */ 192 | jobs.push({ 193 | start: 'Installing Capacitor', 194 | stop: 'Successfully installed Capacitor', 195 | task: async () => await asyncExec(`${packageManager} install @capacitor/cli @capacitor/core`) 196 | }); 197 | 198 | if (platforms.length > 0) { 199 | jobs.push({ 200 | start: 'Adding additional platforms', 201 | stop: 'Successfully added additional platforms', 202 | task: async () => { 203 | for (let i = 0; i < platforms.length; i++) { 204 | const platform = platforms[i]; 205 | await asyncExec(`${packageManager} install @capacitor/${platform}`); 206 | await asyncExec(`npx cap add ${platform}`); 207 | } 208 | } 209 | }); 210 | } 211 | 212 | if (plugins.length > 0) { 213 | jobs.push({ 214 | start: 'Adding additional plugins', 215 | stop: 'Successfully added additional plugins', 216 | task: async () => { 217 | let installCommand = `${packageManager} install`; 218 | for (let i = 0; i < plugins.length; i++) { 219 | const platform = plugins[i]; 220 | installCommand += ` @capacitor/${platform}`; 221 | } 222 | return await asyncExec(installCommand); 223 | } 224 | }); 225 | } 226 | 227 | jobs.push({ 228 | start: 'Installing custom scripts', 229 | stop: 'Successfully installed custom scripts', 230 | task: async () => { 231 | const packageDir = path.dirname(fileURLToPath(import.meta.url)); 232 | const consumerDir = process.cwd(); 233 | 234 | if (!existsSync(`${consumerDir}/scripts`) || !isDirectory(`${consumerDir}/scripts`)) { 235 | await fs.mkdir(`${consumerDir}/scripts`); 236 | } 237 | 238 | return fs.copyFile( 239 | `${packageDir}/scripts/syncnetworkconfig.js`, 240 | `${consumerDir}/scripts/syncnetworkconfig.js` 241 | ); 242 | } 243 | }); 244 | 245 | await executeJobs(jobs); 246 | } 247 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | import { Command } from 'commander'; 3 | import { init } from './commands/init.js'; 4 | import fs from 'fs'; 5 | 6 | const program = new Command(); 7 | 8 | program.version(JSON.parse(String(fs.readFileSync('package.json')))['version']); 9 | program.command('initialize').alias('init').description('initialize capkit').action(init); 10 | program.parse(process.argv); 11 | 12 | export { initializeProject } from './commands/init.js'; 13 | export { 14 | ProjectOptions, 15 | Platform, 16 | Plugin, 17 | ConfigExtension, 18 | PackageManager 19 | } from './types/types.js'; 20 | -------------------------------------------------------------------------------- /src/scripts/syncnetworkconfig.ts: -------------------------------------------------------------------------------- 1 | import { exec } from 'child_process'; 2 | import { promises as fs } from 'fs'; 3 | import os from 'os'; 4 | 5 | async function syncNetworkConfig() { 6 | // Read and cache config 7 | const capacitorConfigRaw = await fs.readFile('./capacitor.config.json'); 8 | await fs.copyFile('./capacitor.config.json', `./capacitor.config.json.timestamp-${Date.now()}`); 9 | 10 | // Edit config 11 | const config = JSON.parse(String(capacitorConfigRaw)); 12 | if (!config.server) config.server = {}; 13 | config.server.url = `http://${getIp()}:${await getPort()}/`; 14 | config.server.cleartext = true; 15 | await fs.writeFile('./capacitor.config.json', JSON.stringify(config)); 16 | 17 | // Sync config with Capacitor 18 | await new Promise((resolve, reject) => { 19 | const child = exec('npx cap sync'); 20 | child.addListener('error', reject); 21 | child.addListener('exit', resolve); 22 | }); 23 | 24 | // Restore config 25 | cleanup(); 26 | } 27 | 28 | try { 29 | syncNetworkConfig(); 30 | } catch (e) { 31 | // Cleanup in case of an error 32 | cleanup().then(() => { 33 | if (e instanceof Error) console.error(e.message); 34 | else console.error(e); 35 | process.exit(-1); 36 | }); 37 | } 38 | 39 | function getIp() { 40 | const ifaces = os.networkInterfaces(); 41 | let ip = 'localhost'; 42 | Object.keys(ifaces).forEach((ifname) => { 43 | let alias = 0; 44 | const iface = ifaces[ifname]; 45 | if (!iface) return; 46 | iface.forEach((iface) => { 47 | if ('IPv4' !== iface.family || iface.internal !== false) return; 48 | if (alias >= 1) ip = iface.address; 49 | else ip = iface.address; 50 | ++alias; 51 | }); 52 | }); 53 | return ip; 54 | } 55 | 56 | async function getPort() { 57 | const file = await fs.readFile('./vite.config.ts'); 58 | const match = String(file).match(/port:\s*(\d+)/); 59 | return match && match[1] ? match[1] : 5173; 60 | } 61 | 62 | async function cleanup() { 63 | const files = await fs.readdir('./'); 64 | for (const file of files) { 65 | if (file.match(/capacitor\.config\.json\.timestamp-\d+/g)) { 66 | await fs.copyFile(`./${file}`, './capacitor.config.json'); 67 | await fs.unlink(file); 68 | } 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /src/types/types.ts: -------------------------------------------------------------------------------- 1 | export type Job = { 2 | start: string; 3 | stop: string; 4 | task: () => Promise; 5 | }; 6 | 7 | export type ProjectOptions = { 8 | appName: string; 9 | appId: string; 10 | platforms: Platform[]; 11 | plugins: Plugin[]; 12 | }; 13 | 14 | export type Platform = 'Android' | 'iOS'; 15 | 16 | export type Plugin = 17 | | 'action-sheet' 18 | | 'app' 19 | | 'app-launcher' 20 | | 'browser' 21 | | 'camera' 22 | | 'clipboard' 23 | | 'device' 24 | | 'dialog' 25 | | 'filesystem' 26 | | 'geolocation' 27 | | 'google-maps' 28 | | 'haptics' 29 | | 'keyboard' 30 | | 'local-notifications' 31 | | 'motion' 32 | | 'network' 33 | | 'preferences' 34 | | 'push-notifications' 35 | | 'screen-reader' 36 | | 'share' 37 | | 'splash-screen' 38 | | 'status-bar' 39 | | 'text-zoom' 40 | | 'toast'; 41 | 42 | export type ConfigExtension = 'json' | 'js' | 'ts'; 43 | 44 | export type PackageManager = 'npm' | 'pnpm' | 'yarn' | 'bun'; 45 | -------------------------------------------------------------------------------- /src/util/util.ts: -------------------------------------------------------------------------------- 1 | import { cancel } from '@clack/prompts'; 2 | import { spinner } from '@clack/prompts'; 3 | import { exec } from 'child_process'; 4 | import { existsSync, lstatSync } from 'fs'; 5 | import { ConfigExtension, Job, PackageManager } from '../types/types.js'; 6 | 7 | export function asyncExec(command: string) { 8 | return new Promise((resolve, reject) => { 9 | const child = exec(command); 10 | child.addListener('error', reject); 11 | child.addListener('exit', resolve); 12 | }); 13 | } 14 | 15 | export function getConfigExtension() { 16 | const configExtensions = ['json', 'js', 'ts']; 17 | for (const extension of configExtensions) { 18 | if (existsSync(`capacitor.config.${extension}`)) { 19 | return extension as ConfigExtension; 20 | } 21 | } 22 | } 23 | 24 | export function getPM() { 25 | const userAgent = process.env.npm_config_user_agent; 26 | if (!userAgent) { 27 | return 'npm'; 28 | } 29 | const pmSpec = userAgent.split(' ')[0] || ''; 30 | const separatorPos = pmSpec.lastIndexOf('/'); 31 | const name = pmSpec?.substring(0, separatorPos); 32 | return name === 'npminstall' ? 'npm' : (name as PackageManager); 33 | } 34 | 35 | export function isDirectory(path: string) { 36 | return lstatSync(path).isDirectory(); 37 | } 38 | 39 | export async function executeJobs(jobs: Job[]) { 40 | for (let i = 0; i < jobs.length; i++) { 41 | const { start, stop, task } = jobs[i]; 42 | const s = spinner(); 43 | s.start(start); 44 | try { 45 | await task(); 46 | } catch (e) { 47 | if (typeof e === 'string') cancel(`Error: ${e}`); 48 | else if (e instanceof Error) cancel(`Error: ${e.message}`); 49 | process.exit(-1); 50 | } 51 | s.stop(stop); 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "allowJs": true, 4 | "checkJs": true, 5 | "esModuleInterop": true, 6 | "forceConsistentCasingInFileNames": true, 7 | "resolveJsonModule": true, 8 | "skipLibCheck": true, 9 | "sourceMap": true, 10 | "strict": true, 11 | "target": "ES2020", 12 | "module": "NodeNext", 13 | "moduleResolution": "NodeNext" 14 | }, 15 | "include": ["src/**/*.ts"] 16 | } 17 | --------------------------------------------------------------------------------