├── .changeset
├── README.md
├── changelog-format.js
└── config.json
├── .gitattributes
├── .github
├── release.yaml
└── workflows
│ ├── format-lint.yml
│ ├── pr-title-check.yml
│ ├── release-and-publish.yml
│ └── setup
│ └── action.yml
├── .gitignore
├── .prettierignore
├── .vscode
└── launch.json
├── .vscodeignore
├── CHANGELOG.md
├── LICENSE
├── README.md
├── images
├── logo.png
└── usage.gif
├── package.json
├── playground
└── node.js
├── pnpm-lock.yaml
├── scripts
├── generate-readme.ts
└── lint.ts
├── snippets
└── snippets.json
└── templates
└── readme.md
/.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/changelog-format.js:
--------------------------------------------------------------------------------
1 | const getReleaseLine = async (changeset, _typeVersionType) => {
2 | const [firstLine, ...futureLines] = changeset.summary
3 | .split("\n")
4 | .map((l) => l.trimRight());
5 |
6 | let returnVal = `- ${firstLine}`;
7 |
8 | if (futureLines.length > 0) {
9 | returnVal += `\n${futureLines.map((l) => ` ${l}`).join("\n")}`;
10 | }
11 |
12 | return returnVal;
13 | };
14 |
15 | const getDependencyReleaseLine = async (changesets, dependenciesUpdated) => {
16 | if (dependenciesUpdated.length === 0) return "";
17 |
18 | const changesetLinks = changesets.map(
19 | (changeset) =>
20 | `- Updated dependencies${
21 | changeset.commit ? ` [${changeset.commit}]` : ""
22 | }`,
23 | );
24 |
25 | const updatedDependenciesList = dependenciesUpdated.map(
26 | (dependency) => ` - ${dependency.name}@${dependency.newVersion}`,
27 | );
28 |
29 | return [...changesetLinks, ...updatedDependenciesList].join("\n");
30 | };
31 |
32 | module.exports = {
33 | getReleaseLine,
34 | getDependencyReleaseLine,
35 | };
36 |
--------------------------------------------------------------------------------
/.changeset/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://unpkg.com/@changesets/config@2.3.1/schema.json",
3 | "changelog": "./changelog-format.js",
4 | "commit": false,
5 | "fixed": [],
6 | "linked": [],
7 | "access": "restricted",
8 | "baseBranch": "main",
9 | "updateInternalDependencies": "patch",
10 | "ignore": []
11 | }
12 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Set default behavior to automatically normalize line endings.
2 | * text=auto
3 |
--------------------------------------------------------------------------------
/.github/release.yaml:
--------------------------------------------------------------------------------
1 | changelog:
2 | exclude:
3 | authors:
4 | - github-actions
5 |
--------------------------------------------------------------------------------
/.github/workflows/format-lint.yml:
--------------------------------------------------------------------------------
1 | name: CI
2 |
3 | on:
4 | push:
5 | branches:
6 | - "!main"
7 |
8 | pull_request:
9 | types:
10 | - opened
11 | - synchronize
12 |
13 | concurrency:
14 | group: ${{ github.workflow }}-${{ github.ref }}
15 | cancel-in-progress: true
16 |
17 | jobs:
18 | format-lint:
19 | name: Format & Lint
20 | runs-on: ubuntu-latest
21 | steps:
22 | - name: Checkout
23 | uses: actions/checkout@v4
24 |
25 | - name: Environment setup
26 | uses: ./.github/workflows/setup
27 |
28 | - name: Check formatting
29 | run: pnpm format
30 |
31 | - name: Lint
32 | run: pnpm lint
33 |
--------------------------------------------------------------------------------
/.github/workflows/pr-title-check.yml:
--------------------------------------------------------------------------------
1 | name: Check PR Title
2 |
3 | on:
4 | pull_request:
5 | branches: ["*"]
6 | types:
7 | - edited
8 | - opened
9 | - synchronize
10 |
11 | jobs:
12 | check-pr-title:
13 | name: Check PR Title
14 | runs-on: ubuntu-latest
15 | steps:
16 | - uses: amannn/action-semantic-pull-request@v5
17 | env:
18 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
19 |
--------------------------------------------------------------------------------
/.github/workflows/release-and-publish.yml:
--------------------------------------------------------------------------------
1 | name: Release & Publish
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 |
8 | permissions: write-all
9 | concurrency: ${{ github.workflow }}-${{ github.ref }}
10 |
11 | jobs:
12 | release:
13 | name: Release and Publish
14 | if: github.repository == 'interledger/open-payments-snippets-vscode'
15 | runs-on: ubuntu-latest
16 | steps:
17 | - name: Checkout
18 | uses: actions/checkout@v4
19 |
20 | - name: Environment setup
21 | uses: ./.github/workflows/setup
22 |
23 | - name: Create release PR
24 | id: changesets
25 | uses: changesets/action@v1
26 | with:
27 | commit: "chore(release): version packages"
28 | title: "chore(release): version packages"
29 | version: pnpm ci:version
30 | env:
31 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
32 |
33 | - name: Retrieve the extension name and version
34 | if: steps.changesets.outputs.hasChangesets == 'false'
35 | run: |
36 | VERSION=$(jq -r .version package.json)
37 | NAME=$(jq -r .name package.json)
38 | echo "VERSION=v$VERSION" >> $GITHUB_ENV
39 | echo "RELEASE_NAME=$NAME@$VERSION" >> $GITHUB_ENV
40 |
41 | - name: Check tag
42 | if: steps.changesets.outputs.hasChangesets == 'false'
43 | uses: mukunku/tag-exists-action@v1.4.0
44 | id: tag
45 | with:
46 | tag: "${{ env.VERSION }}"
47 |
48 | - name: Release
49 | if: |
50 | steps.changesets.outputs.hasChangesets == 'false' && steps.tag.outputs.exists == 'false'
51 | id: create_release
52 | uses: ncipollo/release-action@v1
53 | env:
54 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
55 | with:
56 | tag: ${{ env.VERSION }}
57 | name: ${{ env.RELEASE_NAME }}
58 | generateReleaseNotes: true
59 | draft: false
60 | prerelease: false
61 |
62 | - name: Tag & Publish
63 | if: |
64 | steps.changesets.outputs.hasChangesets == 'false' && steps.tag.outputs.exists == 'false'
65 | run: |
66 | git tag ${{ env.VERSION }}
67 | git push origin ${{ env.VERSION }}
68 | pnpm dlx vsce publish -p ${{ secrets.PUBLISHER_TOKEN }}
69 |
--------------------------------------------------------------------------------
/.github/workflows/setup/action.yml:
--------------------------------------------------------------------------------
1 | name: "Environment Setup"
2 | description: "Installs NodeJS, PNPM, dependencies and PNPM restores cache"
3 |
4 | runs:
5 | using: "composite"
6 | steps:
7 | - name: Install PNPM
8 | uses: pnpm/action-setup@v2
9 | with:
10 | version: 8
11 | run_install: false
12 |
13 | - name: Setup NodeJS
14 | uses: actions/setup-node@v3
15 | with:
16 | node-version: "lts/hydrogen"
17 | cache: "pnpm"
18 |
19 | - name: Install dependencies
20 | shell: bash
21 | run: pnpm install --frozen-lockfile
22 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | *.vsix
3 | .DS_Store
4 |
--------------------------------------------------------------------------------
/.prettierignore:
--------------------------------------------------------------------------------
1 | pnpm-lock.yaml
--------------------------------------------------------------------------------
/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "name": "Extension",
6 | "type": "extensionHost",
7 | "request": "launch",
8 | "args": ["--extensionDevelopmentPath=${workspaceFolder}"]
9 | }
10 | ]
11 | }
12 |
--------------------------------------------------------------------------------
/.vscodeignore:
--------------------------------------------------------------------------------
1 | .vscode/**
2 | .vscode-test/**
3 | .gitignore
4 | vsc-extension-quickstart.md
5 | .changeset
6 | .github
7 | .gitattributes
8 | .prettierignore
9 | pnpm-lock.yaml
10 | templates/**
11 | scripts/**
12 | playground/**
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # open-payments-snippets-vscode
2 |
3 | ## 1.0.0
4 |
5 | ### Major Changes
6 |
7 | - Update snippets (OP SDK v6)
8 |
9 | ## 0.3.0
10 |
11 | ### Minor Changes
12 |
13 | - Update VSCode engine version
14 |
15 | ## 0.2.0
16 |
17 | ### Minor Changes
18 |
19 | - Add incoming payment snippets
20 | - Add outgoing payment snippet
21 | - Add token snippets
22 | - Add quote snippets
23 |
24 | ## 0.1.2
25 |
26 | ### Patch Changes
27 |
28 | - Fix README
29 |
30 | ## 0.1.1
31 |
32 | ### Patch Changes
33 |
34 | - Add README
35 |
36 | ## 0.1.0
37 |
38 | ### Minor Changes
39 |
40 | - Change keywords format
41 |
42 | ### Patch Changes
43 |
44 | - Fix snippets body format
45 |
46 | ## 0.0.2
47 |
48 | ### Patch Changes
49 |
50 | - Fix quote grant keyword
51 |
52 | ## 0.0.1
53 |
54 | ### Patch Changes
55 |
56 | - Introduce snippets for:
57 |
58 | - Open Payments client
59 | - Payment pointers
60 | - Grants
61 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2023 Interledger Foundation
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 | Open Payments SDK Snippets
6 |
7 | Updated for Open Payments Node SDK version 6
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | ## Installation
17 |
18 | 1. Launch _Quick Open_:
19 |
20 | - Linux & Windows: `Ctrl+P`
21 | - macOS: `⌘+P`
22 |
23 | 2. Paste the following command and press `Enter`:
24 |
25 | ```shell
26 | ext install open-payments-snippets-vscode
27 | ```
28 |
29 | 3. Choose the extension (make sure the author is `Interledger Foundation`).
30 |
31 | 4. Reload Visual Studio Code
32 |
33 | ## Usage
34 |
35 | Every Open Payments SDK snippet starts with the "op-" prefix:
36 |
37 | - `op-pp`
38 | - `op-grant-continue`
39 |
40 | You don't need to type any dashes or the full keyword. You can use some alternatives. For example:
41 |
42 | - `ogc` -> `op-grant-continue` snippet
43 | - `ograntc` -> `op-grant-continue` snippet
44 |
45 | ## Snippets
46 |
47 | | Keyword | Description |
48 | | ------------------ | ------------------------------------------------------ |
49 | | op-uc | Creates an unauthenticated OP client |
50 | | op-ac | Creates an authenticated OP client |
51 | | op-wa | Get wallet address information |
52 | | op-wa-keys | Get wallet address keys |
53 | | op-grant-revoke | Revoke a grant |
54 | | op-grant | Request a grant |
55 | | op-grant-continue | Continue a grant |
56 | | op-grant-ip | Request an incoming payment grant |
57 | | op-grant-op | Request an outgoing payment grant |
58 | | op-grant-quote | Request a quote grant |
59 | | op-token-revoke | Revoke a token |
60 | | op-token-rotate | Rotate a token |
61 | | op-quote-create | Create a quote without receive amount and debit amount |
62 | | op-quote-create-ra | Create a quote with receive amount |
63 | | op-quote-create-da | Create a quote with debit amount |
64 | | op-quote-get | Get a quote |
65 | | op-ip-create | Create an incoming payment without incoming amount |
66 | | op-ip-create-ia | Create an incoming payment with incoming amount |
67 | | op-ip-complete | Complete an incoming payment |
68 | | op-ip-get | Get an incoming payment |
69 | | op-ip-list | List incoming payments |
70 | | op-op-create | Create an outgoing payment |
71 | | op-op-get | Get an outgoing payment |
72 | | op-op-list | List outgoing payments |
73 |
74 | ## Feedback and issues
75 |
76 | If you encounter any issues or have feedback, please open an issue on
77 | the [GitHub repository](https://github.com/interledger/open-payments-snippets-vscode/issues). We appreciate your feedback
78 | and contributions!
79 |
80 | ## License
81 |
82 | This project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details.
83 |
--------------------------------------------------------------------------------
/images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/interledger/open-payments-snippets-vscode/d2d603d82f30b5979d69849d95dab2b424821561/images/logo.png
--------------------------------------------------------------------------------
/images/usage.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/interledger/open-payments-snippets-vscode/d2d603d82f30b5979d69849d95dab2b424821561/images/usage.gif
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "open-payments-snippets-vscode",
3 | "displayName": "Open Payments SDK Snippets",
4 | "description": "Open Payments SDK Code Snippets",
5 | "version": "1.0.0",
6 | "publisher": "InterledgerFoundation",
7 | "icon": "images/logo.png",
8 | "license": "MIT",
9 | "keywords": [
10 | "snippets",
11 | "open payments",
12 | "interledger",
13 | "ilp",
14 | "customizable",
15 | "javascript",
16 | "javascriptreact",
17 | "typescript",
18 | "typescriptreact"
19 | ],
20 | "homepage": "https://github.com/interledger/open-payments-snippets-vscode",
21 | "repository": {
22 | "type": "git",
23 | "url": "https://github.com/interledger/open-payments-snippets-vscode"
24 | },
25 | "bugs": {
26 | "url": "https://github.com/interledger/open-payments-snippets-vscode/issues"
27 | },
28 | "engines": {
29 | "vscode": "^1.60.0"
30 | },
31 | "categories": [
32 | "Snippets"
33 | ],
34 | "contributes": {
35 | "snippets": [
36 | {
37 | "language": "javascript",
38 | "path": "./snippets/snippets.json"
39 | },
40 | {
41 | "language": "javascriptreact",
42 | "path": "./snippets/snippets.json"
43 | },
44 | {
45 | "language": "typescript",
46 | "path": "./snippets/snippets.json"
47 | },
48 | {
49 | "language": "typescriptreact",
50 | "path": "./snippets/snippets.json"
51 | }
52 | ]
53 | },
54 | "devDependencies": {
55 | "@changesets/cli": "^2.26.2",
56 | "@types/node": "^20.8.2",
57 | "prettier": "^3.0.3",
58 | "tsx": "^3.13.0",
59 | "typescript": "^5.2.2"
60 | },
61 | "scripts": {
62 | "format": "prettier . --check --cache --cache-location='node_modules/.cache/prettiercache'",
63 | "format:fix": "prettier . --write --cache --cache-location='node_modules/.cache/prettiercache' --log-level=warn",
64 | "lint": "tsx scripts/lint.ts",
65 | "generate:readme": "tsx scripts/generate-readme.ts",
66 | "ci:version": "pnpm generate:readme && pnpm changeset version && pnpm i --lockfile-only"
67 | },
68 | "prettier": {
69 | "bracketSameLine": false,
70 | "bracketSpacing": true,
71 | "printWidth": 80,
72 | "semi": true,
73 | "tabWidth": 4,
74 | "trailingComma": "all",
75 | "useTabs": false
76 | }
77 | }
78 |
--------------------------------------------------------------------------------
/playground/node.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/interledger/open-payments-snippets-vscode/d2d603d82f30b5979d69849d95dab2b424821561/playground/node.js
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: '6.0'
2 |
3 | settings:
4 | autoInstallPeers: true
5 | excludeLinksFromLockfile: false
6 |
7 | devDependencies:
8 | '@changesets/cli':
9 | specifier: ^2.26.2
10 | version: 2.26.2
11 | '@types/node':
12 | specifier: ^20.8.2
13 | version: 20.8.2
14 | prettier:
15 | specifier: ^3.0.3
16 | version: 3.0.3
17 | tsx:
18 | specifier: ^3.13.0
19 | version: 3.13.0
20 | typescript:
21 | specifier: ^5.2.2
22 | version: 5.2.2
23 |
24 | packages:
25 |
26 | /@babel/code-frame@7.22.13:
27 | resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==}
28 | engines: {node: '>=6.9.0'}
29 | dependencies:
30 | '@babel/highlight': 7.22.20
31 | chalk: 2.4.2
32 | dev: true
33 |
34 | /@babel/helper-validator-identifier@7.22.20:
35 | resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==}
36 | engines: {node: '>=6.9.0'}
37 | dev: true
38 |
39 | /@babel/highlight@7.22.20:
40 | resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==}
41 | engines: {node: '>=6.9.0'}
42 | dependencies:
43 | '@babel/helper-validator-identifier': 7.22.20
44 | chalk: 2.4.2
45 | js-tokens: 4.0.0
46 | dev: true
47 |
48 | /@babel/runtime@7.23.1:
49 | resolution: {integrity: sha512-hC2v6p8ZSI/W0HUzh3V8C5g+NwSKzKPtJwSpTjwl0o297GP9+ZLQSkdvHz46CM3LqyoXxq+5G9komY+eSqSO0g==}
50 | engines: {node: '>=6.9.0'}
51 | dependencies:
52 | regenerator-runtime: 0.14.0
53 | dev: true
54 |
55 | /@changesets/apply-release-plan@6.1.4:
56 | resolution: {integrity: sha512-FMpKF1fRlJyCZVYHr3CbinpZZ+6MwvOtWUuO8uo+svcATEoc1zRDcj23pAurJ2TZ/uVz1wFHH6K3NlACy0PLew==}
57 | dependencies:
58 | '@babel/runtime': 7.23.1
59 | '@changesets/config': 2.3.1
60 | '@changesets/get-version-range-type': 0.3.2
61 | '@changesets/git': 2.0.0
62 | '@changesets/types': 5.2.1
63 | '@manypkg/get-packages': 1.1.3
64 | detect-indent: 6.1.0
65 | fs-extra: 7.0.1
66 | lodash.startcase: 4.4.0
67 | outdent: 0.5.0
68 | prettier: 2.8.8
69 | resolve-from: 5.0.0
70 | semver: 7.5.4
71 | dev: true
72 |
73 | /@changesets/assemble-release-plan@5.2.4:
74 | resolution: {integrity: sha512-xJkWX+1/CUaOUWTguXEbCDTyWJFECEhmdtbkjhn5GVBGxdP/JwaHBIU9sW3FR6gD07UwZ7ovpiPclQZs+j+mvg==}
75 | dependencies:
76 | '@babel/runtime': 7.23.1
77 | '@changesets/errors': 0.1.4
78 | '@changesets/get-dependents-graph': 1.3.6
79 | '@changesets/types': 5.2.1
80 | '@manypkg/get-packages': 1.1.3
81 | semver: 7.5.4
82 | dev: true
83 |
84 | /@changesets/changelog-git@0.1.14:
85 | resolution: {integrity: sha512-+vRfnKtXVWsDDxGctOfzJsPhaCdXRYoe+KyWYoq5X/GqoISREiat0l3L8B0a453B2B4dfHGcZaGyowHbp9BSaA==}
86 | dependencies:
87 | '@changesets/types': 5.2.1
88 | dev: true
89 |
90 | /@changesets/cli@2.26.2:
91 | resolution: {integrity: sha512-dnWrJTmRR8bCHikJHl9b9HW3gXACCehz4OasrXpMp7sx97ECuBGGNjJhjPhdZNCvMy9mn4BWdplI323IbqsRig==}
92 | hasBin: true
93 | dependencies:
94 | '@babel/runtime': 7.23.1
95 | '@changesets/apply-release-plan': 6.1.4
96 | '@changesets/assemble-release-plan': 5.2.4
97 | '@changesets/changelog-git': 0.1.14
98 | '@changesets/config': 2.3.1
99 | '@changesets/errors': 0.1.4
100 | '@changesets/get-dependents-graph': 1.3.6
101 | '@changesets/get-release-plan': 3.0.17
102 | '@changesets/git': 2.0.0
103 | '@changesets/logger': 0.0.5
104 | '@changesets/pre': 1.0.14
105 | '@changesets/read': 0.5.9
106 | '@changesets/types': 5.2.1
107 | '@changesets/write': 0.2.3
108 | '@manypkg/get-packages': 1.1.3
109 | '@types/is-ci': 3.0.1
110 | '@types/semver': 7.5.3
111 | ansi-colors: 4.1.3
112 | chalk: 2.4.2
113 | enquirer: 2.4.1
114 | external-editor: 3.1.0
115 | fs-extra: 7.0.1
116 | human-id: 1.0.2
117 | is-ci: 3.0.1
118 | meow: 6.1.1
119 | outdent: 0.5.0
120 | p-limit: 2.3.0
121 | preferred-pm: 3.1.2
122 | resolve-from: 5.0.0
123 | semver: 7.5.4
124 | spawndamnit: 2.0.0
125 | term-size: 2.2.1
126 | tty-table: 4.2.2
127 | dev: true
128 |
129 | /@changesets/config@2.3.1:
130 | resolution: {integrity: sha512-PQXaJl82CfIXddUOppj4zWu+987GCw2M+eQcOepxN5s+kvnsZOwjEJO3DH9eVy+OP6Pg/KFEWdsECFEYTtbg6w==}
131 | dependencies:
132 | '@changesets/errors': 0.1.4
133 | '@changesets/get-dependents-graph': 1.3.6
134 | '@changesets/logger': 0.0.5
135 | '@changesets/types': 5.2.1
136 | '@manypkg/get-packages': 1.1.3
137 | fs-extra: 7.0.1
138 | micromatch: 4.0.5
139 | dev: true
140 |
141 | /@changesets/errors@0.1.4:
142 | resolution: {integrity: sha512-HAcqPF7snsUJ/QzkWoKfRfXushHTu+K5KZLJWPb34s4eCZShIf8BFO3fwq6KU8+G7L5KdtN2BzQAXOSXEyiY9Q==}
143 | dependencies:
144 | extendable-error: 0.1.7
145 | dev: true
146 |
147 | /@changesets/get-dependents-graph@1.3.6:
148 | resolution: {integrity: sha512-Q/sLgBANmkvUm09GgRsAvEtY3p1/5OCzgBE5vX3vgb5CvW0j7CEljocx5oPXeQSNph6FXulJlXV3Re/v3K3P3Q==}
149 | dependencies:
150 | '@changesets/types': 5.2.1
151 | '@manypkg/get-packages': 1.1.3
152 | chalk: 2.4.2
153 | fs-extra: 7.0.1
154 | semver: 7.5.4
155 | dev: true
156 |
157 | /@changesets/get-release-plan@3.0.17:
158 | resolution: {integrity: sha512-6IwKTubNEgoOZwDontYc2x2cWXfr6IKxP3IhKeK+WjyD6y3M4Gl/jdQvBw+m/5zWILSOCAaGLu2ZF6Q+WiPniw==}
159 | dependencies:
160 | '@babel/runtime': 7.23.1
161 | '@changesets/assemble-release-plan': 5.2.4
162 | '@changesets/config': 2.3.1
163 | '@changesets/pre': 1.0.14
164 | '@changesets/read': 0.5.9
165 | '@changesets/types': 5.2.1
166 | '@manypkg/get-packages': 1.1.3
167 | dev: true
168 |
169 | /@changesets/get-version-range-type@0.3.2:
170 | resolution: {integrity: sha512-SVqwYs5pULYjYT4op21F2pVbcrca4qA/bAA3FmFXKMN7Y+HcO8sbZUTx3TAy2VXulP2FACd1aC7f2nTuqSPbqg==}
171 | dev: true
172 |
173 | /@changesets/git@2.0.0:
174 | resolution: {integrity: sha512-enUVEWbiqUTxqSnmesyJGWfzd51PY4H7mH9yUw0hPVpZBJ6tQZFMU3F3mT/t9OJ/GjyiM4770i+sehAn6ymx6A==}
175 | dependencies:
176 | '@babel/runtime': 7.23.1
177 | '@changesets/errors': 0.1.4
178 | '@changesets/types': 5.2.1
179 | '@manypkg/get-packages': 1.1.3
180 | is-subdir: 1.2.0
181 | micromatch: 4.0.5
182 | spawndamnit: 2.0.0
183 | dev: true
184 |
185 | /@changesets/logger@0.0.5:
186 | resolution: {integrity: sha512-gJyZHomu8nASHpaANzc6bkQMO9gU/ib20lqew1rVx753FOxffnCrJlGIeQVxNWCqM+o6OOleCo/ivL8UAO5iFw==}
187 | dependencies:
188 | chalk: 2.4.2
189 | dev: true
190 |
191 | /@changesets/parse@0.3.16:
192 | resolution: {integrity: sha512-127JKNd167ayAuBjUggZBkmDS5fIKsthnr9jr6bdnuUljroiERW7FBTDNnNVyJ4l69PzR57pk6mXQdtJyBCJKg==}
193 | dependencies:
194 | '@changesets/types': 5.2.1
195 | js-yaml: 3.14.1
196 | dev: true
197 |
198 | /@changesets/pre@1.0.14:
199 | resolution: {integrity: sha512-dTsHmxQWEQekHYHbg+M1mDVYFvegDh9j/kySNuDKdylwfMEevTeDouR7IfHNyVodxZXu17sXoJuf2D0vi55FHQ==}
200 | dependencies:
201 | '@babel/runtime': 7.23.1
202 | '@changesets/errors': 0.1.4
203 | '@changesets/types': 5.2.1
204 | '@manypkg/get-packages': 1.1.3
205 | fs-extra: 7.0.1
206 | dev: true
207 |
208 | /@changesets/read@0.5.9:
209 | resolution: {integrity: sha512-T8BJ6JS6j1gfO1HFq50kU3qawYxa4NTbI/ASNVVCBTsKquy2HYwM9r7ZnzkiMe8IEObAJtUVGSrePCOxAK2haQ==}
210 | dependencies:
211 | '@babel/runtime': 7.23.1
212 | '@changesets/git': 2.0.0
213 | '@changesets/logger': 0.0.5
214 | '@changesets/parse': 0.3.16
215 | '@changesets/types': 5.2.1
216 | chalk: 2.4.2
217 | fs-extra: 7.0.1
218 | p-filter: 2.1.0
219 | dev: true
220 |
221 | /@changesets/types@4.1.0:
222 | resolution: {integrity: sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==}
223 | dev: true
224 |
225 | /@changesets/types@5.2.1:
226 | resolution: {integrity: sha512-myLfHbVOqaq9UtUKqR/nZA/OY7xFjQMdfgfqeZIBK4d0hA6pgxArvdv8M+6NUzzBsjWLOtvApv8YHr4qM+Kpfg==}
227 | dev: true
228 |
229 | /@changesets/write@0.2.3:
230 | resolution: {integrity: sha512-Dbamr7AIMvslKnNYsLFafaVORx4H0pvCA2MHqgtNCySMe1blImEyAEOzDmcgKAkgz4+uwoLz7demIrX+JBr/Xw==}
231 | dependencies:
232 | '@babel/runtime': 7.23.1
233 | '@changesets/types': 5.2.1
234 | fs-extra: 7.0.1
235 | human-id: 1.0.2
236 | prettier: 2.8.8
237 | dev: true
238 |
239 | /@esbuild/android-arm64@0.18.20:
240 | resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==}
241 | engines: {node: '>=12'}
242 | cpu: [arm64]
243 | os: [android]
244 | requiresBuild: true
245 | dev: true
246 | optional: true
247 |
248 | /@esbuild/android-arm@0.18.20:
249 | resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==}
250 | engines: {node: '>=12'}
251 | cpu: [arm]
252 | os: [android]
253 | requiresBuild: true
254 | dev: true
255 | optional: true
256 |
257 | /@esbuild/android-x64@0.18.20:
258 | resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==}
259 | engines: {node: '>=12'}
260 | cpu: [x64]
261 | os: [android]
262 | requiresBuild: true
263 | dev: true
264 | optional: true
265 |
266 | /@esbuild/darwin-arm64@0.18.20:
267 | resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==}
268 | engines: {node: '>=12'}
269 | cpu: [arm64]
270 | os: [darwin]
271 | requiresBuild: true
272 | dev: true
273 | optional: true
274 |
275 | /@esbuild/darwin-x64@0.18.20:
276 | resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==}
277 | engines: {node: '>=12'}
278 | cpu: [x64]
279 | os: [darwin]
280 | requiresBuild: true
281 | dev: true
282 | optional: true
283 |
284 | /@esbuild/freebsd-arm64@0.18.20:
285 | resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==}
286 | engines: {node: '>=12'}
287 | cpu: [arm64]
288 | os: [freebsd]
289 | requiresBuild: true
290 | dev: true
291 | optional: true
292 |
293 | /@esbuild/freebsd-x64@0.18.20:
294 | resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==}
295 | engines: {node: '>=12'}
296 | cpu: [x64]
297 | os: [freebsd]
298 | requiresBuild: true
299 | dev: true
300 | optional: true
301 |
302 | /@esbuild/linux-arm64@0.18.20:
303 | resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==}
304 | engines: {node: '>=12'}
305 | cpu: [arm64]
306 | os: [linux]
307 | requiresBuild: true
308 | dev: true
309 | optional: true
310 |
311 | /@esbuild/linux-arm@0.18.20:
312 | resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==}
313 | engines: {node: '>=12'}
314 | cpu: [arm]
315 | os: [linux]
316 | requiresBuild: true
317 | dev: true
318 | optional: true
319 |
320 | /@esbuild/linux-ia32@0.18.20:
321 | resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==}
322 | engines: {node: '>=12'}
323 | cpu: [ia32]
324 | os: [linux]
325 | requiresBuild: true
326 | dev: true
327 | optional: true
328 |
329 | /@esbuild/linux-loong64@0.18.20:
330 | resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==}
331 | engines: {node: '>=12'}
332 | cpu: [loong64]
333 | os: [linux]
334 | requiresBuild: true
335 | dev: true
336 | optional: true
337 |
338 | /@esbuild/linux-mips64el@0.18.20:
339 | resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==}
340 | engines: {node: '>=12'}
341 | cpu: [mips64el]
342 | os: [linux]
343 | requiresBuild: true
344 | dev: true
345 | optional: true
346 |
347 | /@esbuild/linux-ppc64@0.18.20:
348 | resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==}
349 | engines: {node: '>=12'}
350 | cpu: [ppc64]
351 | os: [linux]
352 | requiresBuild: true
353 | dev: true
354 | optional: true
355 |
356 | /@esbuild/linux-riscv64@0.18.20:
357 | resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==}
358 | engines: {node: '>=12'}
359 | cpu: [riscv64]
360 | os: [linux]
361 | requiresBuild: true
362 | dev: true
363 | optional: true
364 |
365 | /@esbuild/linux-s390x@0.18.20:
366 | resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==}
367 | engines: {node: '>=12'}
368 | cpu: [s390x]
369 | os: [linux]
370 | requiresBuild: true
371 | dev: true
372 | optional: true
373 |
374 | /@esbuild/linux-x64@0.18.20:
375 | resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==}
376 | engines: {node: '>=12'}
377 | cpu: [x64]
378 | os: [linux]
379 | requiresBuild: true
380 | dev: true
381 | optional: true
382 |
383 | /@esbuild/netbsd-x64@0.18.20:
384 | resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==}
385 | engines: {node: '>=12'}
386 | cpu: [x64]
387 | os: [netbsd]
388 | requiresBuild: true
389 | dev: true
390 | optional: true
391 |
392 | /@esbuild/openbsd-x64@0.18.20:
393 | resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==}
394 | engines: {node: '>=12'}
395 | cpu: [x64]
396 | os: [openbsd]
397 | requiresBuild: true
398 | dev: true
399 | optional: true
400 |
401 | /@esbuild/sunos-x64@0.18.20:
402 | resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==}
403 | engines: {node: '>=12'}
404 | cpu: [x64]
405 | os: [sunos]
406 | requiresBuild: true
407 | dev: true
408 | optional: true
409 |
410 | /@esbuild/win32-arm64@0.18.20:
411 | resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==}
412 | engines: {node: '>=12'}
413 | cpu: [arm64]
414 | os: [win32]
415 | requiresBuild: true
416 | dev: true
417 | optional: true
418 |
419 | /@esbuild/win32-ia32@0.18.20:
420 | resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==}
421 | engines: {node: '>=12'}
422 | cpu: [ia32]
423 | os: [win32]
424 | requiresBuild: true
425 | dev: true
426 | optional: true
427 |
428 | /@esbuild/win32-x64@0.18.20:
429 | resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==}
430 | engines: {node: '>=12'}
431 | cpu: [x64]
432 | os: [win32]
433 | requiresBuild: true
434 | dev: true
435 | optional: true
436 |
437 | /@manypkg/find-root@1.1.0:
438 | resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==}
439 | dependencies:
440 | '@babel/runtime': 7.23.1
441 | '@types/node': 12.20.55
442 | find-up: 4.1.0
443 | fs-extra: 8.1.0
444 | dev: true
445 |
446 | /@manypkg/get-packages@1.1.3:
447 | resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==}
448 | dependencies:
449 | '@babel/runtime': 7.23.1
450 | '@changesets/types': 4.1.0
451 | '@manypkg/find-root': 1.1.0
452 | fs-extra: 8.1.0
453 | globby: 11.1.0
454 | read-yaml-file: 1.1.0
455 | dev: true
456 |
457 | /@nodelib/fs.scandir@2.1.5:
458 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
459 | engines: {node: '>= 8'}
460 | dependencies:
461 | '@nodelib/fs.stat': 2.0.5
462 | run-parallel: 1.2.0
463 | dev: true
464 |
465 | /@nodelib/fs.stat@2.0.5:
466 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
467 | engines: {node: '>= 8'}
468 | dev: true
469 |
470 | /@nodelib/fs.walk@1.2.8:
471 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
472 | engines: {node: '>= 8'}
473 | dependencies:
474 | '@nodelib/fs.scandir': 2.1.5
475 | fastq: 1.15.0
476 | dev: true
477 |
478 | /@types/is-ci@3.0.1:
479 | resolution: {integrity: sha512-mnb1ngaGQPm6LFZaNdh3xPOoQMkrQb/KBPhPPN2p2Wk8XgeUqWj6xPnvyQ8rvcK/VFritVmQG8tvQuy7g+9/nQ==}
480 | dependencies:
481 | ci-info: 3.8.0
482 | dev: true
483 |
484 | /@types/minimist@1.2.3:
485 | resolution: {integrity: sha512-ZYFzrvyWUNhaPomn80dsMNgMeXxNWZBdkuG/hWlUvXvbdUH8ZERNBGXnU87McuGcWDsyzX2aChCv/SVN348k3A==}
486 | dev: true
487 |
488 | /@types/node@12.20.55:
489 | resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==}
490 | dev: true
491 |
492 | /@types/node@20.8.2:
493 | resolution: {integrity: sha512-Vvycsc9FQdwhxE3y3DzeIxuEJbWGDsnrxvMADzTDF/lcdR9/K+AQIeAghTQsHtotg/q0j3WEOYS/jQgSdWue3w==}
494 | dev: true
495 |
496 | /@types/normalize-package-data@2.4.2:
497 | resolution: {integrity: sha512-lqa4UEhhv/2sjjIQgjX8B+RBjj47eo0mzGasklVJ78UKGQY1r0VpB9XHDaZZO9qzEFDdy4MrXLuEaSmPrPSe/A==}
498 | dev: true
499 |
500 | /@types/semver@7.5.3:
501 | resolution: {integrity: sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==}
502 | dev: true
503 |
504 | /ansi-colors@4.1.3:
505 | resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
506 | engines: {node: '>=6'}
507 | dev: true
508 |
509 | /ansi-regex@5.0.1:
510 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
511 | engines: {node: '>=8'}
512 | dev: true
513 |
514 | /ansi-styles@3.2.1:
515 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
516 | engines: {node: '>=4'}
517 | dependencies:
518 | color-convert: 1.9.3
519 | dev: true
520 |
521 | /ansi-styles@4.3.0:
522 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
523 | engines: {node: '>=8'}
524 | dependencies:
525 | color-convert: 2.0.1
526 | dev: true
527 |
528 | /argparse@1.0.10:
529 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
530 | dependencies:
531 | sprintf-js: 1.0.3
532 | dev: true
533 |
534 | /array-buffer-byte-length@1.0.0:
535 | resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==}
536 | dependencies:
537 | call-bind: 1.0.2
538 | is-array-buffer: 3.0.2
539 | dev: true
540 |
541 | /array-union@2.1.0:
542 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
543 | engines: {node: '>=8'}
544 | dev: true
545 |
546 | /array.prototype.flat@1.3.2:
547 | resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
548 | engines: {node: '>= 0.4'}
549 | dependencies:
550 | call-bind: 1.0.2
551 | define-properties: 1.2.1
552 | es-abstract: 1.22.2
553 | es-shim-unscopables: 1.0.0
554 | dev: true
555 |
556 | /arraybuffer.prototype.slice@1.0.2:
557 | resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==}
558 | engines: {node: '>= 0.4'}
559 | dependencies:
560 | array-buffer-byte-length: 1.0.0
561 | call-bind: 1.0.2
562 | define-properties: 1.2.1
563 | es-abstract: 1.22.2
564 | get-intrinsic: 1.2.1
565 | is-array-buffer: 3.0.2
566 | is-shared-array-buffer: 1.0.2
567 | dev: true
568 |
569 | /arrify@1.0.1:
570 | resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==}
571 | engines: {node: '>=0.10.0'}
572 | dev: true
573 |
574 | /available-typed-arrays@1.0.5:
575 | resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==}
576 | engines: {node: '>= 0.4'}
577 | dev: true
578 |
579 | /better-path-resolve@1.0.0:
580 | resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==}
581 | engines: {node: '>=4'}
582 | dependencies:
583 | is-windows: 1.0.2
584 | dev: true
585 |
586 | /braces@3.0.2:
587 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
588 | engines: {node: '>=8'}
589 | dependencies:
590 | fill-range: 7.0.1
591 | dev: true
592 |
593 | /breakword@1.0.6:
594 | resolution: {integrity: sha512-yjxDAYyK/pBvws9H4xKYpLDpYKEH6CzrBPAuXq3x18I+c/2MkVtT3qAr7Oloi6Dss9qNhPVueAAVU1CSeNDIXw==}
595 | dependencies:
596 | wcwidth: 1.0.1
597 | dev: true
598 |
599 | /buffer-from@1.1.2:
600 | resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
601 | dev: true
602 |
603 | /call-bind@1.0.2:
604 | resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==}
605 | dependencies:
606 | function-bind: 1.1.1
607 | get-intrinsic: 1.2.1
608 | dev: true
609 |
610 | /camelcase-keys@6.2.2:
611 | resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==}
612 | engines: {node: '>=8'}
613 | dependencies:
614 | camelcase: 5.3.1
615 | map-obj: 4.3.0
616 | quick-lru: 4.0.1
617 | dev: true
618 |
619 | /camelcase@5.3.1:
620 | resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
621 | engines: {node: '>=6'}
622 | dev: true
623 |
624 | /chalk@2.4.2:
625 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
626 | engines: {node: '>=4'}
627 | dependencies:
628 | ansi-styles: 3.2.1
629 | escape-string-regexp: 1.0.5
630 | supports-color: 5.5.0
631 | dev: true
632 |
633 | /chalk@4.1.2:
634 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
635 | engines: {node: '>=10'}
636 | dependencies:
637 | ansi-styles: 4.3.0
638 | supports-color: 7.2.0
639 | dev: true
640 |
641 | /chardet@0.7.0:
642 | resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==}
643 | dev: true
644 |
645 | /ci-info@3.8.0:
646 | resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==}
647 | engines: {node: '>=8'}
648 | dev: true
649 |
650 | /cliui@6.0.0:
651 | resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==}
652 | dependencies:
653 | string-width: 4.2.3
654 | strip-ansi: 6.0.1
655 | wrap-ansi: 6.2.0
656 | dev: true
657 |
658 | /cliui@8.0.1:
659 | resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
660 | engines: {node: '>=12'}
661 | dependencies:
662 | string-width: 4.2.3
663 | strip-ansi: 6.0.1
664 | wrap-ansi: 7.0.0
665 | dev: true
666 |
667 | /clone@1.0.4:
668 | resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==}
669 | engines: {node: '>=0.8'}
670 | dev: true
671 |
672 | /color-convert@1.9.3:
673 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
674 | dependencies:
675 | color-name: 1.1.3
676 | dev: true
677 |
678 | /color-convert@2.0.1:
679 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
680 | engines: {node: '>=7.0.0'}
681 | dependencies:
682 | color-name: 1.1.4
683 | dev: true
684 |
685 | /color-name@1.1.3:
686 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
687 | dev: true
688 |
689 | /color-name@1.1.4:
690 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
691 | dev: true
692 |
693 | /cross-spawn@5.1.0:
694 | resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==}
695 | dependencies:
696 | lru-cache: 4.1.5
697 | shebang-command: 1.2.0
698 | which: 1.3.1
699 | dev: true
700 |
701 | /csv-generate@3.4.3:
702 | resolution: {integrity: sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==}
703 | dev: true
704 |
705 | /csv-parse@4.16.3:
706 | resolution: {integrity: sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg==}
707 | dev: true
708 |
709 | /csv-stringify@5.6.5:
710 | resolution: {integrity: sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A==}
711 | dev: true
712 |
713 | /csv@5.5.3:
714 | resolution: {integrity: sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g==}
715 | engines: {node: '>= 0.1.90'}
716 | dependencies:
717 | csv-generate: 3.4.3
718 | csv-parse: 4.16.3
719 | csv-stringify: 5.6.5
720 | stream-transform: 2.1.3
721 | dev: true
722 |
723 | /decamelize-keys@1.1.1:
724 | resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==}
725 | engines: {node: '>=0.10.0'}
726 | dependencies:
727 | decamelize: 1.2.0
728 | map-obj: 1.0.1
729 | dev: true
730 |
731 | /decamelize@1.2.0:
732 | resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==}
733 | engines: {node: '>=0.10.0'}
734 | dev: true
735 |
736 | /defaults@1.0.4:
737 | resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
738 | dependencies:
739 | clone: 1.0.4
740 | dev: true
741 |
742 | /define-data-property@1.1.0:
743 | resolution: {integrity: sha512-UzGwzcjyv3OtAvolTj1GoyNYzfFR+iqbGjcnBEENZVCpM4/Ng1yhGNvS3lR/xDS74Tb2wGG9WzNSNIOS9UVb2g==}
744 | engines: {node: '>= 0.4'}
745 | dependencies:
746 | get-intrinsic: 1.2.1
747 | gopd: 1.0.1
748 | has-property-descriptors: 1.0.0
749 | dev: true
750 |
751 | /define-properties@1.2.1:
752 | resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
753 | engines: {node: '>= 0.4'}
754 | dependencies:
755 | define-data-property: 1.1.0
756 | has-property-descriptors: 1.0.0
757 | object-keys: 1.1.1
758 | dev: true
759 |
760 | /detect-indent@6.1.0:
761 | resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==}
762 | engines: {node: '>=8'}
763 | dev: true
764 |
765 | /dir-glob@3.0.1:
766 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
767 | engines: {node: '>=8'}
768 | dependencies:
769 | path-type: 4.0.0
770 | dev: true
771 |
772 | /emoji-regex@8.0.0:
773 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
774 | dev: true
775 |
776 | /enquirer@2.4.1:
777 | resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==}
778 | engines: {node: '>=8.6'}
779 | dependencies:
780 | ansi-colors: 4.1.3
781 | strip-ansi: 6.0.1
782 | dev: true
783 |
784 | /error-ex@1.3.2:
785 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
786 | dependencies:
787 | is-arrayish: 0.2.1
788 | dev: true
789 |
790 | /es-abstract@1.22.2:
791 | resolution: {integrity: sha512-YoxfFcDmhjOgWPWsV13+2RNjq1F6UQnfs+8TftwNqtzlmFzEXvlUwdrNrYeaizfjQzRMxkZ6ElWMOJIFKdVqwA==}
792 | engines: {node: '>= 0.4'}
793 | dependencies:
794 | array-buffer-byte-length: 1.0.0
795 | arraybuffer.prototype.slice: 1.0.2
796 | available-typed-arrays: 1.0.5
797 | call-bind: 1.0.2
798 | es-set-tostringtag: 2.0.1
799 | es-to-primitive: 1.2.1
800 | function.prototype.name: 1.1.6
801 | get-intrinsic: 1.2.1
802 | get-symbol-description: 1.0.0
803 | globalthis: 1.0.3
804 | gopd: 1.0.1
805 | has: 1.0.3
806 | has-property-descriptors: 1.0.0
807 | has-proto: 1.0.1
808 | has-symbols: 1.0.3
809 | internal-slot: 1.0.5
810 | is-array-buffer: 3.0.2
811 | is-callable: 1.2.7
812 | is-negative-zero: 2.0.2
813 | is-regex: 1.1.4
814 | is-shared-array-buffer: 1.0.2
815 | is-string: 1.0.7
816 | is-typed-array: 1.1.12
817 | is-weakref: 1.0.2
818 | object-inspect: 1.12.3
819 | object-keys: 1.1.1
820 | object.assign: 4.1.4
821 | regexp.prototype.flags: 1.5.1
822 | safe-array-concat: 1.0.1
823 | safe-regex-test: 1.0.0
824 | string.prototype.trim: 1.2.8
825 | string.prototype.trimend: 1.0.7
826 | string.prototype.trimstart: 1.0.7
827 | typed-array-buffer: 1.0.0
828 | typed-array-byte-length: 1.0.0
829 | typed-array-byte-offset: 1.0.0
830 | typed-array-length: 1.0.4
831 | unbox-primitive: 1.0.2
832 | which-typed-array: 1.1.11
833 | dev: true
834 |
835 | /es-set-tostringtag@2.0.1:
836 | resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==}
837 | engines: {node: '>= 0.4'}
838 | dependencies:
839 | get-intrinsic: 1.2.1
840 | has: 1.0.3
841 | has-tostringtag: 1.0.0
842 | dev: true
843 |
844 | /es-shim-unscopables@1.0.0:
845 | resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==}
846 | dependencies:
847 | has: 1.0.3
848 | dev: true
849 |
850 | /es-to-primitive@1.2.1:
851 | resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
852 | engines: {node: '>= 0.4'}
853 | dependencies:
854 | is-callable: 1.2.7
855 | is-date-object: 1.0.5
856 | is-symbol: 1.0.4
857 | dev: true
858 |
859 | /esbuild@0.18.20:
860 | resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==}
861 | engines: {node: '>=12'}
862 | hasBin: true
863 | requiresBuild: true
864 | optionalDependencies:
865 | '@esbuild/android-arm': 0.18.20
866 | '@esbuild/android-arm64': 0.18.20
867 | '@esbuild/android-x64': 0.18.20
868 | '@esbuild/darwin-arm64': 0.18.20
869 | '@esbuild/darwin-x64': 0.18.20
870 | '@esbuild/freebsd-arm64': 0.18.20
871 | '@esbuild/freebsd-x64': 0.18.20
872 | '@esbuild/linux-arm': 0.18.20
873 | '@esbuild/linux-arm64': 0.18.20
874 | '@esbuild/linux-ia32': 0.18.20
875 | '@esbuild/linux-loong64': 0.18.20
876 | '@esbuild/linux-mips64el': 0.18.20
877 | '@esbuild/linux-ppc64': 0.18.20
878 | '@esbuild/linux-riscv64': 0.18.20
879 | '@esbuild/linux-s390x': 0.18.20
880 | '@esbuild/linux-x64': 0.18.20
881 | '@esbuild/netbsd-x64': 0.18.20
882 | '@esbuild/openbsd-x64': 0.18.20
883 | '@esbuild/sunos-x64': 0.18.20
884 | '@esbuild/win32-arm64': 0.18.20
885 | '@esbuild/win32-ia32': 0.18.20
886 | '@esbuild/win32-x64': 0.18.20
887 | dev: true
888 |
889 | /escalade@3.1.1:
890 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
891 | engines: {node: '>=6'}
892 | dev: true
893 |
894 | /escape-string-regexp@1.0.5:
895 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
896 | engines: {node: '>=0.8.0'}
897 | dev: true
898 |
899 | /esprima@4.0.1:
900 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
901 | engines: {node: '>=4'}
902 | hasBin: true
903 | dev: true
904 |
905 | /extendable-error@0.1.7:
906 | resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==}
907 | dev: true
908 |
909 | /external-editor@3.1.0:
910 | resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==}
911 | engines: {node: '>=4'}
912 | dependencies:
913 | chardet: 0.7.0
914 | iconv-lite: 0.4.24
915 | tmp: 0.0.33
916 | dev: true
917 |
918 | /fast-glob@3.3.1:
919 | resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==}
920 | engines: {node: '>=8.6.0'}
921 | dependencies:
922 | '@nodelib/fs.stat': 2.0.5
923 | '@nodelib/fs.walk': 1.2.8
924 | glob-parent: 5.1.2
925 | merge2: 1.4.1
926 | micromatch: 4.0.5
927 | dev: true
928 |
929 | /fastq@1.15.0:
930 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==}
931 | dependencies:
932 | reusify: 1.0.4
933 | dev: true
934 |
935 | /fill-range@7.0.1:
936 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
937 | engines: {node: '>=8'}
938 | dependencies:
939 | to-regex-range: 5.0.1
940 | dev: true
941 |
942 | /find-up@4.1.0:
943 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
944 | engines: {node: '>=8'}
945 | dependencies:
946 | locate-path: 5.0.0
947 | path-exists: 4.0.0
948 | dev: true
949 |
950 | /find-up@5.0.0:
951 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
952 | engines: {node: '>=10'}
953 | dependencies:
954 | locate-path: 6.0.0
955 | path-exists: 4.0.0
956 | dev: true
957 |
958 | /find-yarn-workspace-root2@1.2.16:
959 | resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==}
960 | dependencies:
961 | micromatch: 4.0.5
962 | pkg-dir: 4.2.0
963 | dev: true
964 |
965 | /for-each@0.3.3:
966 | resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
967 | dependencies:
968 | is-callable: 1.2.7
969 | dev: true
970 |
971 | /fs-extra@7.0.1:
972 | resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==}
973 | engines: {node: '>=6 <7 || >=8'}
974 | dependencies:
975 | graceful-fs: 4.2.11
976 | jsonfile: 4.0.0
977 | universalify: 0.1.2
978 | dev: true
979 |
980 | /fs-extra@8.1.0:
981 | resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==}
982 | engines: {node: '>=6 <7 || >=8'}
983 | dependencies:
984 | graceful-fs: 4.2.11
985 | jsonfile: 4.0.0
986 | universalify: 0.1.2
987 | dev: true
988 |
989 | /fsevents@2.3.3:
990 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
991 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
992 | os: [darwin]
993 | requiresBuild: true
994 | dev: true
995 | optional: true
996 |
997 | /function-bind@1.1.1:
998 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
999 | dev: true
1000 |
1001 | /function.prototype.name@1.1.6:
1002 | resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==}
1003 | engines: {node: '>= 0.4'}
1004 | dependencies:
1005 | call-bind: 1.0.2
1006 | define-properties: 1.2.1
1007 | es-abstract: 1.22.2
1008 | functions-have-names: 1.2.3
1009 | dev: true
1010 |
1011 | /functions-have-names@1.2.3:
1012 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
1013 | dev: true
1014 |
1015 | /get-caller-file@2.0.5:
1016 | resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
1017 | engines: {node: 6.* || 8.* || >= 10.*}
1018 | dev: true
1019 |
1020 | /get-intrinsic@1.2.1:
1021 | resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==}
1022 | dependencies:
1023 | function-bind: 1.1.1
1024 | has: 1.0.3
1025 | has-proto: 1.0.1
1026 | has-symbols: 1.0.3
1027 | dev: true
1028 |
1029 | /get-symbol-description@1.0.0:
1030 | resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==}
1031 | engines: {node: '>= 0.4'}
1032 | dependencies:
1033 | call-bind: 1.0.2
1034 | get-intrinsic: 1.2.1
1035 | dev: true
1036 |
1037 | /get-tsconfig@4.7.2:
1038 | resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==}
1039 | dependencies:
1040 | resolve-pkg-maps: 1.0.0
1041 | dev: true
1042 |
1043 | /glob-parent@5.1.2:
1044 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
1045 | engines: {node: '>= 6'}
1046 | dependencies:
1047 | is-glob: 4.0.3
1048 | dev: true
1049 |
1050 | /globalthis@1.0.3:
1051 | resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==}
1052 | engines: {node: '>= 0.4'}
1053 | dependencies:
1054 | define-properties: 1.2.1
1055 | dev: true
1056 |
1057 | /globby@11.1.0:
1058 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
1059 | engines: {node: '>=10'}
1060 | dependencies:
1061 | array-union: 2.1.0
1062 | dir-glob: 3.0.1
1063 | fast-glob: 3.3.1
1064 | ignore: 5.2.4
1065 | merge2: 1.4.1
1066 | slash: 3.0.0
1067 | dev: true
1068 |
1069 | /gopd@1.0.1:
1070 | resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
1071 | dependencies:
1072 | get-intrinsic: 1.2.1
1073 | dev: true
1074 |
1075 | /graceful-fs@4.2.11:
1076 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
1077 | dev: true
1078 |
1079 | /grapheme-splitter@1.0.4:
1080 | resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==}
1081 | dev: true
1082 |
1083 | /hard-rejection@2.1.0:
1084 | resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==}
1085 | engines: {node: '>=6'}
1086 | dev: true
1087 |
1088 | /has-bigints@1.0.2:
1089 | resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
1090 | dev: true
1091 |
1092 | /has-flag@3.0.0:
1093 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
1094 | engines: {node: '>=4'}
1095 | dev: true
1096 |
1097 | /has-flag@4.0.0:
1098 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
1099 | engines: {node: '>=8'}
1100 | dev: true
1101 |
1102 | /has-property-descriptors@1.0.0:
1103 | resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==}
1104 | dependencies:
1105 | get-intrinsic: 1.2.1
1106 | dev: true
1107 |
1108 | /has-proto@1.0.1:
1109 | resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==}
1110 | engines: {node: '>= 0.4'}
1111 | dev: true
1112 |
1113 | /has-symbols@1.0.3:
1114 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
1115 | engines: {node: '>= 0.4'}
1116 | dev: true
1117 |
1118 | /has-tostringtag@1.0.0:
1119 | resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==}
1120 | engines: {node: '>= 0.4'}
1121 | dependencies:
1122 | has-symbols: 1.0.3
1123 | dev: true
1124 |
1125 | /has@1.0.3:
1126 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
1127 | engines: {node: '>= 0.4.0'}
1128 | dependencies:
1129 | function-bind: 1.1.1
1130 | dev: true
1131 |
1132 | /hosted-git-info@2.8.9:
1133 | resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
1134 | dev: true
1135 |
1136 | /human-id@1.0.2:
1137 | resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==}
1138 | dev: true
1139 |
1140 | /iconv-lite@0.4.24:
1141 | resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
1142 | engines: {node: '>=0.10.0'}
1143 | dependencies:
1144 | safer-buffer: 2.1.2
1145 | dev: true
1146 |
1147 | /ignore@5.2.4:
1148 | resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==}
1149 | engines: {node: '>= 4'}
1150 | dev: true
1151 |
1152 | /indent-string@4.0.0:
1153 | resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
1154 | engines: {node: '>=8'}
1155 | dev: true
1156 |
1157 | /internal-slot@1.0.5:
1158 | resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==}
1159 | engines: {node: '>= 0.4'}
1160 | dependencies:
1161 | get-intrinsic: 1.2.1
1162 | has: 1.0.3
1163 | side-channel: 1.0.4
1164 | dev: true
1165 |
1166 | /is-array-buffer@3.0.2:
1167 | resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==}
1168 | dependencies:
1169 | call-bind: 1.0.2
1170 | get-intrinsic: 1.2.1
1171 | is-typed-array: 1.1.12
1172 | dev: true
1173 |
1174 | /is-arrayish@0.2.1:
1175 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
1176 | dev: true
1177 |
1178 | /is-bigint@1.0.4:
1179 | resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==}
1180 | dependencies:
1181 | has-bigints: 1.0.2
1182 | dev: true
1183 |
1184 | /is-boolean-object@1.1.2:
1185 | resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
1186 | engines: {node: '>= 0.4'}
1187 | dependencies:
1188 | call-bind: 1.0.2
1189 | has-tostringtag: 1.0.0
1190 | dev: true
1191 |
1192 | /is-callable@1.2.7:
1193 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
1194 | engines: {node: '>= 0.4'}
1195 | dev: true
1196 |
1197 | /is-ci@3.0.1:
1198 | resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==}
1199 | hasBin: true
1200 | dependencies:
1201 | ci-info: 3.8.0
1202 | dev: true
1203 |
1204 | /is-core-module@2.13.0:
1205 | resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==}
1206 | dependencies:
1207 | has: 1.0.3
1208 | dev: true
1209 |
1210 | /is-date-object@1.0.5:
1211 | resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
1212 | engines: {node: '>= 0.4'}
1213 | dependencies:
1214 | has-tostringtag: 1.0.0
1215 | dev: true
1216 |
1217 | /is-extglob@2.1.1:
1218 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
1219 | engines: {node: '>=0.10.0'}
1220 | dev: true
1221 |
1222 | /is-fullwidth-code-point@3.0.0:
1223 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
1224 | engines: {node: '>=8'}
1225 | dev: true
1226 |
1227 | /is-glob@4.0.3:
1228 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
1229 | engines: {node: '>=0.10.0'}
1230 | dependencies:
1231 | is-extglob: 2.1.1
1232 | dev: true
1233 |
1234 | /is-negative-zero@2.0.2:
1235 | resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==}
1236 | engines: {node: '>= 0.4'}
1237 | dev: true
1238 |
1239 | /is-number-object@1.0.7:
1240 | resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
1241 | engines: {node: '>= 0.4'}
1242 | dependencies:
1243 | has-tostringtag: 1.0.0
1244 | dev: true
1245 |
1246 | /is-number@7.0.0:
1247 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
1248 | engines: {node: '>=0.12.0'}
1249 | dev: true
1250 |
1251 | /is-plain-obj@1.1.0:
1252 | resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==}
1253 | engines: {node: '>=0.10.0'}
1254 | dev: true
1255 |
1256 | /is-regex@1.1.4:
1257 | resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
1258 | engines: {node: '>= 0.4'}
1259 | dependencies:
1260 | call-bind: 1.0.2
1261 | has-tostringtag: 1.0.0
1262 | dev: true
1263 |
1264 | /is-shared-array-buffer@1.0.2:
1265 | resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==}
1266 | dependencies:
1267 | call-bind: 1.0.2
1268 | dev: true
1269 |
1270 | /is-string@1.0.7:
1271 | resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
1272 | engines: {node: '>= 0.4'}
1273 | dependencies:
1274 | has-tostringtag: 1.0.0
1275 | dev: true
1276 |
1277 | /is-subdir@1.2.0:
1278 | resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==}
1279 | engines: {node: '>=4'}
1280 | dependencies:
1281 | better-path-resolve: 1.0.0
1282 | dev: true
1283 |
1284 | /is-symbol@1.0.4:
1285 | resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
1286 | engines: {node: '>= 0.4'}
1287 | dependencies:
1288 | has-symbols: 1.0.3
1289 | dev: true
1290 |
1291 | /is-typed-array@1.1.12:
1292 | resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==}
1293 | engines: {node: '>= 0.4'}
1294 | dependencies:
1295 | which-typed-array: 1.1.11
1296 | dev: true
1297 |
1298 | /is-weakref@1.0.2:
1299 | resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==}
1300 | dependencies:
1301 | call-bind: 1.0.2
1302 | dev: true
1303 |
1304 | /is-windows@1.0.2:
1305 | resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
1306 | engines: {node: '>=0.10.0'}
1307 | dev: true
1308 |
1309 | /isarray@2.0.5:
1310 | resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
1311 | dev: true
1312 |
1313 | /isexe@2.0.0:
1314 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
1315 | dev: true
1316 |
1317 | /js-tokens@4.0.0:
1318 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
1319 | dev: true
1320 |
1321 | /js-yaml@3.14.1:
1322 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
1323 | hasBin: true
1324 | dependencies:
1325 | argparse: 1.0.10
1326 | esprima: 4.0.1
1327 | dev: true
1328 |
1329 | /json-parse-even-better-errors@2.3.1:
1330 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
1331 | dev: true
1332 |
1333 | /jsonfile@4.0.0:
1334 | resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==}
1335 | optionalDependencies:
1336 | graceful-fs: 4.2.11
1337 | dev: true
1338 |
1339 | /kind-of@6.0.3:
1340 | resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
1341 | engines: {node: '>=0.10.0'}
1342 | dev: true
1343 |
1344 | /kleur@4.1.5:
1345 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
1346 | engines: {node: '>=6'}
1347 | dev: true
1348 |
1349 | /lines-and-columns@1.2.4:
1350 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
1351 | dev: true
1352 |
1353 | /load-yaml-file@0.2.0:
1354 | resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==}
1355 | engines: {node: '>=6'}
1356 | dependencies:
1357 | graceful-fs: 4.2.11
1358 | js-yaml: 3.14.1
1359 | pify: 4.0.1
1360 | strip-bom: 3.0.0
1361 | dev: true
1362 |
1363 | /locate-path@5.0.0:
1364 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
1365 | engines: {node: '>=8'}
1366 | dependencies:
1367 | p-locate: 4.1.0
1368 | dev: true
1369 |
1370 | /locate-path@6.0.0:
1371 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
1372 | engines: {node: '>=10'}
1373 | dependencies:
1374 | p-locate: 5.0.0
1375 | dev: true
1376 |
1377 | /lodash.startcase@4.4.0:
1378 | resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==}
1379 | dev: true
1380 |
1381 | /lru-cache@4.1.5:
1382 | resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==}
1383 | dependencies:
1384 | pseudomap: 1.0.2
1385 | yallist: 2.1.2
1386 | dev: true
1387 |
1388 | /lru-cache@6.0.0:
1389 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
1390 | engines: {node: '>=10'}
1391 | dependencies:
1392 | yallist: 4.0.0
1393 | dev: true
1394 |
1395 | /map-obj@1.0.1:
1396 | resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==}
1397 | engines: {node: '>=0.10.0'}
1398 | dev: true
1399 |
1400 | /map-obj@4.3.0:
1401 | resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==}
1402 | engines: {node: '>=8'}
1403 | dev: true
1404 |
1405 | /meow@6.1.1:
1406 | resolution: {integrity: sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==}
1407 | engines: {node: '>=8'}
1408 | dependencies:
1409 | '@types/minimist': 1.2.3
1410 | camelcase-keys: 6.2.2
1411 | decamelize-keys: 1.1.1
1412 | hard-rejection: 2.1.0
1413 | minimist-options: 4.1.0
1414 | normalize-package-data: 2.5.0
1415 | read-pkg-up: 7.0.1
1416 | redent: 3.0.0
1417 | trim-newlines: 3.0.1
1418 | type-fest: 0.13.1
1419 | yargs-parser: 18.1.3
1420 | dev: true
1421 |
1422 | /merge2@1.4.1:
1423 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
1424 | engines: {node: '>= 8'}
1425 | dev: true
1426 |
1427 | /micromatch@4.0.5:
1428 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
1429 | engines: {node: '>=8.6'}
1430 | dependencies:
1431 | braces: 3.0.2
1432 | picomatch: 2.3.1
1433 | dev: true
1434 |
1435 | /min-indent@1.0.1:
1436 | resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
1437 | engines: {node: '>=4'}
1438 | dev: true
1439 |
1440 | /minimist-options@4.1.0:
1441 | resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==}
1442 | engines: {node: '>= 6'}
1443 | dependencies:
1444 | arrify: 1.0.1
1445 | is-plain-obj: 1.1.0
1446 | kind-of: 6.0.3
1447 | dev: true
1448 |
1449 | /mixme@0.5.9:
1450 | resolution: {integrity: sha512-VC5fg6ySUscaWUpI4gxCBTQMH2RdUpNrk+MsbpCYtIvf9SBJdiUey4qE7BXviJsJR4nDQxCZ+3yaYNW3guz/Pw==}
1451 | engines: {node: '>= 8.0.0'}
1452 | dev: true
1453 |
1454 | /normalize-package-data@2.5.0:
1455 | resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
1456 | dependencies:
1457 | hosted-git-info: 2.8.9
1458 | resolve: 1.22.6
1459 | semver: 5.7.2
1460 | validate-npm-package-license: 3.0.4
1461 | dev: true
1462 |
1463 | /object-inspect@1.12.3:
1464 | resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==}
1465 | dev: true
1466 |
1467 | /object-keys@1.1.1:
1468 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
1469 | engines: {node: '>= 0.4'}
1470 | dev: true
1471 |
1472 | /object.assign@4.1.4:
1473 | resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==}
1474 | engines: {node: '>= 0.4'}
1475 | dependencies:
1476 | call-bind: 1.0.2
1477 | define-properties: 1.2.1
1478 | has-symbols: 1.0.3
1479 | object-keys: 1.1.1
1480 | dev: true
1481 |
1482 | /os-tmpdir@1.0.2:
1483 | resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==}
1484 | engines: {node: '>=0.10.0'}
1485 | dev: true
1486 |
1487 | /outdent@0.5.0:
1488 | resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==}
1489 | dev: true
1490 |
1491 | /p-filter@2.1.0:
1492 | resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==}
1493 | engines: {node: '>=8'}
1494 | dependencies:
1495 | p-map: 2.1.0
1496 | dev: true
1497 |
1498 | /p-limit@2.3.0:
1499 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
1500 | engines: {node: '>=6'}
1501 | dependencies:
1502 | p-try: 2.2.0
1503 | dev: true
1504 |
1505 | /p-limit@3.1.0:
1506 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
1507 | engines: {node: '>=10'}
1508 | dependencies:
1509 | yocto-queue: 0.1.0
1510 | dev: true
1511 |
1512 | /p-locate@4.1.0:
1513 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
1514 | engines: {node: '>=8'}
1515 | dependencies:
1516 | p-limit: 2.3.0
1517 | dev: true
1518 |
1519 | /p-locate@5.0.0:
1520 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
1521 | engines: {node: '>=10'}
1522 | dependencies:
1523 | p-limit: 3.1.0
1524 | dev: true
1525 |
1526 | /p-map@2.1.0:
1527 | resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==}
1528 | engines: {node: '>=6'}
1529 | dev: true
1530 |
1531 | /p-try@2.2.0:
1532 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
1533 | engines: {node: '>=6'}
1534 | dev: true
1535 |
1536 | /parse-json@5.2.0:
1537 | resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
1538 | engines: {node: '>=8'}
1539 | dependencies:
1540 | '@babel/code-frame': 7.22.13
1541 | error-ex: 1.3.2
1542 | json-parse-even-better-errors: 2.3.1
1543 | lines-and-columns: 1.2.4
1544 | dev: true
1545 |
1546 | /path-exists@4.0.0:
1547 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
1548 | engines: {node: '>=8'}
1549 | dev: true
1550 |
1551 | /path-parse@1.0.7:
1552 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
1553 | dev: true
1554 |
1555 | /path-type@4.0.0:
1556 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
1557 | engines: {node: '>=8'}
1558 | dev: true
1559 |
1560 | /picomatch@2.3.1:
1561 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
1562 | engines: {node: '>=8.6'}
1563 | dev: true
1564 |
1565 | /pify@4.0.1:
1566 | resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==}
1567 | engines: {node: '>=6'}
1568 | dev: true
1569 |
1570 | /pkg-dir@4.2.0:
1571 | resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==}
1572 | engines: {node: '>=8'}
1573 | dependencies:
1574 | find-up: 4.1.0
1575 | dev: true
1576 |
1577 | /preferred-pm@3.1.2:
1578 | resolution: {integrity: sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==}
1579 | engines: {node: '>=10'}
1580 | dependencies:
1581 | find-up: 5.0.0
1582 | find-yarn-workspace-root2: 1.2.16
1583 | path-exists: 4.0.0
1584 | which-pm: 2.0.0
1585 | dev: true
1586 |
1587 | /prettier@2.8.8:
1588 | resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==}
1589 | engines: {node: '>=10.13.0'}
1590 | hasBin: true
1591 | dev: true
1592 |
1593 | /prettier@3.0.3:
1594 | resolution: {integrity: sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==}
1595 | engines: {node: '>=14'}
1596 | hasBin: true
1597 | dev: true
1598 |
1599 | /pseudomap@1.0.2:
1600 | resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==}
1601 | dev: true
1602 |
1603 | /queue-microtask@1.2.3:
1604 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
1605 | dev: true
1606 |
1607 | /quick-lru@4.0.1:
1608 | resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==}
1609 | engines: {node: '>=8'}
1610 | dev: true
1611 |
1612 | /read-pkg-up@7.0.1:
1613 | resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==}
1614 | engines: {node: '>=8'}
1615 | dependencies:
1616 | find-up: 4.1.0
1617 | read-pkg: 5.2.0
1618 | type-fest: 0.8.1
1619 | dev: true
1620 |
1621 | /read-pkg@5.2.0:
1622 | resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==}
1623 | engines: {node: '>=8'}
1624 | dependencies:
1625 | '@types/normalize-package-data': 2.4.2
1626 | normalize-package-data: 2.5.0
1627 | parse-json: 5.2.0
1628 | type-fest: 0.6.0
1629 | dev: true
1630 |
1631 | /read-yaml-file@1.1.0:
1632 | resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==}
1633 | engines: {node: '>=6'}
1634 | dependencies:
1635 | graceful-fs: 4.2.11
1636 | js-yaml: 3.14.1
1637 | pify: 4.0.1
1638 | strip-bom: 3.0.0
1639 | dev: true
1640 |
1641 | /redent@3.0.0:
1642 | resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==}
1643 | engines: {node: '>=8'}
1644 | dependencies:
1645 | indent-string: 4.0.0
1646 | strip-indent: 3.0.0
1647 | dev: true
1648 |
1649 | /regenerator-runtime@0.14.0:
1650 | resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==}
1651 | dev: true
1652 |
1653 | /regexp.prototype.flags@1.5.1:
1654 | resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==}
1655 | engines: {node: '>= 0.4'}
1656 | dependencies:
1657 | call-bind: 1.0.2
1658 | define-properties: 1.2.1
1659 | set-function-name: 2.0.1
1660 | dev: true
1661 |
1662 | /require-directory@2.1.1:
1663 | resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
1664 | engines: {node: '>=0.10.0'}
1665 | dev: true
1666 |
1667 | /require-main-filename@2.0.0:
1668 | resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==}
1669 | dev: true
1670 |
1671 | /resolve-from@5.0.0:
1672 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
1673 | engines: {node: '>=8'}
1674 | dev: true
1675 |
1676 | /resolve-pkg-maps@1.0.0:
1677 | resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
1678 | dev: true
1679 |
1680 | /resolve@1.22.6:
1681 | resolution: {integrity: sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw==}
1682 | hasBin: true
1683 | dependencies:
1684 | is-core-module: 2.13.0
1685 | path-parse: 1.0.7
1686 | supports-preserve-symlinks-flag: 1.0.0
1687 | dev: true
1688 |
1689 | /reusify@1.0.4:
1690 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
1691 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
1692 | dev: true
1693 |
1694 | /run-parallel@1.2.0:
1695 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
1696 | dependencies:
1697 | queue-microtask: 1.2.3
1698 | dev: true
1699 |
1700 | /safe-array-concat@1.0.1:
1701 | resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==}
1702 | engines: {node: '>=0.4'}
1703 | dependencies:
1704 | call-bind: 1.0.2
1705 | get-intrinsic: 1.2.1
1706 | has-symbols: 1.0.3
1707 | isarray: 2.0.5
1708 | dev: true
1709 |
1710 | /safe-regex-test@1.0.0:
1711 | resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==}
1712 | dependencies:
1713 | call-bind: 1.0.2
1714 | get-intrinsic: 1.2.1
1715 | is-regex: 1.1.4
1716 | dev: true
1717 |
1718 | /safer-buffer@2.1.2:
1719 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
1720 | dev: true
1721 |
1722 | /semver@5.7.2:
1723 | resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==}
1724 | hasBin: true
1725 | dev: true
1726 |
1727 | /semver@7.5.4:
1728 | resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==}
1729 | engines: {node: '>=10'}
1730 | hasBin: true
1731 | dependencies:
1732 | lru-cache: 6.0.0
1733 | dev: true
1734 |
1735 | /set-blocking@2.0.0:
1736 | resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==}
1737 | dev: true
1738 |
1739 | /set-function-name@2.0.1:
1740 | resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==}
1741 | engines: {node: '>= 0.4'}
1742 | dependencies:
1743 | define-data-property: 1.1.0
1744 | functions-have-names: 1.2.3
1745 | has-property-descriptors: 1.0.0
1746 | dev: true
1747 |
1748 | /shebang-command@1.2.0:
1749 | resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==}
1750 | engines: {node: '>=0.10.0'}
1751 | dependencies:
1752 | shebang-regex: 1.0.0
1753 | dev: true
1754 |
1755 | /shebang-regex@1.0.0:
1756 | resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==}
1757 | engines: {node: '>=0.10.0'}
1758 | dev: true
1759 |
1760 | /side-channel@1.0.4:
1761 | resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
1762 | dependencies:
1763 | call-bind: 1.0.2
1764 | get-intrinsic: 1.2.1
1765 | object-inspect: 1.12.3
1766 | dev: true
1767 |
1768 | /signal-exit@3.0.7:
1769 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
1770 | dev: true
1771 |
1772 | /slash@3.0.0:
1773 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
1774 | engines: {node: '>=8'}
1775 | dev: true
1776 |
1777 | /smartwrap@2.0.2:
1778 | resolution: {integrity: sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==}
1779 | engines: {node: '>=6'}
1780 | hasBin: true
1781 | dependencies:
1782 | array.prototype.flat: 1.3.2
1783 | breakword: 1.0.6
1784 | grapheme-splitter: 1.0.4
1785 | strip-ansi: 6.0.1
1786 | wcwidth: 1.0.1
1787 | yargs: 15.4.1
1788 | dev: true
1789 |
1790 | /source-map-support@0.5.21:
1791 | resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
1792 | dependencies:
1793 | buffer-from: 1.1.2
1794 | source-map: 0.6.1
1795 | dev: true
1796 |
1797 | /source-map@0.6.1:
1798 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
1799 | engines: {node: '>=0.10.0'}
1800 | dev: true
1801 |
1802 | /spawndamnit@2.0.0:
1803 | resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==}
1804 | dependencies:
1805 | cross-spawn: 5.1.0
1806 | signal-exit: 3.0.7
1807 | dev: true
1808 |
1809 | /spdx-correct@3.2.0:
1810 | resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==}
1811 | dependencies:
1812 | spdx-expression-parse: 3.0.1
1813 | spdx-license-ids: 3.0.15
1814 | dev: true
1815 |
1816 | /spdx-exceptions@2.3.0:
1817 | resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==}
1818 | dev: true
1819 |
1820 | /spdx-expression-parse@3.0.1:
1821 | resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
1822 | dependencies:
1823 | spdx-exceptions: 2.3.0
1824 | spdx-license-ids: 3.0.15
1825 | dev: true
1826 |
1827 | /spdx-license-ids@3.0.15:
1828 | resolution: {integrity: sha512-lpT8hSQp9jAKp9mhtBU4Xjon8LPGBvLIuBiSVhMEtmLecTh2mO0tlqrAMp47tBXzMr13NJMQ2lf7RpQGLJ3HsQ==}
1829 | dev: true
1830 |
1831 | /sprintf-js@1.0.3:
1832 | resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
1833 | dev: true
1834 |
1835 | /stream-transform@2.1.3:
1836 | resolution: {integrity: sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==}
1837 | dependencies:
1838 | mixme: 0.5.9
1839 | dev: true
1840 |
1841 | /string-width@4.2.3:
1842 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
1843 | engines: {node: '>=8'}
1844 | dependencies:
1845 | emoji-regex: 8.0.0
1846 | is-fullwidth-code-point: 3.0.0
1847 | strip-ansi: 6.0.1
1848 | dev: true
1849 |
1850 | /string.prototype.trim@1.2.8:
1851 | resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==}
1852 | engines: {node: '>= 0.4'}
1853 | dependencies:
1854 | call-bind: 1.0.2
1855 | define-properties: 1.2.1
1856 | es-abstract: 1.22.2
1857 | dev: true
1858 |
1859 | /string.prototype.trimend@1.0.7:
1860 | resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==}
1861 | dependencies:
1862 | call-bind: 1.0.2
1863 | define-properties: 1.2.1
1864 | es-abstract: 1.22.2
1865 | dev: true
1866 |
1867 | /string.prototype.trimstart@1.0.7:
1868 | resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==}
1869 | dependencies:
1870 | call-bind: 1.0.2
1871 | define-properties: 1.2.1
1872 | es-abstract: 1.22.2
1873 | dev: true
1874 |
1875 | /strip-ansi@6.0.1:
1876 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
1877 | engines: {node: '>=8'}
1878 | dependencies:
1879 | ansi-regex: 5.0.1
1880 | dev: true
1881 |
1882 | /strip-bom@3.0.0:
1883 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
1884 | engines: {node: '>=4'}
1885 | dev: true
1886 |
1887 | /strip-indent@3.0.0:
1888 | resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
1889 | engines: {node: '>=8'}
1890 | dependencies:
1891 | min-indent: 1.0.1
1892 | dev: true
1893 |
1894 | /supports-color@5.5.0:
1895 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
1896 | engines: {node: '>=4'}
1897 | dependencies:
1898 | has-flag: 3.0.0
1899 | dev: true
1900 |
1901 | /supports-color@7.2.0:
1902 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
1903 | engines: {node: '>=8'}
1904 | dependencies:
1905 | has-flag: 4.0.0
1906 | dev: true
1907 |
1908 | /supports-preserve-symlinks-flag@1.0.0:
1909 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
1910 | engines: {node: '>= 0.4'}
1911 | dev: true
1912 |
1913 | /term-size@2.2.1:
1914 | resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==}
1915 | engines: {node: '>=8'}
1916 | dev: true
1917 |
1918 | /tmp@0.0.33:
1919 | resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==}
1920 | engines: {node: '>=0.6.0'}
1921 | dependencies:
1922 | os-tmpdir: 1.0.2
1923 | dev: true
1924 |
1925 | /to-regex-range@5.0.1:
1926 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
1927 | engines: {node: '>=8.0'}
1928 | dependencies:
1929 | is-number: 7.0.0
1930 | dev: true
1931 |
1932 | /trim-newlines@3.0.1:
1933 | resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==}
1934 | engines: {node: '>=8'}
1935 | dev: true
1936 |
1937 | /tsx@3.13.0:
1938 | resolution: {integrity: sha512-rjmRpTu3as/5fjNq/kOkOtihgLxuIz6pbKdj9xwP4J5jOLkBxw/rjN5ANw+KyrrOXV5uB7HC8+SrrSJxT65y+A==}
1939 | hasBin: true
1940 | dependencies:
1941 | esbuild: 0.18.20
1942 | get-tsconfig: 4.7.2
1943 | source-map-support: 0.5.21
1944 | optionalDependencies:
1945 | fsevents: 2.3.3
1946 | dev: true
1947 |
1948 | /tty-table@4.2.2:
1949 | resolution: {integrity: sha512-2gvCArMZLxgvpZ2NvQKdnYWIFLe7I/z5JClMuhrDXunmKgSZcQKcZRjN9XjAFiToMz2pUo1dEIXyrm0AwgV5Tw==}
1950 | engines: {node: '>=8.0.0'}
1951 | hasBin: true
1952 | dependencies:
1953 | chalk: 4.1.2
1954 | csv: 5.5.3
1955 | kleur: 4.1.5
1956 | smartwrap: 2.0.2
1957 | strip-ansi: 6.0.1
1958 | wcwidth: 1.0.1
1959 | yargs: 17.7.2
1960 | dev: true
1961 |
1962 | /type-fest@0.13.1:
1963 | resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==}
1964 | engines: {node: '>=10'}
1965 | dev: true
1966 |
1967 | /type-fest@0.6.0:
1968 | resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==}
1969 | engines: {node: '>=8'}
1970 | dev: true
1971 |
1972 | /type-fest@0.8.1:
1973 | resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
1974 | engines: {node: '>=8'}
1975 | dev: true
1976 |
1977 | /typed-array-buffer@1.0.0:
1978 | resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==}
1979 | engines: {node: '>= 0.4'}
1980 | dependencies:
1981 | call-bind: 1.0.2
1982 | get-intrinsic: 1.2.1
1983 | is-typed-array: 1.1.12
1984 | dev: true
1985 |
1986 | /typed-array-byte-length@1.0.0:
1987 | resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==}
1988 | engines: {node: '>= 0.4'}
1989 | dependencies:
1990 | call-bind: 1.0.2
1991 | for-each: 0.3.3
1992 | has-proto: 1.0.1
1993 | is-typed-array: 1.1.12
1994 | dev: true
1995 |
1996 | /typed-array-byte-offset@1.0.0:
1997 | resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==}
1998 | engines: {node: '>= 0.4'}
1999 | dependencies:
2000 | available-typed-arrays: 1.0.5
2001 | call-bind: 1.0.2
2002 | for-each: 0.3.3
2003 | has-proto: 1.0.1
2004 | is-typed-array: 1.1.12
2005 | dev: true
2006 |
2007 | /typed-array-length@1.0.4:
2008 | resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==}
2009 | dependencies:
2010 | call-bind: 1.0.2
2011 | for-each: 0.3.3
2012 | is-typed-array: 1.1.12
2013 | dev: true
2014 |
2015 | /typescript@5.2.2:
2016 | resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==}
2017 | engines: {node: '>=14.17'}
2018 | hasBin: true
2019 | dev: true
2020 |
2021 | /unbox-primitive@1.0.2:
2022 | resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==}
2023 | dependencies:
2024 | call-bind: 1.0.2
2025 | has-bigints: 1.0.2
2026 | has-symbols: 1.0.3
2027 | which-boxed-primitive: 1.0.2
2028 | dev: true
2029 |
2030 | /universalify@0.1.2:
2031 | resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==}
2032 | engines: {node: '>= 4.0.0'}
2033 | dev: true
2034 |
2035 | /validate-npm-package-license@3.0.4:
2036 | resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
2037 | dependencies:
2038 | spdx-correct: 3.2.0
2039 | spdx-expression-parse: 3.0.1
2040 | dev: true
2041 |
2042 | /wcwidth@1.0.1:
2043 | resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}
2044 | dependencies:
2045 | defaults: 1.0.4
2046 | dev: true
2047 |
2048 | /which-boxed-primitive@1.0.2:
2049 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==}
2050 | dependencies:
2051 | is-bigint: 1.0.4
2052 | is-boolean-object: 1.1.2
2053 | is-number-object: 1.0.7
2054 | is-string: 1.0.7
2055 | is-symbol: 1.0.4
2056 | dev: true
2057 |
2058 | /which-module@2.0.1:
2059 | resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==}
2060 | dev: true
2061 |
2062 | /which-pm@2.0.0:
2063 | resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==}
2064 | engines: {node: '>=8.15'}
2065 | dependencies:
2066 | load-yaml-file: 0.2.0
2067 | path-exists: 4.0.0
2068 | dev: true
2069 |
2070 | /which-typed-array@1.1.11:
2071 | resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==}
2072 | engines: {node: '>= 0.4'}
2073 | dependencies:
2074 | available-typed-arrays: 1.0.5
2075 | call-bind: 1.0.2
2076 | for-each: 0.3.3
2077 | gopd: 1.0.1
2078 | has-tostringtag: 1.0.0
2079 | dev: true
2080 |
2081 | /which@1.3.1:
2082 | resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
2083 | hasBin: true
2084 | dependencies:
2085 | isexe: 2.0.0
2086 | dev: true
2087 |
2088 | /wrap-ansi@6.2.0:
2089 | resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
2090 | engines: {node: '>=8'}
2091 | dependencies:
2092 | ansi-styles: 4.3.0
2093 | string-width: 4.2.3
2094 | strip-ansi: 6.0.1
2095 | dev: true
2096 |
2097 | /wrap-ansi@7.0.0:
2098 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
2099 | engines: {node: '>=10'}
2100 | dependencies:
2101 | ansi-styles: 4.3.0
2102 | string-width: 4.2.3
2103 | strip-ansi: 6.0.1
2104 | dev: true
2105 |
2106 | /y18n@4.0.3:
2107 | resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==}
2108 | dev: true
2109 |
2110 | /y18n@5.0.8:
2111 | resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
2112 | engines: {node: '>=10'}
2113 | dev: true
2114 |
2115 | /yallist@2.1.2:
2116 | resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==}
2117 | dev: true
2118 |
2119 | /yallist@4.0.0:
2120 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
2121 | dev: true
2122 |
2123 | /yargs-parser@18.1.3:
2124 | resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==}
2125 | engines: {node: '>=6'}
2126 | dependencies:
2127 | camelcase: 5.3.1
2128 | decamelize: 1.2.0
2129 | dev: true
2130 |
2131 | /yargs-parser@21.1.1:
2132 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
2133 | engines: {node: '>=12'}
2134 | dev: true
2135 |
2136 | /yargs@15.4.1:
2137 | resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==}
2138 | engines: {node: '>=8'}
2139 | dependencies:
2140 | cliui: 6.0.0
2141 | decamelize: 1.2.0
2142 | find-up: 4.1.0
2143 | get-caller-file: 2.0.5
2144 | require-directory: 2.1.1
2145 | require-main-filename: 2.0.0
2146 | set-blocking: 2.0.0
2147 | string-width: 4.2.3
2148 | which-module: 2.0.1
2149 | y18n: 4.0.3
2150 | yargs-parser: 18.1.3
2151 | dev: true
2152 |
2153 | /yargs@17.7.2:
2154 | resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
2155 | engines: {node: '>=12'}
2156 | dependencies:
2157 | cliui: 8.0.1
2158 | escalade: 3.1.1
2159 | get-caller-file: 2.0.5
2160 | require-directory: 2.1.1
2161 | string-width: 4.2.3
2162 | y18n: 5.0.8
2163 | yargs-parser: 21.1.1
2164 | dev: true
2165 |
2166 | /yocto-queue@0.1.0:
2167 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
2168 | engines: {node: '>=10'}
2169 | dev: true
2170 |
--------------------------------------------------------------------------------
/scripts/generate-readme.ts:
--------------------------------------------------------------------------------
1 | import * as fs from "fs/promises";
2 | import * as path from "path";
3 | import { format, Config } from "prettier";
4 |
5 | interface Snippet {
6 | prefix: string;
7 | description: string;
8 | }
9 |
10 | const snippetsFilePath = path.join(__dirname, "../snippets/snippets.json");
11 | const packageJsonFilePath = path.join(__dirname, "../package.json");
12 | const templateFilePath = path.join(__dirname, "../templates/readme.md");
13 | const readMeFilePath = path.join(__dirname, "../README.md");
14 | const tableArr = ["| Keyword | Description |\n", "|---------|-------------|\n"];
15 |
16 | async function run() {
17 | const [snippetsContent, packageJsonContents, templateContent] =
18 | await Promise.all([
19 | fs.readFile(snippetsFilePath, "utf8"),
20 | fs.readFile(packageJsonFilePath, "utf8"),
21 | fs.readFile(templateFilePath, "utf8"),
22 | ]);
23 |
24 | const { prettier: prettierOptions } = JSON.parse(packageJsonContents) as {
25 | prettier: Config;
26 | };
27 | prettierOptions.parser = "markdown";
28 |
29 | const snippets = Object.values(JSON.parse(snippetsContent)) as Snippet[];
30 | for (const snippet of snippets) {
31 | tableArr.push(`| ${snippet.prefix} | ${snippet.description} |\n`);
32 | }
33 |
34 | const table = tableArr.join("");
35 | const content = templateContent.replace("{{ SNIPPETS-TABLE }}", table);
36 | const readMe = await format(content, prettierOptions);
37 | await fs.writeFile(readMeFilePath, readMe);
38 | }
39 |
40 | run().catch((err) => {
41 | console.log(err);
42 | process.exit(1);
43 | });
44 |
--------------------------------------------------------------------------------
/scripts/lint.ts:
--------------------------------------------------------------------------------
1 | import * as fs from "fs/promises";
2 | import * as path from "path";
3 |
4 | interface Snippet {
5 | prefix: string;
6 | body: string[];
7 | description: string;
8 | }
9 |
10 | interface SnippetError {
11 | key: string;
12 | message: string;
13 | }
14 |
15 | const errors: SnippetError[] = [];
16 | const snippetsFilePath = path.join(__dirname, "../snippets/snippets.json");
17 |
18 | function isString(value: unknown): value is string {
19 | return typeof value === "string" && value.length !== 0;
20 | }
21 |
22 | function isCorrectPrefix(value: unknown): value is string {
23 | return isString(value) && value.startsWith("op-");
24 | }
25 |
26 | async function run() {
27 | const snippetsContent = await fs.readFile(snippetsFilePath, "utf8");
28 | const snippets = Object.entries(JSON.parse(snippetsContent));
29 |
30 | for (const [key, snippet] of snippets) {
31 | const { prefix, description } = snippet;
32 | if (!isString(key)) {
33 | errors.push({
34 | key: `${key}`,
35 | message: `Snippet key should be a string (non-empty).`,
36 | });
37 | }
38 |
39 | if (!isCorrectPrefix(prefix)) {
40 | errors.push({
41 | key: `${key}`,
42 | message: `Snippet prefix should be a string (non-empty) that starts with the "op-" prefix. Found: "${prefix}".`,
43 | });
44 | }
45 |
46 | if (!isString(description)) {
47 | errors.push({
48 | key: `${key}`,
49 | message: `Description should be a string (non-empty).`,
50 | });
51 | }
52 | }
53 |
54 | if (errors.length > 0) {
55 | console.log(
56 | `Found ${errors.length} error${errors.length === 1 ? "" : "s"}.\n`,
57 | );
58 |
59 | for (const error of errors) {
60 | console.error(`[KEY: ${error.key}] ${error.message}`);
61 | }
62 | process.exit(1);
63 | }
64 | }
65 |
66 | run().catch((err) => {
67 | console.log(err);
68 | process.exit(1);
69 | });
70 |
--------------------------------------------------------------------------------
/snippets/snippets.json:
--------------------------------------------------------------------------------
1 | {
2 | "createUnauthenticatedClient": {
3 | "prefix": "op-uc",
4 | "body": [
5 | "import { createUnauthenticatedClient } from \"@interledger/open-payments\";",
6 | "",
7 | "const client = await createUnauthenticatedClient({});"
8 | ],
9 | "description": "Creates an unauthenticated OP client"
10 | },
11 | "createAuthenticatedClient": {
12 | "prefix": "op-ac",
13 | "body": [
14 | "import { createAuthenticatedClient } from \"@interledger/open-payments\";",
15 | "",
16 | "const client = await createAuthenticatedClient({",
17 | "\tkeyId: ${1:\"\"},",
18 | "\twalletAddressUrl: ${2:\"\"},",
19 | "\tprivateKey: ${3:\"\"},",
20 | "});"
21 | ],
22 | "description": "Creates an authenticated OP client"
23 | },
24 | "getWalletAddressInformation": {
25 | "prefix": "op-wa",
26 | "body": [
27 | "const walletAddress = await client.walletAddress.get({",
28 | "\turl: ${1:\"\"},",
29 | "});"
30 | ],
31 | "description": "Get wallet address information"
32 | },
33 | "getWalletAddressKeys": {
34 | "prefix": "op-wa-keys",
35 | "body": [
36 | "const walletAddressKeys = await client.walletAddress.getKeys({",
37 | "\turl: ${1:\"\"},",
38 | "});"
39 | ],
40 | "description": "Get wallet address keys"
41 | },
42 | "revokeGrant": {
43 | "prefix": "op-grant-revoke",
44 | "body": [
45 | "await client.grant.cancel({",
46 | "\taccessToken: ${1:\"\"},",
47 | "\turl: ${2:\"\"},",
48 | "});"
49 | ],
50 | "description": "Revoke a grant"
51 | },
52 | "requestGrant": {
53 | "prefix": "op-grant",
54 | "body": [
55 | "import { isPendingGrant } from \"@interledger/open-payments\";",
56 | "",
57 | "const grant = await client.grant.request(",
58 | "\t{",
59 | "\t\turl: ${1:\"\"},",
60 | "\t},",
61 | "\t{",
62 | "\t\taccess_token: {",
63 | "\t\t\taccess: [",
64 | "\t\t\t\t{",
65 | "\t\t\t\t\ttype: \"quote\",",
66 | "\t\t\t\t\tactions: [\"read\", \"read-all\", \"create\"],",
67 | "\t\t\t\t},",
68 | "\t\t\t\t{",
69 | "\t\t\t\t\ttype: \"incoming-payment\",",
70 | "\t\t\t\t\tactions: [\"read\", \"read-all\", \"list\", \"list-all\", \"create\", \"complete\"],",
71 | "\t\t\t\t},",
72 | "\t\t\t\t{",
73 | "\t\t\t\t\tidentifier: ${2:\"\"},",
74 | "\t\t\t\t\ttype: \"outgoing-payment\",",
75 | "\t\t\t\t\tactions: [\"read\", \"read-all\", \"list\", \"list-all\", \"create\"],",
76 | "\t\t\t\t\tlimits: {",
77 | "\t\t\t\t\t\tdebitAmount: {",
78 | "\t\t\t\t\t\t\tvalue: ${3:\"\"},",
79 | "\t\t\t\t\t\t\tassetCode: ${4:\"\"},",
80 | "\t\t\t\t\t\t\tassetScale: ${5:\"\"},",
81 | "\t\t\t\t\t\t},",
82 | "\t\t\t\t\t\treceiveAmount: {",
83 | "\t\t\t\t\t\t\tvalue: ${6:\"\"},",
84 | "\t\t\t\t\t\t\tassetCode: ${7:\"\"},",
85 | "\t\t\t\t\t\t\tassetScale: ${8:\"\"},",
86 | "\t\t\t\t\t\t},",
87 | "\t\t\t\t\t},",
88 | "\t\t\t\t},",
89 | "\t\t\t],",
90 | "\t\t},",
91 | "\t\tinteract: {",
92 | "\t\t\tstart: [\"redirect\"],",
93 | "\t\t\tfinish: {",
94 | "\t\t\t\tmethod: \"redirect\",",
95 | "\t\t\t\turi: ${9:\"\"},",
96 | "\t\t\t\tnonce: ${10:\"\"},",
97 | "\t\t\t},",
98 | "\t\t},",
99 | "\t},",
100 | ");",
101 | "",
102 | "if (!isPendingGrant(grant)) {",
103 | "\tthrow new Error(\"Expected interactive grant\");",
104 | "}"
105 | ],
106 | "description": "Request a grant"
107 | },
108 | "continueGrant": {
109 | "prefix": "op-grant-continue",
110 | "body": [
111 | "const grant = await client.grant.continue(",
112 | "\t{",
113 | "\t\taccessToken: ${1:\"\"},",
114 | "\t\turl: ${2:\"\"},",
115 | "\t},",
116 | "\t{",
117 | "\t\tinteract_ref: ${3:\"\"},",
118 | "\t},",
119 | ");"
120 | ],
121 | "description": "Continue a grant"
122 | },
123 | "requestIncomingPaymentGrant": {
124 | "prefix": "op-grant-ip",
125 | "body": [
126 | "import { isPendingGrant } from \"@interledger/open-payments\";",
127 | "",
128 | "const grant = await client.grant.request(",
129 | "\t{",
130 | "\t\turl: ${1:\"\"},",
131 | "\t},",
132 | "\t{",
133 | "\t\taccess_token: {",
134 | "\t\t\taccess: [",
135 | "\t\t\t\t{",
136 | "\t\t\t\t\ttype: \"incoming-payment\",",
137 | "\t\t\t\t\tactions: [\"list\", \"list-all\", \"read\", \"read-all\", \"complete\", \"create\"],",
138 | "\t\t\t\t},",
139 | "\t\t\t],",
140 | "\t\t},",
141 | "\t},",
142 | ");",
143 | "",
144 | "if (isPendingGrant(grant)) {",
145 | "\tthrow new Error(\"Expected non-interactive grant\");",
146 | "}"
147 | ],
148 | "description": "Request an incoming payment grant"
149 | },
150 | "requestOutgoingPaymentGrant": {
151 | "prefix": "op-grant-op",
152 | "body": [
153 | "import { isPendingGrant } from \"@interledger/open-payments\";",
154 | "",
155 | "const grant = await client.grant.request(",
156 | "\t{",
157 | "\t\turl: ${1:\"\"},",
158 | "\t},",
159 | "\t{",
160 | "\t\taccess_token: {",
161 | "\t\t\taccess: [",
162 | "\t\t\t\t{",
163 | "\t\t\t\t\tidentifier: ${2:\"\"},",
164 | "\t\t\t\t\ttype: \"outgoing-payment\",",
165 | "\t\t\t\t\tactions: [\"list\", \"list-all\", \"read\", \"read-all\", \"create\"],",
166 | "\t\t\t\t\tlimits: {",
167 | "\t\t\t\t\t\tdebitAmount: {",
168 | "\t\t\t\t\t\t\tvalue: ${3:\"\"},",
169 | "\t\t\t\t\t\t\tassetCode: ${4:\"\"},",
170 | "\t\t\t\t\t\t\tassetScale: ${5:\"\"},",
171 | "\t\t\t\t\t\t},",
172 | "\t\t\t\t\t\treceiveAmount: {",
173 | "\t\t\t\t\t\t\tvalue: ${6:\"\"},",
174 | "\t\t\t\t\t\t\tassetCode: ${7:\"\"},",
175 | "\t\t\t\t\t\t\tassetScale: ${8:\"\"},",
176 | "\t\t\t\t\t\t},",
177 | "\t\t\t\t\t},",
178 | "\t\t\t\t},",
179 | "\t\t\t],",
180 | "\t\t},",
181 | "\t\tinteract: {",
182 | "\t\t\tstart: [\"redirect\"],",
183 | "\t\t\tfinish: {",
184 | "\t\t\t\tmethod: \"redirect\",",
185 | "\t\t\t\turi: ${9:\"\"},",
186 | "\t\t\t\tnonce: ${10:\"\"},",
187 | "\t\t\t},",
188 | "\t\t},",
189 | "\t},",
190 | ");",
191 | "",
192 | "if (!isPendingGrant(grant)) {",
193 | "\tthrow new Error(\"Expected interactive grant\");",
194 | "}"
195 | ],
196 | "description": "Request an outgoing payment grant"
197 | },
198 | "requestQuoteGrant": {
199 | "prefix": "op-grant-quote",
200 | "body": [
201 | "const grant = await client.grant.request(",
202 | "\t{",
203 | "\t\turl: ${1:\"\"},",
204 | "\t},",
205 | "\t{",
206 | "\t\taccess_token: {",
207 | "\t\t\taccess: [",
208 | "\t\t\t\t{",
209 | "\t\t\t\t\ttype: \"quote\",",
210 | "\t\t\t\t\tactions: [\"create\", \"read\", \"read-all\"],",
211 | "\t\t\t\t},",
212 | "\t\t\t],",
213 | "\t\t},",
214 | "\t},",
215 | ");",
216 | "",
217 | "if (isPendingGrant(grant)) {",
218 | "\tthrow new Error(\"Expected non-interactive grant\");",
219 | "}"
220 | ],
221 | "description": "Request a quote grant"
222 | },
223 | "revokeToken": {
224 | "prefix": "op-token-revoke",
225 | "body": [
226 | "await client.token.revoke({",
227 | "\turl: ${1:\"\"},",
228 | "\taccessToken: ${2:\"\"},",
229 | "});"
230 | ],
231 | "description": "Revoke a token"
232 | },
233 | "rotateToken": {
234 | "prefix": "op-token-rotate",
235 | "body": [
236 | "const token = await client.token.rotate({",
237 | "\turl: ${1:\"\"},",
238 | "\taccessToken: ${2:\"\"},",
239 | "});"
240 | ],
241 | "description": "Rotate a token"
242 | },
243 | "createQuote": {
244 | "prefix": "op-quote-create",
245 | "body": [
246 | "const quote = await client.quote.create(",
247 | "\t{",
248 | "\t\turl: ${1:\"\"},",
249 | "\t\taccessToken: ${2:\"\"},",
250 | "\t},",
251 | "\t{",
252 | "\t\tmethod: ${3:\"\"},",
253 | "\t\twalletAddress: ${4:\"\"},",
254 | "\t\treceiver: ${5:\"\"},",
255 | "\t},",
256 | ");"
257 | ],
258 | "description": "Create a quote without receive amount and debit amount"
259 | },
260 | "createQuoteWithReceiveAmount": {
261 | "prefix": "op-quote-create-ra",
262 | "body": [
263 | "const quote = await client.quote.create(",
264 | "\t{",
265 | "\t\turl: ${1:\"\"},",
266 | "\t\taccessToken: ${2:\"\"},",
267 | "\t},",
268 | "\t{",
269 | "\t\tmethod: ${3:\"\"},",
270 | "\t\twalletAddress: ${4:\"\"},",
271 | "\t\treceiver: ${5:\"\"},",
272 | "\t\treceiveAmount: {",
273 | "\t\t\tvalue: ${6:\"\"},",
274 | "\t\t\tassetCode: ${7:\"\"},",
275 | "\t\t\tassetScale: ${8:\"\"},",
276 | "\t\t},",
277 | "\t},",
278 | ");"
279 | ],
280 | "description": "Create a quote with receive amount"
281 | },
282 | "createQuoteWithDebitAmount": {
283 | "prefix": "op-quote-create-da",
284 | "body": [
285 | "const quote = await client.quote.create(",
286 | "\t{",
287 | "\t\turl: ${1:\"\"},",
288 | "\t\taccessToken: ${2:\"\"},",
289 | "\t},",
290 | "\t{",
291 | "\t\tmethod: ${3:\"\"},",
292 | "\t\twalletAddress: ${4:\"\"},",
293 | "\t\treceiver: ${5:\"\"},",
294 | "\t\tdebitAmount: {",
295 | "\t\t\tvalue: ${5:\"\"},",
296 | "\t\t\tassetCode: ${6:\"\"},",
297 | "\t\t\tassetScale: ${7:\"\"},",
298 | "\t\t},",
299 | "\t},",
300 | ");"
301 | ],
302 | "description": "Create a quote with debit amount"
303 | },
304 | "getQuote": {
305 | "prefix": "op-quote-get",
306 | "body": [
307 | "const quote = await client.quote.get({",
308 | "\turl: ${1:\"\"},",
309 | "\taccessToken: ${2:\"\"},",
310 | "});"
311 | ],
312 | "description": "Get a quote"
313 | },
314 | "createIncomingPayment": {
315 | "prefix": "op-ip-create",
316 | "body": [
317 | "const incomingPayment = await client.incomingPayment.create(",
318 | "\t{",
319 | "\t\turl: ${1:\"\"},",
320 | "\t\taccessToken: ${2:\"\"},",
321 | "\t},",
322 | "\t{",
323 | "\t\twalletAddress: ${3:\"\"},",
324 | "\t\tmetadata: {},",
325 | "\t\texpiresAt: new Date().toISOString(),",
326 | "\t},",
327 | ");"
328 | ],
329 | "description": "Create an incoming payment without incoming amount"
330 | },
331 | "createIncomingPaymentWithIncomingAmount": {
332 | "prefix": "op-ip-create-ia",
333 | "body": [
334 | "const incomingPayment = await client.incomingPayment.create(",
335 | "\t{",
336 | "\t\turl: ${1:\"\"},",
337 | "\t\taccessToken: ${2:\"\"},",
338 | "\t},",
339 | "\t{",
340 | "\t\twalletAddress: ${3:\"\"},",
341 | "\t\tincomingAmount: {",
342 | "\t\t\tvalue: ${3:\"\"},",
343 | "\t\t\tassetCode: ${4:\"\"},",
344 | "\t\t\tassetScale: ${5:\"\"},",
345 | "\t\t},",
346 | "\t\tmetadata: {},",
347 | "\t\texpiresAt: new Date().toISOString(),",
348 | "\t},",
349 | ");"
350 | ],
351 | "description": "Create an incoming payment with incoming amount"
352 | },
353 | "completeIncomingPayment": {
354 | "prefix": "op-ip-complete",
355 | "body": [
356 | "const incomingPayment = await client.incomingPayment.complete({",
357 | "\turl: ${1:\"\"},",
358 | "\taccessToken: ${2:\"\"},",
359 | "});"
360 | ],
361 | "description": "Complete an incoming payment"
362 | },
363 | "getIncomingPayment": {
364 | "prefix": "op-ip-get",
365 | "body": [
366 | "const incomingPayment = await client.incomingPayment.get({",
367 | "\turl: ${1:\"\"},",
368 | "\taccessToken: ${2:\"\"},",
369 | "});"
370 | ],
371 | "description": "Get an incoming payment"
372 | },
373 | "listIncomingPayments": {
374 | "prefix": "op-ip-list",
375 | "body": [
376 | "const incomingPayments = await client.incomingPayment.list(",
377 | "\t{",
378 | "\t\turl: ${1:\"\"},",
379 | "\t\taccessToken: ${2:\"\"},",
380 | "\t\twalletAddress: ${2:\"\"},",
381 | "\t},",
382 | "\t{",
383 | "\t\tfirst: ${3:10},",
384 | "\t\tlast: ${4:undefined},",
385 | "\t\tcursor: ${5:undefined},",
386 | "\t},",
387 | ");"
388 | ],
389 | "description": "List incoming payments"
390 | },
391 | "createOutgoingPayment": {
392 | "prefix": "op-op-create",
393 | "body": [
394 | "const outgoingPayment = await client.outgoingPayment.create(",
395 | "\t{",
396 | "\t\turl: ${1:\"\"},",
397 | "\t\taccessToken: ${2:\"\"},",
398 | "\t},",
399 | "\t{",
400 | "\t\twalletAddress: ${3:\"\"},",
401 | "\t\tmetadata: {},",
402 | "\t\tquoteId: ${4:\"\"},",
403 | "\t},",
404 | ");"
405 | ],
406 | "description": "Create an outgoing payment"
407 | },
408 | "getOutgoingPayment": {
409 | "prefix": "op-op-get",
410 | "body": [
411 | "const outgoingPayment = await client.outgoingPayment.get({",
412 | "\turl: ${1:\"\"},",
413 | "\taccessToken: ${2:\"\"},",
414 | "});"
415 | ],
416 | "description": "Get an outgoing payment"
417 | },
418 | "listOutgoingPayments": {
419 | "prefix": "op-op-list",
420 | "body": [
421 | "const outgoingPayments = await client.outgoingPayment.list(",
422 | "\t{",
423 | "\t\turl: ${1:\"\"},",
424 | "\t\taccessToken: ${2:\"\"},",
425 | "\t\twalletAddress: ${2:\"\"},",
426 | "\t},",
427 | "\t{",
428 | "\t\tfirst: ${3:10},",
429 | "\t\tlast: ${4:undefined},",
430 | "\t\tcursor: ${5:undefined},",
431 | "\t},",
432 | ");"
433 | ],
434 | "description": "List outgoing payments"
435 | }
436 | }
437 |
--------------------------------------------------------------------------------
/templates/readme.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Open Payments SDK Snippets
6 |
7 | Updated for Open Payments Node SDK version 6
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | ## Installation
17 |
18 | 1. Launch _Quick Open_:
19 |
20 | - Linux & Windows: `Ctrl+P`
21 | - macOS: `⌘+P`
22 |
23 | 2. Paste the following command and press `Enter`:
24 |
25 | ```shell
26 | ext install open-payments-snippets-vscode
27 | ```
28 |
29 | 3. Choose the extension (make sure the author is `Interledger Foundation`).
30 |
31 | 4. Reload Visual Studio Code
32 |
33 | ## Usage
34 |
35 | Every Open Payments SDK snippet starts with the "op-" prefix:
36 |
37 | - `op-pp`
38 | - `op-grant-continue`
39 |
40 | You don't need to type any dashes or the full keyword. You can use some alternatives. For example:
41 |
42 | - `ogc` -> `op-grant-continue` snippet
43 | - `ograntc` -> `op-grant-continue` snippet
44 |
45 | ## Snippets
46 |
47 | {{ SNIPPETS-TABLE }}
48 |
49 | ## Feedback and issues
50 |
51 | If you encounter any issues or have feedback, please open an issue on
52 | the [GitHub repository](https://github.com/interledger/open-payments-snippets-vscode/issues). We appreciate your feedback
53 | and contributions!
54 |
55 | ## License
56 |
57 | This project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details.
58 |
--------------------------------------------------------------------------------