├── index.js ├── .npmignore ├── assets └── a2a-n8n.png ├── .gitignore ├── .vscode └── extensions.json ├── .editorconfig ├── .eslintrc.prepublish.js ├── nodes ├── HttpBin │ ├── HttpBin.node.json │ ├── httpbin.svg │ ├── HttpBin.node.ts │ └── HttpVerbDescription.ts └── A2ANode │ └── A2ANode.node.ts ├── gulpfile.js ├── tsconfig.json ├── LICENSE.md ├── .prettierrc.js ├── credentials ├── HttpBinApi.credentials.ts └── ExampleCredentialsApi.credentials.ts ├── .eslintrc.js ├── package.json ├── README_TEMPLATE.md ├── CODE_OF_CONDUCT.md ├── README.md └── pnpm-lock.yaml /index.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | *.tsbuildinfo 3 | -------------------------------------------------------------------------------- /assets/a2a-n8n.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pjawz/n8n-nodes-agent2agent/HEAD/assets/a2a-n8n.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | .tmp 4 | tmp 5 | dist 6 | npm-debug.log* 7 | yarn.lock 8 | .vscode/launch.json 9 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": [ 3 | "dbaeumer.vscode-eslint", 4 | "EditorConfig.EditorConfig", 5 | "esbenp.prettier-vscode", 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | indent_style = tab 6 | indent_size = 2 7 | end_of_line = lf 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | 11 | [package.json] 12 | indent_style = space 13 | indent_size = 2 14 | 15 | [*.md] 16 | trim_trailing_whitespace = false 17 | 18 | [*.yml] 19 | indent_style = space 20 | indent_size = 2 21 | -------------------------------------------------------------------------------- /.eslintrc.prepublish.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @type {import('@types/eslint').ESLint.ConfigData} 3 | */ 4 | module.exports = { 5 | extends: "./.eslintrc.js", 6 | 7 | overrides: [ 8 | { 9 | files: ['package.json'], 10 | plugins: ['eslint-plugin-n8n-nodes-base'], 11 | rules: { 12 | 'n8n-nodes-base/community-package-json-name-still-default': 'error', 13 | }, 14 | }, 15 | ], 16 | }; 17 | -------------------------------------------------------------------------------- /nodes/HttpBin/HttpBin.node.json: -------------------------------------------------------------------------------- 1 | { 2 | "node": "n8n-nodes-base.httpbin", 3 | "nodeVersion": "1.0", 4 | "codexVersion": "1.0", 5 | "categories": ["Development", "Developer Tools"], 6 | "resources": { 7 | "credentialDocumentation": [ 8 | { 9 | "url": "http://httpbin.org/#/Auth/get_bearer" 10 | } 11 | ], 12 | "primaryDocumentation": [ 13 | { 14 | "url": "http://httpbin.org/" 15 | } 16 | ] 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /gulpfile.js: -------------------------------------------------------------------------------- 1 | const path = require('path'); 2 | const { task, src, dest } = require('gulp'); 3 | 4 | task('build:icons', copyIcons); 5 | 6 | function copyIcons() { 7 | const nodeSource = path.resolve('nodes', '**', '*.{png,svg}'); 8 | const nodeDestination = path.resolve('dist', 'nodes'); 9 | 10 | src(nodeSource).pipe(dest(nodeDestination)); 11 | 12 | const credSource = path.resolve('credentials', '**', '*.{png,svg}'); 13 | const credDestination = path.resolve('dist', 'credentials'); 14 | 15 | return src(credSource).pipe(dest(credDestination)); 16 | } 17 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "strict": true, 4 | "module": "commonjs", 5 | "moduleResolution": "node", 6 | "target": "es2019", 7 | "lib": ["es2019", "es2020", "es2022.error"], 8 | "removeComments": true, 9 | "useUnknownInCatchVariables": false, 10 | "forceConsistentCasingInFileNames": true, 11 | "noImplicitAny": true, 12 | "noImplicitReturns": true, 13 | "noUnusedLocals": true, 14 | "strictNullChecks": true, 15 | "preserveConstEnums": true, 16 | "esModuleInterop": true, 17 | "resolveJsonModule": true, 18 | "incremental": true, 19 | "declaration": true, 20 | "sourceMap": true, 21 | "skipLibCheck": true, 22 | "outDir": "./dist/", 23 | }, 24 | "include": [ 25 | "credentials/**/*", 26 | "nodes/**/*", 27 | "nodes/**/*.json", 28 | "package.json", 29 | ], 30 | } 31 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | Copyright 2022 n8n 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of 4 | this software and associated documentation files (the "Software"), to deal in 5 | the Software without restriction, including without limitation the rights to 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 7 | of the Software, and to permit persons to whom the Software is furnished to do 8 | so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 19 | SOFTWARE. 20 | -------------------------------------------------------------------------------- /.prettierrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | /** 3 | * https://prettier.io/docs/en/options.html#semicolons 4 | */ 5 | semi: true, 6 | 7 | /** 8 | * https://prettier.io/docs/en/options.html#trailing-commas 9 | */ 10 | trailingComma: 'all', 11 | 12 | /** 13 | * https://prettier.io/docs/en/options.html#bracket-spacing 14 | */ 15 | bracketSpacing: true, 16 | 17 | /** 18 | * https://prettier.io/docs/en/options.html#tabs 19 | */ 20 | useTabs: true, 21 | 22 | /** 23 | * https://prettier.io/docs/en/options.html#tab-width 24 | */ 25 | tabWidth: 2, 26 | 27 | /** 28 | * https://prettier.io/docs/en/options.html#arrow-function-parentheses 29 | */ 30 | arrowParens: 'always', 31 | 32 | /** 33 | * https://prettier.io/docs/en/options.html#quotes 34 | */ 35 | singleQuote: true, 36 | 37 | /** 38 | * https://prettier.io/docs/en/options.html#quote-props 39 | */ 40 | quoteProps: 'as-needed', 41 | 42 | /** 43 | * https://prettier.io/docs/en/options.html#end-of-line 44 | */ 45 | endOfLine: 'lf', 46 | 47 | /** 48 | * https://prettier.io/docs/en/options.html#print-width 49 | */ 50 | printWidth: 100, 51 | }; 52 | -------------------------------------------------------------------------------- /credentials/HttpBinApi.credentials.ts: -------------------------------------------------------------------------------- 1 | import { 2 | IAuthenticateGeneric, 3 | ICredentialTestRequest, 4 | ICredentialType, 5 | INodeProperties, 6 | } from 'n8n-workflow'; 7 | 8 | export class HttpBinApi implements ICredentialType { 9 | name = 'httpbinApi'; 10 | displayName = 'HttpBin API'; 11 | documentationUrl = ''; 12 | properties: INodeProperties[] = [ 13 | { 14 | displayName: 'Token', 15 | name: 'token', 16 | type: 'string', 17 | default: '', 18 | typeOptions: { 19 | password: true, 20 | } 21 | }, 22 | { 23 | displayName: 'Domain', 24 | name: 'domain', 25 | type: 'string', 26 | default: 'https://httpbin.org', 27 | }, 28 | ]; 29 | 30 | // This allows the credential to be used by other parts of n8n 31 | // stating how this credential is injected as part of the request 32 | // An example is the Http Request node that can make generic calls 33 | // reusing this credential 34 | authenticate: IAuthenticateGeneric = { 35 | type: 'generic', 36 | properties: { 37 | headers: { 38 | Authorization: '={{"Bearer " + $credentials.token}}', 39 | }, 40 | }, 41 | }; 42 | 43 | // The block below tells how this credential can be tested 44 | test: ICredentialTestRequest = { 45 | request: { 46 | baseURL: '={{$credentials?.domain}}', 47 | url: '/bearer', 48 | }, 49 | }; 50 | } 51 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @type {import('@types/eslint').ESLint.ConfigData} 3 | */ 4 | module.exports = { 5 | root: true, 6 | 7 | env: { 8 | browser: true, 9 | es6: true, 10 | node: true, 11 | }, 12 | 13 | parser: '@typescript-eslint/parser', 14 | 15 | parserOptions: { 16 | project: ['./tsconfig.json'], 17 | sourceType: 'module', 18 | extraFileExtensions: ['.json'], 19 | }, 20 | 21 | ignorePatterns: ['.eslintrc.js', '**/*.js', '**/node_modules/**', '**/dist/**'], 22 | 23 | overrides: [ 24 | { 25 | files: ['package.json'], 26 | plugins: ['eslint-plugin-n8n-nodes-base'], 27 | extends: ['plugin:n8n-nodes-base/community'], 28 | rules: { 29 | 'n8n-nodes-base/community-package-json-name-still-default': 'off', 30 | }, 31 | }, 32 | { 33 | files: ['./credentials/**/*.ts'], 34 | plugins: ['eslint-plugin-n8n-nodes-base'], 35 | extends: ['plugin:n8n-nodes-base/credentials'], 36 | rules: { 37 | 'n8n-nodes-base/cred-class-field-documentation-url-missing': 'off', 38 | 'n8n-nodes-base/cred-class-field-documentation-url-miscased': 'off', 39 | }, 40 | }, 41 | { 42 | files: ['./nodes/**/*.ts'], 43 | plugins: ['eslint-plugin-n8n-nodes-base'], 44 | extends: ['plugin:n8n-nodes-base/nodes'], 45 | rules: { 46 | 'n8n-nodes-base/node-execute-block-missing-continue-on-fail': 'off', 47 | 'n8n-nodes-base/node-resource-description-filename-against-convention': 'off', 48 | 'n8n-nodes-base/node-param-fixed-collection-type-unsorted-items': 'off', 49 | }, 50 | }, 51 | ], 52 | }; 53 | -------------------------------------------------------------------------------- /credentials/ExampleCredentialsApi.credentials.ts: -------------------------------------------------------------------------------- 1 | import { 2 | IAuthenticateGeneric, 3 | ICredentialTestRequest, 4 | ICredentialType, 5 | INodeProperties, 6 | } from 'n8n-workflow'; 7 | 8 | export class ExampleCredentialsApi implements ICredentialType { 9 | name = 'exampleCredentialsApi'; 10 | displayName = 'Example Credentials API'; 11 | properties: INodeProperties[] = [ 12 | // The credentials to get from user and save encrypted. 13 | // Properties can be defined exactly in the same way 14 | // as node properties. 15 | { 16 | displayName: 'User Name', 17 | name: 'username', 18 | type: 'string', 19 | default: '', 20 | }, 21 | { 22 | displayName: 'Password', 23 | name: 'password', 24 | type: 'string', 25 | typeOptions: { 26 | password: true, 27 | }, 28 | default: '', 29 | }, 30 | ]; 31 | 32 | // This credential is currently not used by any node directly 33 | // but the HTTP Request node can use it to make requests. 34 | // The credential is also testable due to the `test` property below 35 | authenticate: IAuthenticateGeneric = { 36 | type: 'generic', 37 | properties: { 38 | auth: { 39 | username: '={{ $credentials.username }}', 40 | password: '={{ $credentials.password }}', 41 | }, 42 | qs: { 43 | // Send this as part of the query string 44 | n8n: 'rocks', 45 | }, 46 | }, 47 | }; 48 | 49 | // The block below tells how this credential can be tested 50 | test: ICredentialTestRequest = { 51 | request: { 52 | baseURL: 'https://example.com/', 53 | url: '', 54 | }, 55 | }; 56 | } 57 | -------------------------------------------------------------------------------- /nodes/HttpBin/httpbin.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "n8n-nodes-<...>", 3 | "version": "0.1.0", 4 | "description": "", 5 | "keywords": [ 6 | "n8n-community-node-package" 7 | ], 8 | "license": "MIT", 9 | "homepage": "", 10 | "author": { 11 | "name": "", 12 | "email": "" 13 | }, 14 | "repository": { 15 | "type": "git", 16 | "url": "https://github.com/<...>/n8n-nodes-<...>.git" 17 | }, 18 | "engines": { 19 | "node": ">=18.10", 20 | "pnpm": ">=9.1" 21 | }, 22 | "packageManager": "pnpm@9.1.4", 23 | "main": "index.js", 24 | "scripts": { 25 | "preinstall": "npx only-allow pnpm", 26 | "build": "tsc && gulp build:icons", 27 | "dev": "tsc --watch", 28 | "format": "prettier nodes credentials --write", 29 | "lint": "eslint nodes credentials package.json", 30 | "lintfix": "eslint nodes credentials package.json --fix", 31 | "prepublishOnly": "pnpm build && pnpm lint -c .eslintrc.prepublish.js nodes credentials package.json" 32 | }, 33 | "files": [ 34 | "dist" 35 | ], 36 | "n8n": { 37 | "n8nNodesApiVersion": 1, 38 | "credentials": [ 39 | "dist/credentials/ExampleCredentialsApi.credentials.js", 40 | "dist/credentials/HttpBinApi.credentials.js" 41 | ], 42 | "nodes": [ 43 | "dist/nodes/ExampleNode/ExampleNode.node.js", 44 | "dist/nodes/HttpBin/HttpBin.node.js" 45 | ] 46 | }, 47 | "devDependencies": { 48 | "@typescript-eslint/parser": "^7.15.0", 49 | "eslint": "^8.56.0", 50 | "eslint-plugin-n8n-nodes-base": "^1.16.1", 51 | "gulp": "^4.0.2", 52 | "prettier": "^3.3.2", 53 | "typescript": "^5.5.3" 54 | }, 55 | "peerDependencies": { 56 | "n8n-workflow": "*" 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /nodes/HttpBin/HttpBin.node.ts: -------------------------------------------------------------------------------- 1 | import { INodeType, INodeTypeDescription } from 'n8n-workflow'; 2 | import { httpVerbFields, httpVerbOperations } from './HttpVerbDescription'; 3 | 4 | export class HttpBin implements INodeType { 5 | description: INodeTypeDescription = { 6 | displayName: 'HttpBin', 7 | name: 'httpBin', 8 | icon: 'file:httpbin.svg', 9 | group: ['transform'], 10 | version: 1, 11 | subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}', 12 | description: 'Interact with HttpBin API', 13 | defaults: { 14 | name: 'HttpBin', 15 | }, 16 | inputs: ['main'], 17 | outputs: ['main'], 18 | credentials: [ 19 | { 20 | name: 'httpbinApi', 21 | required: false, 22 | }, 23 | ], 24 | requestDefaults: { 25 | baseURL: 'https://httpbin.org', 26 | url: '', 27 | headers: { 28 | Accept: 'application/json', 29 | 'Content-Type': 'application/json', 30 | }, 31 | }, 32 | /** 33 | * In the properties array we have two mandatory options objects required 34 | * 35 | * [Resource & Operation] 36 | * 37 | * https://docs.n8n.io/integrations/creating-nodes/code/create-first-node/#resources-and-operations 38 | * 39 | * In our example, the operations are separated into their own file (HTTPVerbDescription.ts) 40 | * to keep this class easy to read. 41 | * 42 | */ 43 | properties: [ 44 | { 45 | displayName: 'Resource', 46 | name: 'resource', 47 | type: 'options', 48 | noDataExpression: true, 49 | options: [ 50 | { 51 | name: 'HTTP Verb', 52 | value: 'httpVerb', 53 | }, 54 | ], 55 | default: 'httpVerb', 56 | }, 57 | 58 | ...httpVerbOperations, 59 | ...httpVerbFields, 60 | ], 61 | }; 62 | } 63 | -------------------------------------------------------------------------------- /README_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | # n8n-nodes-_node-name_ 2 | 3 | This is an n8n community node. It lets you use _app/service name_ in your n8n workflows. 4 | 5 | _App/service name_ is _one or two sentences describing the service this node integrates with_. 6 | 7 | [n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/reference/license/) workflow automation platform. 8 | 9 | [Installation](#installation) 10 | [Operations](#operations) 11 | [Credentials](#credentials) 12 | [Compatibility](#compatibility) 13 | [Usage](#usage) 14 | [Resources](#resources) 15 | [Version history](#version-history) 16 | 17 | ## Installation 18 | 19 | Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation. 20 | 21 | ## Operations 22 | 23 | _List the operations supported by your node._ 24 | 25 | ## Credentials 26 | 27 | _If users need to authenticate with the app/service, provide details here. You should include prerequisites (such as signing up with the service), available authentication methods, and how to set them up._ 28 | 29 | ## Compatibility 30 | 31 | _State the minimum n8n version, as well as which versions you test against. You can also include any known version incompatibility issues._ 32 | 33 | ## Usage 34 | 35 | _This is an optional section. Use it to help users with any difficult or confusing aspects of the node._ 36 | 37 | _By the time users are looking for community nodes, they probably already know n8n basics. But if you expect new users, you can link to the [Try it out](https://docs.n8n.io/try-it-out/) documentation to help them get started._ 38 | 39 | ## Resources 40 | 41 | * [n8n community nodes documentation](https://docs.n8n.io/integrations/community-nodes/) 42 | * _Link to app/service documentation._ 43 | 44 | ## Version history 45 | 46 | _This is another optional section. If your node has multiple versions, include a short description of available versions and what changed, as well as any compatibility impact._ 47 | 48 | 49 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Contributor Covenant Code of Conduct 2 | 3 | ## Our Pledge 4 | 5 | In the interest of fostering an open and welcoming environment, we as 6 | contributors and maintainers pledge to making participation in our project and 7 | our community a harassment-free experience for everyone, regardless of age, body 8 | size, disability, ethnicity, sex characteristics, gender identity and expression, 9 | level of experience, education, socio-economic status, nationality, personal 10 | appearance, race, religion, or sexual identity and orientation. 11 | 12 | ## Our Standards 13 | 14 | Examples of behavior that contributes to creating a positive environment 15 | include: 16 | 17 | * Using welcoming and inclusive language 18 | * Being respectful of differing viewpoints and experiences 19 | * Gracefully accepting constructive criticism 20 | * Focusing on what is best for the community 21 | * Showing empathy towards other community members 22 | 23 | Examples of unacceptable behavior by participants include: 24 | 25 | * The use of sexualized language or imagery and unwelcome sexual attention or 26 | advances 27 | * Trolling, insulting/derogatory comments, and personal or political attacks 28 | * Public or private harassment 29 | * Publishing others' private information, such as a physical or electronic 30 | address, without explicit permission 31 | * Other conduct which could reasonably be considered inappropriate in a 32 | professional setting 33 | 34 | ## Our Responsibilities 35 | 36 | Project maintainers are responsible for clarifying the standards of acceptable 37 | behavior and are expected to take appropriate and fair corrective action in 38 | response to any instances of unacceptable behavior. 39 | 40 | Project maintainers have the right and responsibility to remove, edit, or 41 | reject comments, commits, code, wiki edits, issues, and other contributions 42 | that are not aligned to this Code of Conduct, or to ban temporarily or 43 | permanently any contributor for other behaviors that they deem inappropriate, 44 | threatening, offensive, or harmful. 45 | 46 | ## Scope 47 | 48 | This Code of Conduct applies both within project spaces and in public spaces 49 | when an individual is representing the project or its community. Examples of 50 | representing a project or community include using an official project e-mail 51 | address, posting via an official social media account, or acting as an appointed 52 | representative at an online or offline event. Representation of a project may be 53 | further defined and clarified by project maintainers. 54 | 55 | ## Enforcement 56 | 57 | Instances of abusive, harassing, or otherwise unacceptable behavior may be 58 | reported by contacting the project team at jan@n8n.io. All 59 | complaints will be reviewed and investigated and will result in a response that 60 | is deemed necessary and appropriate to the circumstances. The project team is 61 | obligated to maintain confidentiality with regard to the reporter of an incident. 62 | Further details of specific enforcement policies may be posted separately. 63 | 64 | Project maintainers who do not follow or enforce the Code of Conduct in good 65 | faith may face temporary or permanent repercussions as determined by other 66 | members of the project's leadership. 67 | 68 | ## Attribution 69 | 70 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, 71 | available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html 72 | 73 | [homepage]: https://www.contributor-covenant.org 74 | 75 | For answers to common questions about this code of conduct, see 76 | https://www.contributor-covenant.org/faq 77 | -------------------------------------------------------------------------------- /nodes/HttpBin/HttpVerbDescription.ts: -------------------------------------------------------------------------------- 1 | import { INodeProperties } from 'n8n-workflow'; 2 | 3 | // When the resource `httpVerb` is selected, this `operation` parameter will be shown. 4 | export const httpVerbOperations: INodeProperties[] = [ 5 | { 6 | displayName: 'Operation', 7 | name: 'operation', 8 | type: 'options', 9 | noDataExpression: true, 10 | 11 | displayOptions: { 12 | show: { 13 | resource: ['httpVerb'], 14 | }, 15 | }, 16 | options: [ 17 | { 18 | name: 'GET', 19 | value: 'get', 20 | description: 'Perform a GET request', 21 | routing: { 22 | request: { 23 | method: 'GET', 24 | url: '/get', 25 | }, 26 | }, 27 | }, 28 | { 29 | name: 'DELETE', 30 | value: 'delete', 31 | description: 'Perform a DELETE request', 32 | routing: { 33 | request: { 34 | method: 'DELETE', 35 | url: '/delete', 36 | }, 37 | }, 38 | }, 39 | ], 40 | default: 'get', 41 | }, 42 | ]; 43 | 44 | // Here we define what to show when the `get` operation is selected. 45 | // We do that by adding `operation: ["get"]` to `displayOptions.show` 46 | const getOperation: INodeProperties[] = [ 47 | { 48 | displayName: 'Type of Data', 49 | name: 'typeofData', 50 | default: 'queryParameter', 51 | description: 'Select type of data to send [Query Parameters]', 52 | displayOptions: { 53 | show: { 54 | resource: ['httpVerb'], 55 | operation: ['get'], 56 | }, 57 | }, 58 | type: 'options', 59 | options: [ 60 | { 61 | name: 'Query', 62 | value: 'queryParameter', 63 | }, 64 | ], 65 | required: true, 66 | }, 67 | { 68 | displayName: 'Query Parameters', 69 | name: 'arguments', 70 | default: {}, 71 | description: "The request's query parameters", 72 | displayOptions: { 73 | show: { 74 | resource: ['httpVerb'], 75 | operation: ['get'], 76 | }, 77 | }, 78 | options: [ 79 | { 80 | name: 'keyvalue', 81 | displayName: 'Key:Value', 82 | values: [ 83 | { 84 | displayName: 'Key', 85 | name: 'key', 86 | type: 'string', 87 | default: '', 88 | required: true, 89 | description: 'Key of query parameter', 90 | }, 91 | { 92 | displayName: 'Value', 93 | name: 'value', 94 | type: 'string', 95 | default: '', 96 | routing: { 97 | send: { 98 | property: '={{$parent.key}}', 99 | type: 'query', 100 | }, 101 | }, 102 | required: true, 103 | description: 'Value of query parameter', 104 | }, 105 | ], 106 | }, 107 | ], 108 | type: 'fixedCollection', 109 | typeOptions: { 110 | multipleValues: true, 111 | }, 112 | }, 113 | ]; 114 | 115 | // Here we define what to show when the DELETE Operation is selected. 116 | // We do that by adding `operation: ["delete"]` to `displayOptions.show` 117 | const deleteOperation: INodeProperties[] = [ 118 | { 119 | displayName: 'Type of Data', 120 | name: 'typeofData', 121 | default: 'queryParameter', 122 | description: 'Select type of data to send [Query Parameter Arguments, JSON-Body]', 123 | displayOptions: { 124 | show: { 125 | resource: ['httpVerb'], 126 | operation: ['delete'], 127 | }, 128 | }, 129 | options: [ 130 | { 131 | name: 'Query', 132 | value: 'queryParameter', 133 | }, 134 | { 135 | name: 'JSON', 136 | value: 'jsonData', 137 | }, 138 | ], 139 | required: true, 140 | type: 'options', 141 | }, 142 | { 143 | displayName: 'Query Parameters', 144 | name: 'arguments', 145 | default: {}, 146 | description: "The request's query parameters", 147 | displayOptions: { 148 | show: { 149 | resource: ['httpVerb'], 150 | operation: ['delete'], 151 | typeofData: ['queryParameter'], 152 | }, 153 | }, 154 | options: [ 155 | { 156 | name: 'keyvalue', 157 | displayName: 'Key:Value', 158 | values: [ 159 | { 160 | displayName: 'Key', 161 | name: 'key', 162 | type: 'string', 163 | default: '', 164 | required: true, 165 | description: 'Key of query parameter', 166 | }, 167 | { 168 | displayName: 'Value', 169 | name: 'value', 170 | type: 'string', 171 | default: '', 172 | routing: { 173 | send: { 174 | property: '={{$parent.key}}', 175 | type: 'query', 176 | }, 177 | }, 178 | required: true, 179 | description: 'Value of query parameter', 180 | }, 181 | ], 182 | }, 183 | ], 184 | type: 'fixedCollection', 185 | typeOptions: { 186 | multipleValues: true, 187 | }, 188 | }, 189 | { 190 | displayName: 'JSON Object', 191 | name: 'arguments', 192 | default: {}, 193 | description: "The request's JSON properties", 194 | displayOptions: { 195 | show: { 196 | resource: ['httpVerb'], 197 | operation: ['delete'], 198 | typeofData: ['jsonData'], 199 | }, 200 | }, 201 | options: [ 202 | { 203 | name: 'keyvalue', 204 | displayName: 'Key:Value', 205 | values: [ 206 | { 207 | displayName: 'Key', 208 | name: 'key', 209 | type: 'string', 210 | default: '', 211 | required: true, 212 | description: 'Key of JSON property', 213 | }, 214 | { 215 | displayName: 'Value', 216 | name: 'value', 217 | type: 'string', 218 | default: '', 219 | routing: { 220 | send: { 221 | property: '={{$parent.key}}', 222 | type: 'body', 223 | }, 224 | }, 225 | required: true, 226 | description: 'Value of JSON property', 227 | }, 228 | ], 229 | }, 230 | ], 231 | type: 'fixedCollection', 232 | typeOptions: { 233 | multipleValues: true, 234 | }, 235 | }, 236 | ]; 237 | 238 | export const httpVerbFields: INodeProperties[] = [ 239 | /* -------------------------------------------------------------------------- */ 240 | /* httpVerb:get */ 241 | /* -------------------------------------------------------------------------- */ 242 | ...getOperation, 243 | 244 | /* -------------------------------------------------------------------------- */ 245 | /* httpVerb:delete */ 246 | /* -------------------------------------------------------------------------- */ 247 | ...deleteOperation, 248 | ]; 249 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ![Banner image](./assets/a2a-n8n.png) 2 | 3 | # n8n-nodes-agent2agent 4 | 5 | This is an n8n community node. It lets you use **Google's Agent2Agent (A2A) protocol** in your n8n workflows. 6 | 7 | **Google's Agent2Agent (A2A) protocol** is an open standard designed to enable communication, secure information exchange, and task coordination between different AI agents, regardless of their underlying framework or vendor. This node allows your n8n workflows to act as an A2A client, interacting seamlessly with any A2A-compatible agent. 8 | 9 | [n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/reference/license/) workflow automation platform. This node helps you integrate the power of distributed AI agents directly into your automation pipelines. 10 | 11 | [Installation](#installation) 12 | [Operations](#operations) 13 | [Credentials](#credentials) 14 | [Compatibility](#compatibility) 15 | [Usage](#usage) 16 | [Development Prerequisites](#development-prerequisites) 17 | [Resources](#resources) 18 | [Version history](#version-history) 19 | 20 | ## Installation 21 | 22 | Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation to install this community node. You will need to use the npm package name: `n8n-nodes-agent2agent`. 23 | 24 | ## Operations 25 | 26 | This node package provides the following operations to interact with A2A agents: 27 | 28 | - **`Discover Agent`**: Fetches and parses an agent's public "Agent Card" (typically found at `/.well-known/agent.json`). This retrieves essential metadata about the target agent, including its description, endpoint URL, communication capabilities (like streaming support), and required authentication methods. The output can be used to configure subsequent node operations dynamically. 29 | - **`Send Task`**: The primary operation to interact with an agent. 30 | - Initiates a _new task_ by sending an initial message. 31 | - Sends a _follow-up message_ to an existing task (if a Task ID is provided). 32 | - Supports sending various content types through `Message Parts`: 33 | - `TextPart`: For plain text messages or instructions. 34 | - `FilePart`: For sending binary data (from previous nodes or via URI) with a specified MIME type. 35 | - `DataPart`: For sending structured JSON data. 36 | - Includes an option (`Wait for Completion`) to configure whether the node waits for the task to reach a final state (`completed`, `failed`, `canceled`) or returns immediately after submission. When waiting, the node handles polling or streaming (if supported by the agent and implemented in the node) to get the final result. 37 | - Outputs the resulting A2A Task object, with `artifacts` parsed into accessible n8n data formats (text, JSON, binary). 38 | - **`Get Task`**: Retrieves the current status, message history, and generated artifacts for a specific Task ID that was previously submitted to an agent. Useful for checking the progress or outcome of long-running tasks initiated with `Send Task (Wait for Completion = false)`. 39 | - **`Cancel Task`**: Sends a request to the target A2A agent to cancel an ongoing task associated with a specific Task ID. 40 | 41 | ## Credentials 42 | 43 | Authentication is handled by the target A2A agent, not the A2A protocol itself. Therefore, the specific credentials required will depend entirely on the agent you are interacting with. 44 | 45 | 1. **Identify Requirements:** Use the `Discover Agent` operation or consult the target agent's documentation to determine the authentication schemes it supports (e.g., API Key in header, Bearer Token, OAuth2, JWT). This information is typically found in the `authentication` section of the Agent Card. 46 | 2. **Configure n8n Credential:** This node package provides generic credential types to handle common A2A authentication methods. Set up a new credential in n8n under Settings -> Credentials -> New: 47 | - Select the appropriate `Agent2Agent` credential type (e.g., `A2A API Key`, `A2A Bearer Token`, `A2A OAuth2`). _\[Note: These credential types must be defined within this node package.]_ 48 | - Fill in the required details (API Key value, Bearer Token, OAuth2 Client ID/Secret/Scopes, etc.) based on the target agent's requirements. 49 | - Give the credential a memorable name. 50 | 3. **Select in Node:** Choose the configured credential from the 'Credentials' dropdown in the node's parameter settings when performing operations like `Send Task`. 51 | 52 | Always ensure you are securely managing the credentials required by the specific agents you interact with. 53 | 54 | ## Compatibility 55 | 56 | - **Minimum n8n Version:** This node is developed and tested against n8n version `1.x.x`. It may work with older versions, but compatibility is not guaranteed. Please ensure your n8n instance is reasonably up-to-date. 57 | - **Tested Versions:** Regularly tested against the latest stable n8n release. 58 | - **Known Issues:** Currently, no known version incompatibility issues. Please report any issues encountered on the GitHub repository. 59 | 60 | ## Usage 61 | 62 | This node allows you to integrate external AI agents into your n8n workflows using the standardized A2A protocol. 63 | 64 | **Core Concept:** Your n8n workflow acts as an **A2A Client**. You use the node operations to send requests (tasks) to an external **A2A Agent Server** and process its responses (artifacts). 65 | 66 | **Example High-Level Workflow:** 67 | 68 | 1. **Trigger:** Start your workflow (e.g., Webhook, Schedule). 69 | 2. **Prepare Data:** Use standard n8n nodes to gather and format the information you need to send to the agent. 70 | 3. **(`Optional`) Discover Agent:** Use the `Discover Agent` operation with the agent's base URL to check its capabilities and authentication needs. 71 | 4. **Send Task:** Use the `Send Task` operation: 72 | - Provide the Agent URL (discovered or known). 73 | - Select your configured Credentials. 74 | - Define the `Message Parts` containing your request (text, data from previous steps, files). 75 | - Choose whether to `Wait for Completion`. If unsure, or for long tasks, set it to `false` initially. 76 | 5. **(`If Wait=false`) Poll/Check Status:** If you didn't wait, you might use `Get Task` in a loop (with a Wait node) or a separate workflow to check the task status until it's final, using the `Task ID` returned by `Send Task`. 77 | 6. **Process Results:** Once the task is complete (either via `Send Task (Wait=true)` or `Get Task`), access the agent's response from the node's output. The `artifacts` will be parsed into usable data (JSON, text, binary) for use in subsequent n8n nodes (e.g., update a database, send a notification, call another API). 78 | 79 | **Important Considerations:** 80 | 81 | - **Agent Capabilities:** Not all A2A agents are equal. Always check the specific agent's documentation or Agent Card (`Discover Agent` operation) to understand: 82 | - What `skills` it actually offers. 83 | - What input `parts` (text, file, data) it expects for a given skill. 84 | - What `artifacts` it produces. 85 | - Whether it supports advanced features like `streaming`. 86 | - **Error Handling:** Implement error handling in your workflow. The A2A node will output error details if the agent returns an error response or if the request fails for other reasons. 87 | 88 | Need help with n8n basics? Check out the [Try it out](https://docs.n8n.io/try-it-out/) documentation. 89 | 90 | ## Development Prerequisites 91 | 92 | If you wish to contribute to the development of this node or run it locally from source, you need the following installed on your development machine: 93 | 94 | - [git](https://git-scm.com/downloads) 95 | - Node.js and pnpm. Minimum version Node 18. You can find instructions on how to install both using nvm (Node Version Manager) for Linux, Mac, and WSL [here](https://github.com/nvm-sh/nvm). For Windows users, refer to Microsoft's guide to [Install NodeJS on Windows](https://docs.microsoft.com/en-us/windows/dev-environment/javascript/nodejs-on-windows). 96 | - Install n8n globally with: 97 | ```bash 98 | pnpm install n8n -g 99 | ``` 100 | - Recommended: follow n8n's guide to [set up your development environment](https://docs.n8n.io/integrations/creating-nodes/build/node-development-environment/). 101 | 102 | After cloning the repository, run `pnpm i` to install local dependencies. Use `pnpm lint` and `pnpm build` while developing. Refer to n8n's [node creation documentation](https://docs.n8n.io/integrations/creating-nodes/) for more details. 103 | 104 | ## Resources 105 | 106 | - **Official A2A Protocol Resources:** 107 | - [Google A2A GitHub Repository (Specification, Samples)](https://github.com/google/A2A) 108 | - [Google A2A Documentation Site](https://google.github.io/A2A/) 109 | - [Google Developers Blog Post (Announcement & Overview)](https://developers.googleblog.com/en/a2a-a-new-era-of-agent-interoperability/) 110 | - **n8n Documentation:** 111 | - [n8n Community Nodes Documentation](https://docs.n8n.io/integrations/community-nodes/) 112 | - [n8n Node Creation Documentation](https://docs.n8n.io/integrations/creating-nodes/) 113 | 114 | ## Version history 115 | 116 | - **`0.1.0`:** 117 | - Initial release. 118 | - Includes `Discover Agent`, `Send Task`, `Get Task`, and `Cancel Task` operations. 119 | - Supports basic credential types (e.g., API Key/Bearer Token via Header - _actual types depend on implementation_). 120 | - `Send Task` includes `Wait for Completion` option (using polling). Basic parsing of text, data, and file artifacts. 121 | -------------------------------------------------------------------------------- /nodes/A2ANode/A2ANode.node.ts: -------------------------------------------------------------------------------- 1 | import { 2 | IExecuteFunctions, 3 | INodeExecutionData, 4 | INodeType, 5 | INodeTypeDescription, 6 | NodeOperationError, 7 | JsonObject, 8 | NodeParameterValue, 9 | // Assuming credential type is defined elsewhere, e.g. 10 | // ICredentialDataDecryptedObject, 11 | } from 'n8n-workflow'; 12 | import { NodeConnectionType } from 'n8n-workflow'; 13 | 14 | // Placeholder interface for your actual credential data structure 15 | interface IA2ACredential { 16 | // Example: Define fields based on your credential type(s) 17 | apiKey?: string; 18 | bearerToken?: string; 19 | // Add fields for OAuth2 etc. if implementing 20 | } 21 | 22 | export class Agent2Agent implements INodeType { 23 | description: INodeTypeDescription = { 24 | displayName: 'Agent2Agent', 25 | name: 'agent2agent', // Internal node name (lowercase) 26 | icon: 'file:Agent2Agent.svg', // Reference an SVG icon file 27 | group: ['ai'], // Categorize under AI group 28 | version: 1, 29 | subtitle: '={{$parameter["operation"]}}', // Display selected operation dynamically 30 | description: 31 | "Interacts with AI agents using Google's Agent2Agent (A2A) protocol. Send tasks, manage interactions, and process results.", 32 | defaults: { 33 | name: 'Agent2Agent', 34 | }, 35 | inputs: ['main'], // Standard input 36 | outputs: ['main'], // Standard output 37 | // Define required credentials - REPLACE 'a2aApi' with your actual credential name 38 | credentials: [ 39 | { 40 | name: 'a2aApi', // <<< MUST MATCH your credential definition file (e.g., A2ACredentials.credentials.ts) 41 | required: true, 42 | // You might add displayOptions here if needed based on credential type complexity 43 | }, 44 | ], 45 | properties: [ 46 | // Operation Selector 47 | { 48 | displayName: 'Operation', 49 | name: 'operation', 50 | type: 'options', 51 | noDataExpression: true, // Prevents expression evaluation for this field 52 | options: [ 53 | { 54 | name: 'Discover Agent', 55 | value: 'discoverAgent', 56 | action: 'Discover agent capabilities via agent card', 57 | description: "Fetch the agent's Agent Card metadata", 58 | }, 59 | { 60 | name: 'Send Task', 61 | value: 'sendTask', 62 | action: 'Send a task or message to an agent', 63 | description: 'Initiate or continue a task with an agent', 64 | }, 65 | { 66 | name: 'Get Task', 67 | value: 'getTask', 68 | action: 'Get status and results of a task', 69 | description: 'Retrieve details for a previously submitted task', 70 | }, 71 | { 72 | name: 'Cancel Task', 73 | value: 'cancelTask', 74 | action: 'Cancel an ongoing task', 75 | description: 'Request cancellation of an active task', 76 | }, 77 | ], 78 | default: 'sendTask', 79 | }, 80 | 81 | // --- Common Properties --- 82 | { 83 | displayName: 'Agent Base URL', 84 | name: 'agentUrl', 85 | type: 'string', 86 | required: true, 87 | default: '', 88 | placeholder: 'https://example-agent.com', 89 | description: 'The base URL of the target A2A agent server', 90 | // Display condition could be added if needed, but likely always required 91 | }, 92 | 93 | // --- Discover Agent Properties --- 94 | // (No specific properties needed for basic discovery) 95 | 96 | // --- Send Task Properties --- 97 | { 98 | displayName: 'Task ID', 99 | name: 'taskId', 100 | type: 'string', 101 | default: '', 102 | displayOptions: { 103 | show: { 104 | operation: ['sendTask'], 105 | }, 106 | }, 107 | placeholder: '(Optional) Existing Task ID to continue interaction', 108 | description: 109 | 'Optional. Provide an existing Task ID to send a follow-up message. If empty, a new Task ID will be generated.', 110 | }, 111 | { 112 | displayName: 'Message Parts', 113 | name: 'messageParts', 114 | type: 'fixedCollection', 115 | displayOptions: { 116 | show: { 117 | operation: ['sendTask'], 118 | }, 119 | }, 120 | placeholder: 'Add Message Part', 121 | description: 'Define the content parts of the message to send', 122 | typeOptions: { 123 | multipleValues: true, // Allow multiple parts 124 | }, 125 | default: {}, // Default needs to be empty object 126 | options: [ 127 | { 128 | displayName: 'Part Details', 129 | name: 'part', 130 | values: [ 131 | { 132 | displayName: 'Part Type', 133 | name: 'partType', 134 | type: 'options', 135 | options: [ 136 | { name: 'Text', value: 'text' }, 137 | { name: 'Data (JSON)', value: 'data' }, 138 | { name: 'File (Binary/URI)', value: 'file' }, 139 | ], 140 | default: 'text', 141 | description: 'The type of content for this part', 142 | }, 143 | { 144 | displayName: 'Text Content', 145 | name: 'textContent', 146 | type: 'string', 147 | displayOptions: { show: { partType: ['text'] } }, 148 | default: '', 149 | placeholder: 'Enter text or use an expression {{ $json... }}', 150 | description: 'The text content for this part', 151 | }, 152 | { 153 | displayName: 'JSON Data Content', 154 | name: 'jsonDataContent', 155 | type: 'json', 156 | displayOptions: { show: { partType: ['data'] } }, 157 | default: '', 158 | placeholder: 'Enter JSON or use an expression {{ $json... }}', 159 | description: 'The JSON data content for this part', 160 | }, 161 | { 162 | displayName: 'File Source', 163 | name: 'fileSource', 164 | type: 'options', 165 | displayOptions: { show: { partType: ['file'] } }, 166 | options: [ 167 | { name: 'Input Binary Data', value: 'binary' }, 168 | { name: 'Public URI', value: 'uri' }, 169 | // { name: 'Inline Base64 (Advanced)', value: 'base64' }, // Option? 170 | ], 171 | default: 'binary', 172 | description: 'Where to get the file content from', 173 | }, 174 | { 175 | displayName: 'Input Binary Property', 176 | name: 'fileBinaryProperty', 177 | type: 'string', 178 | displayOptions: { 179 | show: { 180 | partType: ['file'], 181 | fileSource: ['binary'], 182 | }, 183 | }, 184 | default: 'data', // Default binary property name in n8n 185 | placeholder: 'data', 186 | description: 187 | 'Name of the binary property containing the file data from the input item', 188 | }, 189 | { 190 | displayName: 'File URI', 191 | name: 'fileUri', 192 | type: 'string', 193 | displayOptions: { 194 | show: { 195 | partType: ['file'], 196 | fileSource: ['uri'], 197 | }, 198 | }, 199 | default: '', 200 | placeholder: 'https://example.com/file.pdf', 201 | description: 'Publicly accessible URL of the file', 202 | }, 203 | { 204 | displayName: 'MIME Type', 205 | name: 'fileMimeType', 206 | type: 'string', 207 | displayOptions: { show: { partType: ['file'] } }, 208 | default: 'application/octet-stream', 209 | placeholder: 'image/png', 210 | description: 'The MIME type of the file (e.g., application/pdf, image/jpeg)', 211 | }, 212 | ], 213 | }, 214 | ], 215 | }, 216 | { 217 | displayName: 'Wait for Completion', 218 | name: 'waitForCompletion', 219 | type: 'boolean', 220 | displayOptions: { 221 | show: { 222 | operation: ['sendTask'], 223 | }, 224 | }, 225 | default: false, 226 | description: 227 | 'Whether the node should wait until the task reaches a final state (completed, failed, canceled)', 228 | }, 229 | { 230 | displayName: 'Timeout (Seconds)', 231 | name: 'timeoutSeconds', 232 | type: 'number', 233 | displayOptions: { 234 | show: { 235 | operation: ['sendTask'], 236 | waitForCompletion: [true], 237 | }, 238 | }, 239 | default: 60, 240 | description: 'Maximum time to wait for task completion before timing out', 241 | }, 242 | { 243 | displayName: 'Polling Interval (Seconds)', 244 | name: 'pollingIntervalSeconds', 245 | type: 'number', 246 | displayOptions: { 247 | show: { 248 | operation: ['sendTask'], 249 | waitForCompletion: [true], 250 | }, 251 | }, 252 | default: 5, 253 | description: 'How often to check the task status when waiting (minimum 1 second)', 254 | }, 255 | { 256 | displayName: 'Metadata (JSON)', 257 | name: 'metadata', 258 | type: 'json', 259 | displayOptions: { 260 | show: { 261 | operation: ['sendTask'], 262 | }, 263 | }, 264 | default: '{}', 265 | placeholder: '{"key": "value"}', 266 | description: 'Optional JSON metadata to send with the task request', 267 | }, 268 | 269 | // --- Get Task Properties --- 270 | { 271 | displayName: 'Task ID', 272 | name: 'taskId', 273 | type: 'string', 274 | required: true, 275 | default: '', 276 | displayOptions: { 277 | show: { 278 | operation: ['getTask', 'cancelTask'], // Also used for Cancel Task 279 | }, 280 | }, 281 | placeholder: 'Enter the Task ID to retrieve or cancel', 282 | description: 'The unique ID of the task to get status for or cancel', 283 | }, 284 | // Add historyLength param for Get Task? (Optional A2A feature) 285 | // { 286 | // displayName: 'History Length', 287 | // name: 'historyLength', 288 | // type: 'number', 289 | // displayOptions: { 290 | // show: { 291 | // operation: ['getTask'], 292 | // }, 293 | // }, 294 | // default: 10, 295 | // description: 'Maximum number of history messages to retrieve', 296 | // }, 297 | 298 | // --- Cancel Task Properties --- 299 | // (Uses taskId defined above) 300 | ], 301 | }; 302 | 303 | // --------------- 304 | // EXECUTE 305 | // --------------- 306 | async execute(this: IExecuteFunctions): Promise { 307 | const items = this.getInputData(); 308 | const returnData: INodeExecutionData[] = []; 309 | const operation = this.getNodeParameter('operation', 0) as string; // Assume operation is same for all items for simplicity now 310 | 311 | // Get credentials - REPLACE 'a2aApi' with your actual credential name 312 | const credentials = (await this.getCredentials('a2aApi')) as IA2ACredential; // <<< MUST MATCH CREDENTIAL NAME 313 | 314 | for (let itemIndex = 0; itemIndex < items.length; itemIndex++) { 315 | try { 316 | const agentUrl = this.getNodeParameter('agentUrl', itemIndex) as string; 317 | let taskId = this.getNodeParameter('taskId', itemIndex, '') as string | undefined; 318 | if (taskId === '') taskId = undefined; // Treat empty string as undefined 319 | 320 | // ------------- Discover Agent ------------- 321 | if (operation === 'discoverAgent') { 322 | const discoveryUrl = new URL('/.well-known/agent.json', agentUrl).toString(); 323 | const options = { 324 | method: 'GET', 325 | uri: discoveryUrl, 326 | json: true, // Expect JSON response 327 | headers: { 328 | Accept: 'application/json', 329 | }, 330 | }; 331 | const response = await this.helpers.httpRequest(options); 332 | returnData.push({ json: response as JsonObject, pairedItem: itemIndex }); 333 | } 334 | 335 | // ------------- Send Task ------------- 336 | else if (operation === 'sendTask') { 337 | const messagePartsRaw = this.getNodeParameter('messageParts', itemIndex) as { 338 | part: any; 339 | }; // Type definition needed 340 | const waitForCompletion = this.getNodeParameter( 341 | 'waitForCompletion', 342 | itemIndex, 343 | ) as boolean; 344 | const metadataParam = this.getNodeParameter('metadata', itemIndex, '{}') as string; 345 | let metadata = {}; 346 | try { 347 | metadata = JSON.parse(metadataParam); 348 | } catch (e) { 349 | throw new NodeOperationError( 350 | this.getNode(), 351 | `Invalid JSON in Metadata parameter: ${e.message}`, 352 | { itemIndex }, 353 | ); 354 | } 355 | 356 | // Generate Task ID if not provided 357 | const effectiveTaskId = taskId ?? crypto.randomUUID(); 358 | 359 | // Construct A2A message parts 360 | const parts: any[] = []; // Define proper type later 361 | if (messagePartsRaw.part && Array.isArray(messagePartsRaw.part)) { 362 | for (const p of messagePartsRaw.part) { 363 | const partType = p.partType; 364 | if (partType === 'text') { 365 | parts.push({ type: 'text', text: p.textContent }); 366 | } else if (partType === 'data') { 367 | try { 368 | const data = JSON.parse(p.jsonDataContent); 369 | parts.push({ type: 'data', data: data }); 370 | } catch (e) { 371 | throw new NodeOperationError( 372 | this.getNode(), 373 | `Invalid JSON in Data Part Content: ${e.message}`, 374 | { itemIndex }, 375 | ); 376 | } 377 | } else if (partType === 'file') { 378 | const fileSource = p.fileSource; 379 | const mimeType = p.fileMimeType || 'application/octet-stream'; 380 | if (fileSource === 'uri') { 381 | parts.push({ type: 'file', file: { uri: p.fileUri, mimeType: mimeType } }); 382 | } else if (fileSource === 'binary') { 383 | const binaryPropertyName = p.fileBinaryProperty || 'data'; 384 | const binaryData = await this.helpers.getBinaryData( 385 | itemIndex, 386 | binaryPropertyName, 387 | ); 388 | parts.push({ 389 | type: 'file', 390 | file: { bytes: binaryData.toString('base64'), mimeType: mimeType }, 391 | }); // Send as Base64 inline 392 | } 393 | // else if (fileSource === 'base64') { ... } // Handle direct base64 input if needed 394 | } 395 | } 396 | } else { 397 | throw new NodeOperationError( 398 | this.getNode(), 399 | 'Message Parts parameter is missing or invalid', 400 | { 401 | itemIndex, 402 | }, 403 | ); 404 | } 405 | 406 | // Construct JSON-RPC request body for tasks/send 407 | const requestBody = this.buildJsonRpcRequest('tasks/send', { 408 | id: effectiveTaskId, 409 | message: { role: 'user', parts: parts }, 410 | metadata: metadata, 411 | }); 412 | 413 | // Make the initial HTTP request 414 | let taskResult = await this.makeA2ARequest(agentUrl, requestBody, credentials, itemIndex); 415 | 416 | // Handle waiting for completion 417 | if (waitForCompletion && taskResult?.status?.state) { 418 | const timeoutSeconds = this.getNodeParameter('timeoutSeconds', itemIndex, 60) as number; 419 | let pollingIntervalSeconds = this.getNodeParameter( 420 | 'pollingIntervalSeconds', 421 | itemIndex, 422 | 5, 423 | ) as number; 424 | if (pollingIntervalSeconds < 1) pollingIntervalSeconds = 1; // Minimum interval 425 | 426 | const startTime = Date.now(); 427 | const timeoutMs = timeoutSeconds * 1000; 428 | 429 | while ( 430 | ['submitted', 'working', 'input-required'].includes(taskResult.status.state) && 431 | Date.now() - startTime < timeoutMs 432 | ) { 433 | // Wait before polling again 434 | await new Promise((resolve) => setTimeout(resolve, pollingIntervalSeconds * 1000)); 435 | 436 | // Check timeout before making next request 437 | if (Date.now() - startTime >= timeoutMs) { 438 | throw new NodeOperationError( 439 | this.getNode(), 440 | `Task timed out after ${timeoutSeconds} seconds waiting for completion. Last state: ${taskResult.status.state}`, 441 | { itemIndex }, 442 | ); 443 | } 444 | 445 | // Poll using tasks/get 446 | const getTaskBody = this.buildJsonRpcRequest('tasks/get', { 447 | id: taskResult.id, // Use the ID from the *task* response 448 | // historyLength: 0 // Don't need history during polling maybe? 449 | }); 450 | taskResult = await this.makeA2ARequest(agentUrl, getTaskBody, credentials, itemIndex); 451 | 452 | // Check if status exists after polling 453 | if (!taskResult?.status?.state) { 454 | throw new NodeOperationError( 455 | this.getNode(), 456 | 'Polling Error: Received invalid task status during wait.', 457 | { itemIndex }, 458 | ); 459 | } 460 | } // end while loop 461 | 462 | // Final check after loop (in case it completed exactly on last poll) 463 | if (['submitted', 'working', 'input-required'].includes(taskResult.status.state)) { 464 | throw new NodeOperationError( 465 | this.getNode(), 466 | `Task timed out after ${timeoutSeconds} seconds. Final polled state: ${taskResult.status.state}`, 467 | { itemIndex }, 468 | ); 469 | } 470 | } // end if waitForCompletion 471 | 472 | // Prepare output data (parse artifacts) 473 | const outputItem = await this.prepareOutputData(taskResult, itemIndex); 474 | returnData.push(outputItem); 475 | } 476 | 477 | // ------------- Get Task ------------- 478 | else if (operation === 'getTask') { 479 | if (!taskId) 480 | throw new NodeOperationError( 481 | this.getNode(), 482 | 'Task ID parameter is required for Get Task', 483 | { 484 | itemIndex, 485 | }, 486 | ); 487 | const requestBody = this.buildJsonRpcRequest('tasks/get', { id: taskId }); 488 | const taskResult = await this.makeA2ARequest( 489 | agentUrl, 490 | requestBody, 491 | credentials, 492 | itemIndex, 493 | ); 494 | const outputItem = await this.prepareOutputData(taskResult, itemIndex); 495 | returnData.push(outputItem); 496 | } 497 | 498 | // ------------- Cancel Task ------------- 499 | else if (operation === 'cancelTask') { 500 | if (!taskId) 501 | throw new NodeOperationError( 502 | this.getNode(), 503 | 'Task ID parameter is required for Cancel Task', 504 | { itemIndex }, 505 | ); 506 | const requestBody = this.buildJsonRpcRequest('tasks/cancel', { id: taskId }); 507 | const taskResult = await this.makeA2ARequest( 508 | agentUrl, 509 | requestBody, 510 | credentials, 511 | itemIndex, 512 | ); 513 | const outputItem = await this.prepareOutputData(taskResult, itemIndex); // Return the cancellation confirmation task state 514 | returnData.push(outputItem); 515 | } 516 | 517 | // ------------- Unknown Operation ------------- 518 | else { 519 | throw new NodeOperationError(this.getNode(), `Unknown operation: ${operation}`, { 520 | itemIndex, 521 | }); 522 | } 523 | } catch (error) { 524 | if (this.continueOnFail()) { 525 | returnData.push({ 526 | json: items[itemIndex].json, // Keep original input JSON 527 | error: 528 | error instanceof NodeOperationError 529 | ? error 530 | : new NodeOperationError(this.getNode(), error, { itemIndex }), // Ensure it's a NodeOperationError 531 | pairedItem: itemIndex, 532 | }); 533 | } else { 534 | // Ensure proper error context even if not NodeOperationError initially 535 | if (error instanceof NodeOperationError) { 536 | throw error; // Re-throw if already correctly formatted 537 | } 538 | throw new NodeOperationError(this.getNode(), error, { itemIndex }); 539 | } 540 | } 541 | } // end for loop 542 | 543 | return [returnData]; 544 | } 545 | 546 | // --- Helper Functions --- 547 | 548 | /** 549 | * Builds a standard JSON-RPC 2.0 request object. 550 | */ 551 | private buildJsonRpcRequest(method: string, params: JsonObject): JsonObject { 552 | return { 553 | jsonrpc: '2.0', 554 | id: crypto.randomUUID(), // Generate unique request ID 555 | method: method, 556 | params: params, 557 | }; 558 | } 559 | 560 | /** 561 | * Makes the HTTP request to the A2A agent, handling basic auth and response checking. 562 | * Needs refinement for different auth types and more robust error handling. 563 | */ 564 | public async makeA2ARequest( 565 | agentUrl: string, 566 | requestBody: JsonObject, 567 | credentials: IA2ACredential, 568 | itemIndex: number, 569 | ): Promise { 570 | const headers: Record = { 571 | 'Content-Type': 'application/json', 572 | Accept: 'application/json', 573 | }; 574 | 575 | // --- Basic Authentication Handling (Example) --- 576 | // This needs to be expanded based on your actual credential types 577 | if (credentials.apiKey) { 578 | headers['X-API-Key'] = credentials.apiKey; // Example header name 579 | } else if (credentials.bearerToken) { 580 | headers['Authorization'] = `Bearer ${credentials.bearerToken}`; 581 | } 582 | // Add logic for OAuth2 token fetching/refreshing if implemented 583 | // --- End Authentication Handling --- 584 | 585 | const options = { 586 | method: 'POST', 587 | uri: agentUrl, // Send requests to the base URL 588 | body: requestBody, 589 | headers: headers, 590 | json: true, // Send as JSON, expect JSON response 591 | // Consider adding timeout, rejectUnauthorized etc. based on node settings/needs 592 | // returnFullResponse: true // Might be needed for detailed error handling 593 | }; 594 | 595 | try { 596 | const response = (await this.helpers.httpRequest(options)) as JsonObject; 597 | 598 | // Check for JSON-RPC level error 599 | if (response.error) { 600 | const errorDetails = response.error as { code?: number; message?: string; data?: any }; 601 | throw new NodeOperationError( 602 | this.getNode(), 603 | `A2A Agent Error: ${errorDetails.message || 'Unknown error'} (Code: ${errorDetails.code ?? 'N/A'})`, 604 | { itemIndex, errorData: errorDetails.data }, 605 | ); 606 | } 607 | 608 | // Check if result exists (should for success) 609 | if (!response.result) { 610 | throw new NodeOperationError( 611 | this.getNode(), 612 | 'A2A Response Error: Missing "result" field in successful response.', 613 | { itemIndex, responseData: response }, 614 | ); 615 | } 616 | 617 | return response.result as JsonObject; // Return the actual result payload (often the Task object) 618 | } catch (error) { 619 | // Catch errors from httpRequest or thrown JSON-RPC errors 620 | if (error instanceof NodeOperationError) { 621 | throw error; // Re-throw if already formatted 622 | } 623 | // Attempt to enrich HTTP errors 624 | let message = error.message; 625 | if (error.response?.data) { 626 | message += ` - Response: ${JSON.stringify(error.response.data)}`; 627 | } else if (error.statusCode) { 628 | message += ` - Status Code: ${error.statusCode}`; 629 | } 630 | 631 | throw new NodeOperationError(this.getNode(), message, { itemIndex }); 632 | } 633 | } 634 | 635 | /** 636 | * Parses the final Task object's artifacts into output JSON/binary data. 637 | */ 638 | private async prepareOutputData(taskResult: JsonObject, itemIndex: number): Promise { 639 | const outputJson: JsonObject = { ...taskResult }; // Start with the full task result 640 | const binaryData: Record = {}; 641 | const artifacts = taskResult.artifacts as any[]; // Type needed 642 | 643 | if (Array.isArray(artifacts)) { 644 | outputJson.parsedArtifacts = []; // Add a specific field for easier access to parsed data 645 | 646 | for (let i = 0; i < artifacts.length; i++) { 647 | const artifact = artifacts[i]; 648 | const parsedParts: Record = {}; // Store parsed parts for this artifact 649 | 650 | if (Array.isArray(artifact.parts)) { 651 | for (let j = 0; j < artifact.parts.length; j++) { 652 | const part = artifact.parts[j]; 653 | const partKey = `part_${j}`; // Generic key 654 | 655 | if (part.type === 'text') { 656 | parsedParts[`${partKey}_text`] = part.text; 657 | } else if (part.type === 'data') { 658 | parsedParts[`${partKey}_data`] = part.data; // Already JSON 659 | } else if (part.type === 'file' && part.file) { 660 | if (part.file.bytes) { 661 | // Handle inline base64 binary data 662 | const buffer = Buffer.from(part.file.bytes, 'base64'); 663 | const binaryKey = `artifact_${i}_part_${j}_${part.file.mimeType?.replace('/', '_') || 'file'}`; 664 | binaryData[binaryKey] = buffer; 665 | parsedParts[`${partKey}_binaryProperty`] = binaryKey; // Reference the binary data key 666 | parsedParts[`${partKey}_mimeType`] = part.file.mimeType; 667 | } else if (part.file.uri) { 668 | parsedParts[`${partKey}_uri`] = part.file.uri; // Pass URI through 669 | parsedParts[`${partKey}_mimeType`] = part.file.mimeType; 670 | // Optionally: Add a feature to automatically download URI content? (More complex) 671 | } 672 | } 673 | } 674 | } 675 | (outputJson.parsedArtifacts as any[]).push({ 676 | name: artifact.name, 677 | description: artifact.description, 678 | ...parsedParts, 679 | }); 680 | } 681 | } 682 | 683 | // Return structure with JSON and potentially binary data 684 | if (Object.keys(binaryData).length > 0) { 685 | return { 686 | json: outputJson, 687 | binary: binaryData, 688 | pairedItem: itemIndex, 689 | }; 690 | } else { 691 | return { 692 | json: outputJson, 693 | pairedItem: itemIndex, 694 | }; 695 | } 696 | } 697 | } 698 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | devDependencies: 11 | '@typescript-eslint/parser': 12 | specifier: ^7.15.0 13 | version: 7.15.0(eslint@8.57.0)(typescript@5.5.3) 14 | eslint: 15 | specifier: ^8.56.0 16 | version: 8.57.0 17 | eslint-plugin-n8n-nodes-base: 18 | specifier: ^1.16.1 19 | version: 1.16.1(eslint@8.57.0)(typescript@5.5.3) 20 | gulp: 21 | specifier: ^4.0.2 22 | version: 4.0.2 23 | n8n-workflow: 24 | specifier: '*' 25 | version: 1.48.0 26 | prettier: 27 | specifier: ^3.3.2 28 | version: 3.3.2 29 | typescript: 30 | specifier: ^5.5.3 31 | version: 5.5.3 32 | 33 | packages: 34 | 35 | '@eslint-community/eslint-utils@4.4.0': 36 | resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} 37 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 38 | peerDependencies: 39 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 40 | 41 | '@eslint-community/regexpp@4.11.0': 42 | resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} 43 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 44 | 45 | '@eslint/eslintrc@2.1.4': 46 | resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} 47 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 48 | 49 | '@eslint/js@8.57.0': 50 | resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} 51 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 52 | 53 | '@humanwhocodes/config-array@0.11.14': 54 | resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} 55 | engines: {node: '>=10.10.0'} 56 | deprecated: Use @eslint/config-array instead 57 | 58 | '@humanwhocodes/module-importer@1.0.1': 59 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 60 | engines: {node: '>=12.22'} 61 | 62 | '@humanwhocodes/object-schema@2.0.3': 63 | resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} 64 | deprecated: Use @eslint/object-schema instead 65 | 66 | '@n8n/tournament@1.0.2': 67 | resolution: {integrity: sha512-fTpi7F8ra5flGSVfRzohPyG7czAAKCZPlLjdKdwbLJivLoI/Ekhgodov1jfVSCVFVbwQ06gRQRxLEDzl2jl8ig==} 68 | engines: {node: '>=18.10', pnpm: '>=8.6'} 69 | 70 | '@n8n_io/riot-tmpl@4.0.0': 71 | resolution: {integrity: sha512-/xw8HQgYQlBCrt3IKpNSSB1CgpP7XArw1QTRjP+KEw+OHT8XGvHxXrW9VGdUu9RwDnzm/LFu+dNLeDmwJMeOwQ==} 72 | 73 | '@n8n_io/riot-tmpl@4.0.1': 74 | resolution: {integrity: sha512-/zdRbEfTFjsm1NqnpPQHgZTkTdbp5v3VUxGeMA9098sps8jRCTraQkc3AQstJgHUm7ylBXJcIVhnVeLUMWAfwQ==} 75 | 76 | '@nodelib/fs.scandir@2.1.5': 77 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 78 | engines: {node: '>= 8'} 79 | 80 | '@nodelib/fs.stat@2.0.5': 81 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 82 | engines: {node: '>= 8'} 83 | 84 | '@nodelib/fs.walk@1.2.8': 85 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 86 | engines: {node: '>= 8'} 87 | 88 | '@types/json-schema@7.0.15': 89 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 90 | 91 | '@types/semver@7.5.8': 92 | resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} 93 | 94 | '@typescript-eslint/parser@7.15.0': 95 | resolution: {integrity: sha512-k9fYuQNnypLFcqORNClRykkGOMOj+pV6V91R4GO/l1FDGwpqmSwoOQrOHo3cGaH63e+D3ZiCAOsuS/D2c99j/A==} 96 | engines: {node: ^18.18.0 || >=20.0.0} 97 | peerDependencies: 98 | eslint: ^8.56.0 99 | typescript: '*' 100 | peerDependenciesMeta: 101 | typescript: 102 | optional: true 103 | 104 | '@typescript-eslint/scope-manager@6.21.0': 105 | resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} 106 | engines: {node: ^16.0.0 || >=18.0.0} 107 | 108 | '@typescript-eslint/scope-manager@7.15.0': 109 | resolution: {integrity: sha512-Q/1yrF/XbxOTvttNVPihxh1b9fxamjEoz2Os/Pe38OHwxC24CyCqXxGTOdpb4lt6HYtqw9HetA/Rf6gDGaMPlw==} 110 | engines: {node: ^18.18.0 || >=20.0.0} 111 | 112 | '@typescript-eslint/types@6.21.0': 113 | resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} 114 | engines: {node: ^16.0.0 || >=18.0.0} 115 | 116 | '@typescript-eslint/types@7.15.0': 117 | resolution: {integrity: sha512-aV1+B1+ySXbQH0pLK0rx66I3IkiZNidYobyfn0WFsdGhSXw+P3YOqeTq5GED458SfB24tg+ux3S+9g118hjlTw==} 118 | engines: {node: ^18.18.0 || >=20.0.0} 119 | 120 | '@typescript-eslint/typescript-estree@6.21.0': 121 | resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} 122 | engines: {node: ^16.0.0 || >=18.0.0} 123 | peerDependencies: 124 | typescript: '*' 125 | peerDependenciesMeta: 126 | typescript: 127 | optional: true 128 | 129 | '@typescript-eslint/typescript-estree@7.15.0': 130 | resolution: {integrity: sha512-gjyB/rHAopL/XxfmYThQbXbzRMGhZzGw6KpcMbfe8Q3nNQKStpxnUKeXb0KiN/fFDR42Z43szs6rY7eHk0zdGQ==} 131 | engines: {node: ^18.18.0 || >=20.0.0} 132 | peerDependencies: 133 | typescript: '*' 134 | peerDependenciesMeta: 135 | typescript: 136 | optional: true 137 | 138 | '@typescript-eslint/utils@6.21.0': 139 | resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} 140 | engines: {node: ^16.0.0 || >=18.0.0} 141 | peerDependencies: 142 | eslint: ^7.0.0 || ^8.0.0 143 | 144 | '@typescript-eslint/visitor-keys@6.21.0': 145 | resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} 146 | engines: {node: ^16.0.0 || >=18.0.0} 147 | 148 | '@typescript-eslint/visitor-keys@7.15.0': 149 | resolution: {integrity: sha512-Hqgy/ETgpt2L5xueA/zHHIl4fJI2O4XUE9l4+OIfbJIRSnTJb/QscncdqqZzofQegIJugRIF57OJea1khw2SDw==} 150 | engines: {node: ^18.18.0 || >=20.0.0} 151 | 152 | '@ungap/structured-clone@1.2.0': 153 | resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} 154 | 155 | acorn-jsx@5.3.2: 156 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 157 | peerDependencies: 158 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 159 | 160 | acorn@8.12.1: 161 | resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} 162 | engines: {node: '>=0.4.0'} 163 | hasBin: true 164 | 165 | ajv@6.12.6: 166 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 167 | 168 | ansi-colors@1.1.0: 169 | resolution: {integrity: sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==} 170 | engines: {node: '>=0.10.0'} 171 | 172 | ansi-gray@0.1.1: 173 | resolution: {integrity: sha512-HrgGIZUl8h2EHuZaU9hTR/cU5nhKxpVE1V6kdGsQ8e4zirElJ5fvtfc8N7Q1oq1aatO275i8pUFUCpNWCAnVWw==} 174 | engines: {node: '>=0.10.0'} 175 | 176 | ansi-regex@2.1.1: 177 | resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==} 178 | engines: {node: '>=0.10.0'} 179 | 180 | ansi-regex@5.0.1: 181 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 182 | engines: {node: '>=8'} 183 | 184 | ansi-styles@4.3.0: 185 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 186 | engines: {node: '>=8'} 187 | 188 | ansi-wrap@0.1.0: 189 | resolution: {integrity: sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw==} 190 | engines: {node: '>=0.10.0'} 191 | 192 | anymatch@2.0.0: 193 | resolution: {integrity: sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==} 194 | 195 | append-buffer@1.0.2: 196 | resolution: {integrity: sha512-WLbYiXzD3y/ATLZFufV/rZvWdZOs+Z/+5v1rBZ463Jn398pa6kcde27cvozYnBoxXblGZTFfoPpsaEw0orU5BA==} 197 | engines: {node: '>=0.10.0'} 198 | 199 | archy@1.0.0: 200 | resolution: {integrity: sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==} 201 | 202 | argparse@2.0.1: 203 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 204 | 205 | arr-diff@4.0.0: 206 | resolution: {integrity: sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==} 207 | engines: {node: '>=0.10.0'} 208 | 209 | arr-filter@1.1.2: 210 | resolution: {integrity: sha512-A2BETWCqhsecSvCkWAeVBFLH6sXEUGASuzkpjL3GR1SlL/PWL6M3J8EAAld2Uubmh39tvkJTqC9LeLHCUKmFXA==} 211 | engines: {node: '>=0.10.0'} 212 | 213 | arr-flatten@1.1.0: 214 | resolution: {integrity: sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==} 215 | engines: {node: '>=0.10.0'} 216 | 217 | arr-map@2.0.2: 218 | resolution: {integrity: sha512-tVqVTHt+Q5Xb09qRkbu+DidW1yYzz5izWS2Xm2yFm7qJnmUfz4HPzNxbHkdRJbz2lrqI7S+z17xNYdFcBBO8Hw==} 219 | engines: {node: '>=0.10.0'} 220 | 221 | arr-union@3.1.0: 222 | resolution: {integrity: sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==} 223 | engines: {node: '>=0.10.0'} 224 | 225 | array-each@1.0.1: 226 | resolution: {integrity: sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==} 227 | engines: {node: '>=0.10.0'} 228 | 229 | array-initial@1.1.0: 230 | resolution: {integrity: sha512-BC4Yl89vneCYfpLrs5JU2aAu9/a+xWbeKhvISg9PT7eWFB9UlRvI+rKEtk6mgxWr3dSkk9gQ8hCrdqt06NXPdw==} 231 | engines: {node: '>=0.10.0'} 232 | 233 | array-last@1.3.0: 234 | resolution: {integrity: sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg==} 235 | engines: {node: '>=0.10.0'} 236 | 237 | array-slice@1.1.0: 238 | resolution: {integrity: sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==} 239 | engines: {node: '>=0.10.0'} 240 | 241 | array-sort@1.0.0: 242 | resolution: {integrity: sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg==} 243 | engines: {node: '>=0.10.0'} 244 | 245 | array-union@2.1.0: 246 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 247 | engines: {node: '>=8'} 248 | 249 | array-unique@0.3.2: 250 | resolution: {integrity: sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==} 251 | engines: {node: '>=0.10.0'} 252 | 253 | assert@2.1.0: 254 | resolution: {integrity: sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==} 255 | 256 | assign-symbols@1.0.0: 257 | resolution: {integrity: sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==} 258 | engines: {node: '>=0.10.0'} 259 | 260 | ast-types@0.15.2: 261 | resolution: {integrity: sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==} 262 | engines: {node: '>=4'} 263 | 264 | ast-types@0.16.1: 265 | resolution: {integrity: sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==} 266 | engines: {node: '>=4'} 267 | 268 | async-done@1.3.2: 269 | resolution: {integrity: sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw==} 270 | engines: {node: '>= 0.10'} 271 | 272 | async-each@1.0.3: 273 | resolution: {integrity: sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==} 274 | 275 | async-settle@1.0.0: 276 | resolution: {integrity: sha512-VPXfB4Vk49z1LHHodrEQ6Xf7W4gg1w0dAPROHngx7qgDjqmIQ+fXmwgGXTW/ITLai0YLSvWepJOP9EVpMnEAcw==} 277 | engines: {node: '>= 0.10'} 278 | 279 | asynckit@0.4.0: 280 | resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} 281 | 282 | atob@2.1.2: 283 | resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==} 284 | engines: {node: '>= 4.5.0'} 285 | hasBin: true 286 | 287 | available-typed-arrays@1.0.7: 288 | resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} 289 | engines: {node: '>= 0.4'} 290 | 291 | axios@1.6.7: 292 | resolution: {integrity: sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==} 293 | 294 | bach@1.2.0: 295 | resolution: {integrity: sha512-bZOOfCb3gXBXbTFXq3OZtGR88LwGeJvzu6szttaIzymOTS4ZttBNOWSv7aLZja2EMycKtRYV0Oa8SNKH/zkxvg==} 296 | engines: {node: '>= 0.10'} 297 | 298 | balanced-match@1.0.2: 299 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 300 | 301 | base@0.11.2: 302 | resolution: {integrity: sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==} 303 | engines: {node: '>=0.10.0'} 304 | 305 | binary-extensions@1.13.1: 306 | resolution: {integrity: sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==} 307 | engines: {node: '>=0.10.0'} 308 | 309 | bindings@1.5.0: 310 | resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} 311 | 312 | brace-expansion@1.1.11: 313 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 314 | 315 | brace-expansion@2.0.1: 316 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 317 | 318 | braces@2.3.2: 319 | resolution: {integrity: sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==} 320 | engines: {node: '>=0.10.0'} 321 | 322 | braces@3.0.3: 323 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 324 | engines: {node: '>=8'} 325 | 326 | buffer-equal@1.0.0: 327 | resolution: {integrity: sha512-tcBWO2Dl4e7Asr9hTGcpVrCe+F7DubpmqWCTbj4FHLmjqO2hIaC383acQubWtRJhdceqs5uBHs6Es+Sk//RKiQ==} 328 | engines: {node: '>=0.4.0'} 329 | 330 | buffer-from@1.1.2: 331 | resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} 332 | 333 | cache-base@1.0.1: 334 | resolution: {integrity: sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==} 335 | engines: {node: '>=0.10.0'} 336 | 337 | call-bind@1.0.7: 338 | resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} 339 | engines: {node: '>= 0.4'} 340 | 341 | callsites@3.1.0: 342 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 343 | engines: {node: '>=6'} 344 | 345 | camel-case@4.1.2: 346 | resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} 347 | 348 | camelcase@3.0.0: 349 | resolution: {integrity: sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg==} 350 | engines: {node: '>=0.10.0'} 351 | 352 | chalk@4.1.2: 353 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 354 | engines: {node: '>=10'} 355 | 356 | charenc@0.0.2: 357 | resolution: {integrity: sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==} 358 | 359 | chokidar@2.1.8: 360 | resolution: {integrity: sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==} 361 | deprecated: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies 362 | 363 | class-utils@0.3.6: 364 | resolution: {integrity: sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==} 365 | engines: {node: '>=0.10.0'} 366 | 367 | cliui@3.2.0: 368 | resolution: {integrity: sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==} 369 | 370 | cliui@8.0.1: 371 | resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} 372 | engines: {node: '>=12'} 373 | 374 | clone-buffer@1.0.0: 375 | resolution: {integrity: sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==} 376 | engines: {node: '>= 0.10'} 377 | 378 | clone-stats@1.0.0: 379 | resolution: {integrity: sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag==} 380 | 381 | clone@2.1.2: 382 | resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==} 383 | engines: {node: '>=0.8'} 384 | 385 | cloneable-readable@1.1.3: 386 | resolution: {integrity: sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==} 387 | 388 | code-point-at@1.1.0: 389 | resolution: {integrity: sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==} 390 | engines: {node: '>=0.10.0'} 391 | 392 | collection-map@1.0.0: 393 | resolution: {integrity: sha512-5D2XXSpkOnleOI21TG7p3T0bGAsZ/XknZpKBmGYyluO8pw4zA3K8ZlrBIbC4FXg3m6z/RNFiUFfT2sQK01+UHA==} 394 | engines: {node: '>=0.10.0'} 395 | 396 | collection-visit@1.0.0: 397 | resolution: {integrity: sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==} 398 | engines: {node: '>=0.10.0'} 399 | 400 | color-convert@2.0.1: 401 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 402 | engines: {node: '>=7.0.0'} 403 | 404 | color-name@1.1.4: 405 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 406 | 407 | color-support@1.1.3: 408 | resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} 409 | hasBin: true 410 | 411 | combined-stream@1.0.8: 412 | resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} 413 | engines: {node: '>= 0.8'} 414 | 415 | component-emitter@1.3.0: 416 | resolution: {integrity: sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==} 417 | 418 | concat-map@0.0.1: 419 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 420 | 421 | concat-stream@1.6.2: 422 | resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} 423 | engines: {'0': node >= 0.8} 424 | 425 | convert-source-map@1.8.0: 426 | resolution: {integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==} 427 | 428 | copy-descriptor@0.1.1: 429 | resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==} 430 | engines: {node: '>=0.10.0'} 431 | 432 | copy-props@2.0.5: 433 | resolution: {integrity: sha512-XBlx8HSqrT0ObQwmSzM7WE5k8FxTV75h1DX1Z3n6NhQ/UYYAvInWYmG06vFt7hQZArE2fuO62aihiWIVQwh1sw==} 434 | 435 | core-util-is@1.0.3: 436 | resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} 437 | 438 | cross-spawn@7.0.3: 439 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 440 | engines: {node: '>= 8'} 441 | 442 | crypt@0.0.2: 443 | resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==} 444 | 445 | d@1.0.1: 446 | resolution: {integrity: sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==} 447 | 448 | debug@2.6.9: 449 | resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} 450 | peerDependencies: 451 | supports-color: '*' 452 | peerDependenciesMeta: 453 | supports-color: 454 | optional: true 455 | 456 | debug@4.3.5: 457 | resolution: {integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==} 458 | engines: {node: '>=6.0'} 459 | peerDependencies: 460 | supports-color: '*' 461 | peerDependenciesMeta: 462 | supports-color: 463 | optional: true 464 | 465 | decamelize@1.2.0: 466 | resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} 467 | engines: {node: '>=0.10.0'} 468 | 469 | decode-uri-component@0.2.0: 470 | resolution: {integrity: sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==} 471 | engines: {node: '>=0.10'} 472 | 473 | deep-equal@2.2.0: 474 | resolution: {integrity: sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==} 475 | 476 | deep-is@0.1.4: 477 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 478 | 479 | default-compare@1.0.0: 480 | resolution: {integrity: sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ==} 481 | engines: {node: '>=0.10.0'} 482 | 483 | default-resolution@2.0.0: 484 | resolution: {integrity: sha512-2xaP6GiwVwOEbXCGoJ4ufgC76m8cj805jrghScewJC2ZDsb9U0b4BIrba+xt/Uytyd0HvQ6+WymSRTfnYj59GQ==} 485 | engines: {node: '>= 0.10'} 486 | 487 | define-data-property@1.1.4: 488 | resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} 489 | engines: {node: '>= 0.4'} 490 | 491 | define-properties@1.2.1: 492 | resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} 493 | engines: {node: '>= 0.4'} 494 | 495 | define-property@0.2.5: 496 | resolution: {integrity: sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==} 497 | engines: {node: '>=0.10.0'} 498 | 499 | define-property@1.0.0: 500 | resolution: {integrity: sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==} 501 | engines: {node: '>=0.10.0'} 502 | 503 | define-property@2.0.2: 504 | resolution: {integrity: sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==} 505 | engines: {node: '>=0.10.0'} 506 | 507 | delayed-stream@1.0.0: 508 | resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} 509 | engines: {node: '>=0.4.0'} 510 | 511 | detect-file@1.0.0: 512 | resolution: {integrity: sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==} 513 | engines: {node: '>=0.10.0'} 514 | 515 | dir-glob@3.0.1: 516 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 517 | engines: {node: '>=8'} 518 | 519 | doctrine@3.0.0: 520 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 521 | engines: {node: '>=6.0.0'} 522 | 523 | duplexify@3.7.1: 524 | resolution: {integrity: sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==} 525 | 526 | each-props@1.3.2: 527 | resolution: {integrity: sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA==} 528 | 529 | emoji-regex@8.0.0: 530 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 531 | 532 | end-of-stream@1.4.4: 533 | resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} 534 | 535 | error-ex@1.3.2: 536 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} 537 | 538 | es-define-property@1.0.0: 539 | resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} 540 | engines: {node: '>= 0.4'} 541 | 542 | es-errors@1.3.0: 543 | resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} 544 | engines: {node: '>= 0.4'} 545 | 546 | es-get-iterator@1.1.3: 547 | resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} 548 | 549 | es5-ext@0.10.61: 550 | resolution: {integrity: sha512-yFhIqQAzu2Ca2I4SE2Au3rxVfmohU9Y7wqGR+s7+H7krk26NXhIRAZDgqd6xqjCEFUomDEA3/Bo/7fKmIkW1kA==} 551 | engines: {node: '>=0.10'} 552 | 553 | es6-iterator@2.0.3: 554 | resolution: {integrity: sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==} 555 | 556 | es6-symbol@3.1.3: 557 | resolution: {integrity: sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==} 558 | 559 | es6-weak-map@2.0.3: 560 | resolution: {integrity: sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==} 561 | 562 | escalade@3.1.2: 563 | resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} 564 | engines: {node: '>=6'} 565 | 566 | escape-string-regexp@4.0.0: 567 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 568 | engines: {node: '>=10'} 569 | 570 | eslint-config-riot@1.0.0: 571 | resolution: {integrity: sha512-NB/L/1Y30qyJcG5xZxCJKW/+bqyj+llbcCwo9DEz8bESIP0SLTOQ8T1DWCCFc+wJ61AMEstj4511PSScqMMfCw==} 572 | 573 | eslint-plugin-n8n-nodes-base@1.16.1: 574 | resolution: {integrity: sha512-TMlOiDj67tjv8eodnM6tsB0GeBwVpRbUN8/AQ/MRc7weP/rgLxfhUhzWkeiJMxYUJC3NLjemJbw7QDafKG9Kog==} 575 | engines: {node: '>=18.10', pnpm: '>=8.6'} 576 | 577 | eslint-scope@7.2.2: 578 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} 579 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 580 | 581 | eslint-visitor-keys@3.3.0: 582 | resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==} 583 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 584 | 585 | eslint-visitor-keys@3.4.3: 586 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 587 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 588 | 589 | eslint@8.57.0: 590 | resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} 591 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 592 | hasBin: true 593 | 594 | espree@9.6.1: 595 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} 596 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 597 | 598 | esprima-next@5.8.4: 599 | resolution: {integrity: sha512-8nYVZ4ioIH4Msjb/XmhnBdz5WRRBaYqevKa1cv9nGJdCehMbzZCPNEEnqfLCZVetUVrUPEcb5IYyu1GG4hFqgg==} 600 | engines: {node: '>=12'} 601 | hasBin: true 602 | 603 | esprima@4.0.1: 604 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 605 | engines: {node: '>=4'} 606 | hasBin: true 607 | 608 | esquery@1.5.0: 609 | resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} 610 | engines: {node: '>=0.10'} 611 | 612 | esrecurse@4.3.0: 613 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 614 | engines: {node: '>=4.0'} 615 | 616 | estraverse@5.3.0: 617 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 618 | engines: {node: '>=4.0'} 619 | 620 | esutils@2.0.3: 621 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 622 | engines: {node: '>=0.10.0'} 623 | 624 | expand-brackets@2.1.4: 625 | resolution: {integrity: sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==} 626 | engines: {node: '>=0.10.0'} 627 | 628 | expand-tilde@2.0.2: 629 | resolution: {integrity: sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==} 630 | engines: {node: '>=0.10.0'} 631 | 632 | ext@1.6.0: 633 | resolution: {integrity: sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg==} 634 | 635 | extend-shallow@2.0.1: 636 | resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} 637 | engines: {node: '>=0.10.0'} 638 | 639 | extend-shallow@3.0.2: 640 | resolution: {integrity: sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==} 641 | engines: {node: '>=0.10.0'} 642 | 643 | extend@3.0.2: 644 | resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} 645 | 646 | extglob@2.0.4: 647 | resolution: {integrity: sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==} 648 | engines: {node: '>=0.10.0'} 649 | 650 | fancy-log@1.3.3: 651 | resolution: {integrity: sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==} 652 | engines: {node: '>= 0.10'} 653 | 654 | fast-deep-equal@3.1.3: 655 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 656 | 657 | fast-glob@3.2.11: 658 | resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==} 659 | engines: {node: '>=8.6.0'} 660 | 661 | fast-json-stable-stringify@2.1.0: 662 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 663 | 664 | fast-levenshtein@1.1.4: 665 | resolution: {integrity: sha512-Ia0sQNrMPXXkqVFt6w6M1n1oKo3NfKs+mvaV811Jwir7vAk9a6PVV9VPYf6X3BU97QiLEmuW3uXH9u87zDFfdw==} 666 | 667 | fast-levenshtein@2.0.6: 668 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 669 | 670 | fastq@1.13.0: 671 | resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==} 672 | 673 | file-entry-cache@6.0.1: 674 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 675 | engines: {node: ^10.12.0 || >=12.0.0} 676 | 677 | file-uri-to-path@1.0.0: 678 | resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} 679 | 680 | fill-range@4.0.0: 681 | resolution: {integrity: sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==} 682 | engines: {node: '>=0.10.0'} 683 | 684 | fill-range@7.1.1: 685 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 686 | engines: {node: '>=8'} 687 | 688 | find-up@1.1.2: 689 | resolution: {integrity: sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==} 690 | engines: {node: '>=0.10.0'} 691 | 692 | find-up@5.0.0: 693 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 694 | engines: {node: '>=10'} 695 | 696 | findup-sync@2.0.0: 697 | resolution: {integrity: sha512-vs+3unmJT45eczmcAZ6zMJtxN3l/QXeccaXQx5cu/MeJMhewVfoWZqibRkOxPnmoR59+Zy5hjabfQc6JLSah4g==} 698 | engines: {node: '>= 0.10'} 699 | 700 | findup-sync@3.0.0: 701 | resolution: {integrity: sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==} 702 | engines: {node: '>= 0.10'} 703 | 704 | fined@1.2.0: 705 | resolution: {integrity: sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==} 706 | engines: {node: '>= 0.10'} 707 | 708 | flagged-respawn@1.0.1: 709 | resolution: {integrity: sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==} 710 | engines: {node: '>= 0.10'} 711 | 712 | flat-cache@3.0.4: 713 | resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} 714 | engines: {node: ^10.12.0 || >=12.0.0} 715 | 716 | flatted@3.2.6: 717 | resolution: {integrity: sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ==} 718 | 719 | flush-write-stream@1.1.1: 720 | resolution: {integrity: sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==} 721 | 722 | follow-redirects@1.15.6: 723 | resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==} 724 | engines: {node: '>=4.0'} 725 | peerDependencies: 726 | debug: '*' 727 | peerDependenciesMeta: 728 | debug: 729 | optional: true 730 | 731 | for-each@0.3.3: 732 | resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} 733 | 734 | for-in@1.0.2: 735 | resolution: {integrity: sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==} 736 | engines: {node: '>=0.10.0'} 737 | 738 | for-own@1.0.0: 739 | resolution: {integrity: sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==} 740 | engines: {node: '>=0.10.0'} 741 | 742 | form-data@4.0.0: 743 | resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} 744 | engines: {node: '>= 6'} 745 | 746 | fragment-cache@0.2.1: 747 | resolution: {integrity: sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==} 748 | engines: {node: '>=0.10.0'} 749 | 750 | fs-mkdirp-stream@1.0.0: 751 | resolution: {integrity: sha512-+vSd9frUnapVC2RZYfL3FCB2p3g4TBhaUmrsWlSudsGdnxIuUvBB2QM1VZeBtc49QFwrp+wQLrDs3+xxDgI5gQ==} 752 | engines: {node: '>= 0.10'} 753 | 754 | fs.realpath@1.0.0: 755 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 756 | 757 | fsevents@1.2.13: 758 | resolution: {integrity: sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==} 759 | engines: {node: '>= 4.0'} 760 | os: [darwin] 761 | deprecated: The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2 762 | 763 | function-bind@1.1.2: 764 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 765 | 766 | functions-have-names@1.2.3: 767 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} 768 | 769 | get-caller-file@1.0.3: 770 | resolution: {integrity: sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==} 771 | 772 | get-caller-file@2.0.5: 773 | resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} 774 | engines: {node: 6.* || 8.* || >= 10.*} 775 | 776 | get-intrinsic@1.2.4: 777 | resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==} 778 | engines: {node: '>= 0.4'} 779 | 780 | get-value@2.0.6: 781 | resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==} 782 | engines: {node: '>=0.10.0'} 783 | 784 | glob-parent@3.1.0: 785 | resolution: {integrity: sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==} 786 | 787 | glob-parent@5.1.2: 788 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 789 | engines: {node: '>= 6'} 790 | 791 | glob-parent@6.0.2: 792 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 793 | engines: {node: '>=10.13.0'} 794 | 795 | glob-stream@6.1.0: 796 | resolution: {integrity: sha512-uMbLGAP3S2aDOHUDfdoYcdIePUCfysbAd0IAoWVZbeGU/oNQ8asHVSshLDJUPWxfzj8zsCG7/XeHPHTtow0nsw==} 797 | engines: {node: '>= 0.10'} 798 | 799 | glob-watcher@5.0.5: 800 | resolution: {integrity: sha512-zOZgGGEHPklZNjZQaZ9f41i7F2YwE+tS5ZHrDhbBCk3stwahn5vQxnFmBJZHoYdusR6R1bLSXeGUy/BhctwKzw==} 801 | engines: {node: '>= 0.10'} 802 | 803 | glob@7.2.3: 804 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 805 | deprecated: Glob versions prior to v9 are no longer supported 806 | 807 | global-modules@1.0.0: 808 | resolution: {integrity: sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==} 809 | engines: {node: '>=0.10.0'} 810 | 811 | global-prefix@1.0.2: 812 | resolution: {integrity: sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==} 813 | engines: {node: '>=0.10.0'} 814 | 815 | globals@13.24.0: 816 | resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} 817 | engines: {node: '>=8'} 818 | 819 | globby@11.1.0: 820 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 821 | engines: {node: '>=10'} 822 | 823 | glogg@1.0.2: 824 | resolution: {integrity: sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==} 825 | engines: {node: '>= 0.10'} 826 | 827 | gopd@1.0.1: 828 | resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} 829 | 830 | graceful-fs@4.2.10: 831 | resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} 832 | 833 | graphemer@1.4.0: 834 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 835 | 836 | gulp-cli@2.3.0: 837 | resolution: {integrity: sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A==} 838 | engines: {node: '>= 0.10'} 839 | hasBin: true 840 | 841 | gulp@4.0.2: 842 | resolution: {integrity: sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA==} 843 | engines: {node: '>= 0.10'} 844 | hasBin: true 845 | 846 | gulplog@1.0.0: 847 | resolution: {integrity: sha512-hm6N8nrm3Y08jXie48jsC55eCZz9mnb4OirAStEk2deqeyhXU3C1otDVh+ccttMuc1sBi6RX6ZJ720hs9RCvgw==} 848 | engines: {node: '>= 0.10'} 849 | 850 | has-bigints@1.0.2: 851 | resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} 852 | 853 | has-flag@4.0.0: 854 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 855 | engines: {node: '>=8'} 856 | 857 | has-property-descriptors@1.0.2: 858 | resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} 859 | 860 | has-proto@1.0.3: 861 | resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==} 862 | engines: {node: '>= 0.4'} 863 | 864 | has-symbols@1.0.3: 865 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} 866 | engines: {node: '>= 0.4'} 867 | 868 | has-tostringtag@1.0.2: 869 | resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} 870 | engines: {node: '>= 0.4'} 871 | 872 | has-value@0.3.1: 873 | resolution: {integrity: sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==} 874 | engines: {node: '>=0.10.0'} 875 | 876 | has-value@1.0.0: 877 | resolution: {integrity: sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==} 878 | engines: {node: '>=0.10.0'} 879 | 880 | has-values@0.1.4: 881 | resolution: {integrity: sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==} 882 | engines: {node: '>=0.10.0'} 883 | 884 | has-values@1.0.0: 885 | resolution: {integrity: sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==} 886 | engines: {node: '>=0.10.0'} 887 | 888 | has@1.0.3: 889 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 890 | engines: {node: '>= 0.4.0'} 891 | 892 | hasown@2.0.2: 893 | resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} 894 | engines: {node: '>= 0.4'} 895 | 896 | homedir-polyfill@1.0.3: 897 | resolution: {integrity: sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==} 898 | engines: {node: '>=0.10.0'} 899 | 900 | hosted-git-info@2.8.9: 901 | resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} 902 | 903 | ignore@5.2.0: 904 | resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==} 905 | engines: {node: '>= 4'} 906 | 907 | import-fresh@3.3.0: 908 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 909 | engines: {node: '>=6'} 910 | 911 | imurmurhash@0.1.4: 912 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 913 | engines: {node: '>=0.8.19'} 914 | 915 | indefinite@2.5.1: 916 | resolution: {integrity: sha512-Ul0hCdnSjuFDEloYWeozTaEfljbz+0q+u4HsHns2dOk2DlhGlbRMGFtNcIL+Ve7sZYeIOTOAKA0usAXBGHpNDg==} 917 | engines: {node: '>=6.0.0'} 918 | 919 | inflight@1.0.6: 920 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 921 | deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. 922 | 923 | inherits@2.0.4: 924 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 925 | 926 | ini@1.3.8: 927 | resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} 928 | 929 | internal-slot@1.0.7: 930 | resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} 931 | engines: {node: '>= 0.4'} 932 | 933 | interpret@1.4.0: 934 | resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} 935 | engines: {node: '>= 0.10'} 936 | 937 | invert-kv@1.0.0: 938 | resolution: {integrity: sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ==} 939 | engines: {node: '>=0.10.0'} 940 | 941 | is-absolute@1.0.0: 942 | resolution: {integrity: sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==} 943 | engines: {node: '>=0.10.0'} 944 | 945 | is-accessor-descriptor@0.1.6: 946 | resolution: {integrity: sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==} 947 | engines: {node: '>=0.10.0'} 948 | deprecated: Please upgrade to v0.1.7 949 | 950 | is-accessor-descriptor@1.0.0: 951 | resolution: {integrity: sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==} 952 | engines: {node: '>=0.10.0'} 953 | deprecated: Please upgrade to v1.0.1 954 | 955 | is-arguments@1.1.1: 956 | resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} 957 | engines: {node: '>= 0.4'} 958 | 959 | is-array-buffer@3.0.4: 960 | resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} 961 | engines: {node: '>= 0.4'} 962 | 963 | is-arrayish@0.2.1: 964 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} 965 | 966 | is-bigint@1.0.4: 967 | resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} 968 | 969 | is-binary-path@1.0.1: 970 | resolution: {integrity: sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==} 971 | engines: {node: '>=0.10.0'} 972 | 973 | is-boolean-object@1.1.2: 974 | resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} 975 | engines: {node: '>= 0.4'} 976 | 977 | is-buffer@1.1.6: 978 | resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} 979 | 980 | is-callable@1.2.7: 981 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} 982 | engines: {node: '>= 0.4'} 983 | 984 | is-core-module@2.9.0: 985 | resolution: {integrity: sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==} 986 | 987 | is-data-descriptor@0.1.4: 988 | resolution: {integrity: sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==} 989 | engines: {node: '>=0.10.0'} 990 | deprecated: Please upgrade to v0.1.5 991 | 992 | is-data-descriptor@1.0.0: 993 | resolution: {integrity: sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==} 994 | engines: {node: '>=0.10.0'} 995 | deprecated: Please upgrade to v1.0.1 996 | 997 | is-date-object@1.0.5: 998 | resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} 999 | engines: {node: '>= 0.4'} 1000 | 1001 | is-descriptor@0.1.6: 1002 | resolution: {integrity: sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==} 1003 | engines: {node: '>=0.10.0'} 1004 | 1005 | is-descriptor@1.0.2: 1006 | resolution: {integrity: sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==} 1007 | engines: {node: '>=0.10.0'} 1008 | 1009 | is-extendable@0.1.1: 1010 | resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} 1011 | engines: {node: '>=0.10.0'} 1012 | 1013 | is-extendable@1.0.1: 1014 | resolution: {integrity: sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==} 1015 | engines: {node: '>=0.10.0'} 1016 | 1017 | is-extglob@2.1.1: 1018 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1019 | engines: {node: '>=0.10.0'} 1020 | 1021 | is-fullwidth-code-point@1.0.0: 1022 | resolution: {integrity: sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==} 1023 | engines: {node: '>=0.10.0'} 1024 | 1025 | is-fullwidth-code-point@3.0.0: 1026 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 1027 | engines: {node: '>=8'} 1028 | 1029 | is-generator-function@1.0.10: 1030 | resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} 1031 | engines: {node: '>= 0.4'} 1032 | 1033 | is-glob@3.1.0: 1034 | resolution: {integrity: sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==} 1035 | engines: {node: '>=0.10.0'} 1036 | 1037 | is-glob@4.0.3: 1038 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1039 | engines: {node: '>=0.10.0'} 1040 | 1041 | is-map@2.0.3: 1042 | resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} 1043 | engines: {node: '>= 0.4'} 1044 | 1045 | is-nan@1.3.2: 1046 | resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==} 1047 | engines: {node: '>= 0.4'} 1048 | 1049 | is-negated-glob@1.0.0: 1050 | resolution: {integrity: sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug==} 1051 | engines: {node: '>=0.10.0'} 1052 | 1053 | is-number-object@1.0.7: 1054 | resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} 1055 | engines: {node: '>= 0.4'} 1056 | 1057 | is-number@3.0.0: 1058 | resolution: {integrity: sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==} 1059 | engines: {node: '>=0.10.0'} 1060 | 1061 | is-number@4.0.0: 1062 | resolution: {integrity: sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==} 1063 | engines: {node: '>=0.10.0'} 1064 | 1065 | is-number@7.0.0: 1066 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1067 | engines: {node: '>=0.12.0'} 1068 | 1069 | is-path-inside@3.0.3: 1070 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} 1071 | engines: {node: '>=8'} 1072 | 1073 | is-plain-object@2.0.4: 1074 | resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} 1075 | engines: {node: '>=0.10.0'} 1076 | 1077 | is-plain-object@5.0.0: 1078 | resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} 1079 | engines: {node: '>=0.10.0'} 1080 | 1081 | is-regex@1.1.4: 1082 | resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} 1083 | engines: {node: '>= 0.4'} 1084 | 1085 | is-relative@1.0.0: 1086 | resolution: {integrity: sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==} 1087 | engines: {node: '>=0.10.0'} 1088 | 1089 | is-set@2.0.3: 1090 | resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} 1091 | engines: {node: '>= 0.4'} 1092 | 1093 | is-shared-array-buffer@1.0.3: 1094 | resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} 1095 | engines: {node: '>= 0.4'} 1096 | 1097 | is-string@1.0.7: 1098 | resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} 1099 | engines: {node: '>= 0.4'} 1100 | 1101 | is-symbol@1.0.4: 1102 | resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} 1103 | engines: {node: '>= 0.4'} 1104 | 1105 | is-typed-array@1.1.13: 1106 | resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} 1107 | engines: {node: '>= 0.4'} 1108 | 1109 | is-unc-path@1.0.0: 1110 | resolution: {integrity: sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==} 1111 | engines: {node: '>=0.10.0'} 1112 | 1113 | is-utf8@0.2.1: 1114 | resolution: {integrity: sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==} 1115 | 1116 | is-valid-glob@1.0.0: 1117 | resolution: {integrity: sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA==} 1118 | engines: {node: '>=0.10.0'} 1119 | 1120 | is-weakmap@2.0.2: 1121 | resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} 1122 | engines: {node: '>= 0.4'} 1123 | 1124 | is-weakset@2.0.3: 1125 | resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} 1126 | engines: {node: '>= 0.4'} 1127 | 1128 | is-windows@1.0.2: 1129 | resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} 1130 | engines: {node: '>=0.10.0'} 1131 | 1132 | isarray@1.0.0: 1133 | resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} 1134 | 1135 | isarray@2.0.5: 1136 | resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} 1137 | 1138 | isexe@2.0.0: 1139 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1140 | 1141 | isobject@2.1.0: 1142 | resolution: {integrity: sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==} 1143 | engines: {node: '>=0.10.0'} 1144 | 1145 | isobject@3.0.1: 1146 | resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} 1147 | engines: {node: '>=0.10.0'} 1148 | 1149 | jmespath@0.16.0: 1150 | resolution: {integrity: sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==} 1151 | engines: {node: '>= 0.6.0'} 1152 | 1153 | js-base64@3.7.2: 1154 | resolution: {integrity: sha512-NnRs6dsyqUXejqk/yv2aiXlAvOs56sLkX6nUdeaNezI5LFFLlsZjOThmwnrcwh5ZZRwZlCMnVAY3CvhIhoVEKQ==} 1155 | 1156 | js-yaml@4.1.0: 1157 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 1158 | hasBin: true 1159 | 1160 | json-schema-traverse@0.4.1: 1161 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1162 | 1163 | json-stable-stringify-without-jsonify@1.0.1: 1164 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 1165 | 1166 | jssha@3.3.1: 1167 | resolution: {integrity: sha512-VCMZj12FCFMQYcFLPRm/0lOBbLi8uM2BhXPTqw3U4YAfs4AZfiApOoBLoN8cQE60Z50m1MYMTQVCfgF/KaCVhQ==} 1168 | 1169 | just-debounce@1.1.0: 1170 | resolution: {integrity: sha512-qpcRocdkUmf+UTNBYx5w6dexX5J31AKK1OmPwH630a83DdVVUIngk55RSAiIGpQyoH0dlr872VHfPjnQnK1qDQ==} 1171 | 1172 | kind-of@3.2.2: 1173 | resolution: {integrity: sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==} 1174 | engines: {node: '>=0.10.0'} 1175 | 1176 | kind-of@4.0.0: 1177 | resolution: {integrity: sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==} 1178 | engines: {node: '>=0.10.0'} 1179 | 1180 | kind-of@5.1.0: 1181 | resolution: {integrity: sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==} 1182 | engines: {node: '>=0.10.0'} 1183 | 1184 | kind-of@6.0.3: 1185 | resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} 1186 | engines: {node: '>=0.10.0'} 1187 | 1188 | last-run@1.1.1: 1189 | resolution: {integrity: sha512-U/VxvpX4N/rFvPzr3qG5EtLKEnNI0emvIQB3/ecEwv+8GHaUKbIB8vxv1Oai5FAF0d0r7LXHhLLe5K/yChm5GQ==} 1190 | engines: {node: '>= 0.10'} 1191 | 1192 | lazystream@1.0.1: 1193 | resolution: {integrity: sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==} 1194 | engines: {node: '>= 0.6.3'} 1195 | 1196 | lcid@1.0.0: 1197 | resolution: {integrity: sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw==} 1198 | engines: {node: '>=0.10.0'} 1199 | 1200 | lead@1.0.0: 1201 | resolution: {integrity: sha512-IpSVCk9AYvLHo5ctcIXxOBpMWUe+4TKN3VPWAKUbJikkmsGp0VrSM8IttVc32D6J4WUsiPE6aEFRNmIoF/gdow==} 1202 | engines: {node: '>= 0.10'} 1203 | 1204 | levn@0.4.1: 1205 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 1206 | engines: {node: '>= 0.8.0'} 1207 | 1208 | liftoff@3.1.0: 1209 | resolution: {integrity: sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog==} 1210 | engines: {node: '>= 0.8'} 1211 | 1212 | load-json-file@1.1.0: 1213 | resolution: {integrity: sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==} 1214 | engines: {node: '>=0.10.0'} 1215 | 1216 | locate-path@6.0.0: 1217 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 1218 | engines: {node: '>=10'} 1219 | 1220 | lodash.merge@4.6.2: 1221 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 1222 | 1223 | lodash@4.17.21: 1224 | resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} 1225 | 1226 | lower-case@2.0.2: 1227 | resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} 1228 | 1229 | luxon@3.3.0: 1230 | resolution: {integrity: sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg==} 1231 | engines: {node: '>=12'} 1232 | 1233 | make-iterator@1.0.1: 1234 | resolution: {integrity: sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==} 1235 | engines: {node: '>=0.10.0'} 1236 | 1237 | map-cache@0.2.2: 1238 | resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==} 1239 | engines: {node: '>=0.10.0'} 1240 | 1241 | map-visit@1.0.0: 1242 | resolution: {integrity: sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==} 1243 | engines: {node: '>=0.10.0'} 1244 | 1245 | matchdep@2.0.0: 1246 | resolution: {integrity: sha512-LFgVbaHIHMqCRuCZyfCtUOq9/Lnzhi7Z0KFUE2fhD54+JN2jLh3hC02RLkqauJ3U4soU6H1J3tfj/Byk7GoEjA==} 1247 | engines: {node: '>= 0.10.0'} 1248 | 1249 | md5@2.3.0: 1250 | resolution: {integrity: sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==} 1251 | 1252 | merge2@1.4.1: 1253 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1254 | engines: {node: '>= 8'} 1255 | 1256 | micromatch@3.1.10: 1257 | resolution: {integrity: sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==} 1258 | engines: {node: '>=0.10.0'} 1259 | 1260 | micromatch@4.0.5: 1261 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 1262 | engines: {node: '>=8.6'} 1263 | 1264 | mime-db@1.52.0: 1265 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} 1266 | engines: {node: '>= 0.6'} 1267 | 1268 | mime-types@2.1.35: 1269 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} 1270 | engines: {node: '>= 0.6'} 1271 | 1272 | minimatch@3.1.2: 1273 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 1274 | 1275 | minimatch@9.0.3: 1276 | resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} 1277 | engines: {node: '>=16 || 14 >=14.17'} 1278 | 1279 | minimatch@9.0.5: 1280 | resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} 1281 | engines: {node: '>=16 || 14 >=14.17'} 1282 | 1283 | mixin-deep@1.3.2: 1284 | resolution: {integrity: sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==} 1285 | engines: {node: '>=0.10.0'} 1286 | 1287 | ms@2.0.0: 1288 | resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} 1289 | 1290 | ms@2.1.2: 1291 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 1292 | 1293 | mute-stdout@1.0.1: 1294 | resolution: {integrity: sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg==} 1295 | engines: {node: '>= 0.10'} 1296 | 1297 | n8n-workflow@1.48.0: 1298 | resolution: {integrity: sha512-zHeOHhlf7BB2+DeAcm81+sJfmss8u/TE3KLpc/vCRc1vPonvF0iN5X5/DskHTGKPyXrP6N7wR6bkGWEXN7w08A==} 1299 | 1300 | nan@2.20.0: 1301 | resolution: {integrity: sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==} 1302 | 1303 | nanomatch@1.2.13: 1304 | resolution: {integrity: sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==} 1305 | engines: {node: '>=0.10.0'} 1306 | 1307 | natural-compare@1.4.0: 1308 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 1309 | 1310 | next-tick@1.1.0: 1311 | resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} 1312 | 1313 | no-case@3.0.4: 1314 | resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} 1315 | 1316 | normalize-package-data@2.5.0: 1317 | resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} 1318 | 1319 | normalize-path@2.1.1: 1320 | resolution: {integrity: sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==} 1321 | engines: {node: '>=0.10.0'} 1322 | 1323 | normalize-path@3.0.0: 1324 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 1325 | engines: {node: '>=0.10.0'} 1326 | 1327 | now-and-later@2.0.1: 1328 | resolution: {integrity: sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==} 1329 | engines: {node: '>= 0.10'} 1330 | 1331 | number-is-nan@1.0.1: 1332 | resolution: {integrity: sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==} 1333 | engines: {node: '>=0.10.0'} 1334 | 1335 | object-copy@0.1.0: 1336 | resolution: {integrity: sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==} 1337 | engines: {node: '>=0.10.0'} 1338 | 1339 | object-inspect@1.13.2: 1340 | resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==} 1341 | engines: {node: '>= 0.4'} 1342 | 1343 | object-is@1.1.6: 1344 | resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==} 1345 | engines: {node: '>= 0.4'} 1346 | 1347 | object-keys@1.1.1: 1348 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} 1349 | engines: {node: '>= 0.4'} 1350 | 1351 | object-visit@1.0.1: 1352 | resolution: {integrity: sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==} 1353 | engines: {node: '>=0.10.0'} 1354 | 1355 | object.assign@4.1.5: 1356 | resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} 1357 | engines: {node: '>= 0.4'} 1358 | 1359 | object.defaults@1.1.0: 1360 | resolution: {integrity: sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==} 1361 | engines: {node: '>=0.10.0'} 1362 | 1363 | object.map@1.0.1: 1364 | resolution: {integrity: sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w==} 1365 | engines: {node: '>=0.10.0'} 1366 | 1367 | object.pick@1.3.0: 1368 | resolution: {integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==} 1369 | engines: {node: '>=0.10.0'} 1370 | 1371 | object.reduce@1.0.1: 1372 | resolution: {integrity: sha512-naLhxxpUESbNkRqc35oQ2scZSJueHGQNUfMW/0U37IgN6tE2dgDWg3whf+NEliy3F/QysrO48XKUz/nGPe+AQw==} 1373 | engines: {node: '>=0.10.0'} 1374 | 1375 | once@1.4.0: 1376 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 1377 | 1378 | optionator@0.9.4: 1379 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} 1380 | engines: {node: '>= 0.8.0'} 1381 | 1382 | ordered-read-streams@1.0.1: 1383 | resolution: {integrity: sha512-Z87aSjx3r5c0ZB7bcJqIgIRX5bxR7A4aSzvIbaxd0oTkWBCOoKfuGHiKj60CHVUgg1Phm5yMZzBdt8XqRs73Mw==} 1384 | 1385 | os-locale@1.4.0: 1386 | resolution: {integrity: sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g==} 1387 | engines: {node: '>=0.10.0'} 1388 | 1389 | p-limit@3.1.0: 1390 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 1391 | engines: {node: '>=10'} 1392 | 1393 | p-locate@5.0.0: 1394 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 1395 | engines: {node: '>=10'} 1396 | 1397 | parent-module@1.0.1: 1398 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 1399 | engines: {node: '>=6'} 1400 | 1401 | parse-filepath@1.0.2: 1402 | resolution: {integrity: sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==} 1403 | engines: {node: '>=0.8'} 1404 | 1405 | parse-json@2.2.0: 1406 | resolution: {integrity: sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==} 1407 | engines: {node: '>=0.10.0'} 1408 | 1409 | parse-node-version@1.0.1: 1410 | resolution: {integrity: sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==} 1411 | engines: {node: '>= 0.10'} 1412 | 1413 | parse-passwd@1.0.0: 1414 | resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==} 1415 | engines: {node: '>=0.10.0'} 1416 | 1417 | pascal-case@3.1.2: 1418 | resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} 1419 | 1420 | pascalcase@0.1.1: 1421 | resolution: {integrity: sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==} 1422 | engines: {node: '>=0.10.0'} 1423 | 1424 | path-dirname@1.0.2: 1425 | resolution: {integrity: sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==} 1426 | 1427 | path-exists@2.1.0: 1428 | resolution: {integrity: sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==} 1429 | engines: {node: '>=0.10.0'} 1430 | 1431 | path-exists@4.0.0: 1432 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 1433 | engines: {node: '>=8'} 1434 | 1435 | path-is-absolute@1.0.1: 1436 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 1437 | engines: {node: '>=0.10.0'} 1438 | 1439 | path-key@3.1.1: 1440 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 1441 | engines: {node: '>=8'} 1442 | 1443 | path-parse@1.0.7: 1444 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 1445 | 1446 | path-root-regex@0.1.2: 1447 | resolution: {integrity: sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==} 1448 | engines: {node: '>=0.10.0'} 1449 | 1450 | path-root@0.1.1: 1451 | resolution: {integrity: sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==} 1452 | engines: {node: '>=0.10.0'} 1453 | 1454 | path-type@1.1.0: 1455 | resolution: {integrity: sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==} 1456 | engines: {node: '>=0.10.0'} 1457 | 1458 | path-type@4.0.0: 1459 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 1460 | engines: {node: '>=8'} 1461 | 1462 | picomatch@2.3.1: 1463 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1464 | engines: {node: '>=8.6'} 1465 | 1466 | pify@2.3.0: 1467 | resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} 1468 | engines: {node: '>=0.10.0'} 1469 | 1470 | pinkie-promise@2.0.1: 1471 | resolution: {integrity: sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==} 1472 | engines: {node: '>=0.10.0'} 1473 | 1474 | pinkie@2.0.4: 1475 | resolution: {integrity: sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==} 1476 | engines: {node: '>=0.10.0'} 1477 | 1478 | pluralize@8.0.0: 1479 | resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} 1480 | engines: {node: '>=4'} 1481 | 1482 | posix-character-classes@0.1.1: 1483 | resolution: {integrity: sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==} 1484 | engines: {node: '>=0.10.0'} 1485 | 1486 | possible-typed-array-names@1.0.0: 1487 | resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} 1488 | engines: {node: '>= 0.4'} 1489 | 1490 | prelude-ls@1.2.1: 1491 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 1492 | engines: {node: '>= 0.8.0'} 1493 | 1494 | prettier@3.3.2: 1495 | resolution: {integrity: sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==} 1496 | engines: {node: '>=14'} 1497 | hasBin: true 1498 | 1499 | pretty-hrtime@1.0.3: 1500 | resolution: {integrity: sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==} 1501 | engines: {node: '>= 0.8'} 1502 | 1503 | process-nextick-args@2.0.1: 1504 | resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} 1505 | 1506 | proxy-from-env@1.1.0: 1507 | resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} 1508 | 1509 | pump@2.0.1: 1510 | resolution: {integrity: sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==} 1511 | 1512 | pumpify@1.5.1: 1513 | resolution: {integrity: sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==} 1514 | 1515 | punycode@2.1.1: 1516 | resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==} 1517 | engines: {node: '>=6'} 1518 | 1519 | queue-microtask@1.2.3: 1520 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1521 | 1522 | read-pkg-up@1.0.1: 1523 | resolution: {integrity: sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==} 1524 | engines: {node: '>=0.10.0'} 1525 | 1526 | read-pkg@1.1.0: 1527 | resolution: {integrity: sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==} 1528 | engines: {node: '>=0.10.0'} 1529 | 1530 | readable-stream@2.3.7: 1531 | resolution: {integrity: sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==} 1532 | 1533 | readdirp@2.2.1: 1534 | resolution: {integrity: sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==} 1535 | engines: {node: '>=0.10'} 1536 | 1537 | recast@0.21.5: 1538 | resolution: {integrity: sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg==} 1539 | engines: {node: '>= 4'} 1540 | 1541 | recast@0.22.0: 1542 | resolution: {integrity: sha512-5AAx+mujtXijsEavc5lWXBPQqrM4+Dl5qNH96N2aNeuJFUzpiiToKPsxQD/zAIJHspz7zz0maX0PCtCTFVlixQ==} 1543 | engines: {node: '>= 4'} 1544 | 1545 | rechoir@0.6.2: 1546 | resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} 1547 | engines: {node: '>= 0.10'} 1548 | 1549 | regex-not@1.0.2: 1550 | resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==} 1551 | engines: {node: '>=0.10.0'} 1552 | 1553 | regexp.prototype.flags@1.5.2: 1554 | resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} 1555 | engines: {node: '>= 0.4'} 1556 | 1557 | remove-bom-buffer@3.0.0: 1558 | resolution: {integrity: sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==} 1559 | engines: {node: '>=0.10.0'} 1560 | 1561 | remove-bom-stream@1.2.0: 1562 | resolution: {integrity: sha512-wigO8/O08XHb8YPzpDDT+QmRANfW6vLqxfaXm1YXhnFf3AkSLyjfG3GEFg4McZkmgL7KvCj5u2KczkvSP6NfHA==} 1563 | engines: {node: '>= 0.10'} 1564 | 1565 | remove-trailing-separator@1.1.0: 1566 | resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} 1567 | 1568 | repeat-element@1.1.4: 1569 | resolution: {integrity: sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==} 1570 | engines: {node: '>=0.10.0'} 1571 | 1572 | repeat-string@1.6.1: 1573 | resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} 1574 | engines: {node: '>=0.10'} 1575 | 1576 | replace-ext@1.0.1: 1577 | resolution: {integrity: sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==} 1578 | engines: {node: '>= 0.10'} 1579 | 1580 | replace-homedir@1.0.0: 1581 | resolution: {integrity: sha512-CHPV/GAglbIB1tnQgaiysb8H2yCy8WQ7lcEwQ/eT+kLj0QHV8LnJW0zpqpE7RSkrMSRoa+EBoag86clf7WAgSg==} 1582 | engines: {node: '>= 0.10'} 1583 | 1584 | require-directory@2.1.1: 1585 | resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} 1586 | engines: {node: '>=0.10.0'} 1587 | 1588 | require-main-filename@1.0.1: 1589 | resolution: {integrity: sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==} 1590 | 1591 | resolve-dir@1.0.1: 1592 | resolution: {integrity: sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==} 1593 | engines: {node: '>=0.10.0'} 1594 | 1595 | resolve-from@4.0.0: 1596 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 1597 | engines: {node: '>=4'} 1598 | 1599 | resolve-options@1.1.0: 1600 | resolution: {integrity: sha512-NYDgziiroVeDC29xq7bp/CacZERYsA9bXYd1ZmcJlF3BcrZv5pTb4NG7SjdyKDnXZ84aC4vo2u6sNKIA1LCu/A==} 1601 | engines: {node: '>= 0.10'} 1602 | 1603 | resolve-url@0.2.1: 1604 | resolution: {integrity: sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==} 1605 | deprecated: https://github.com/lydell/resolve-url#deprecated 1606 | 1607 | resolve@1.22.1: 1608 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} 1609 | hasBin: true 1610 | 1611 | ret@0.1.15: 1612 | resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==} 1613 | engines: {node: '>=0.12'} 1614 | 1615 | reusify@1.0.4: 1616 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1617 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1618 | 1619 | rimraf@3.0.2: 1620 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 1621 | deprecated: Rimraf versions prior to v4 are no longer supported 1622 | hasBin: true 1623 | 1624 | run-parallel@1.2.0: 1625 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1626 | 1627 | safe-buffer@5.1.2: 1628 | resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} 1629 | 1630 | safe-buffer@5.2.1: 1631 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} 1632 | 1633 | safe-regex@1.1.0: 1634 | resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==} 1635 | 1636 | sax@1.4.1: 1637 | resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} 1638 | 1639 | semver-greatest-satisfied-range@1.1.0: 1640 | resolution: {integrity: sha512-Ny/iyOzSSa8M5ML46IAx3iXc6tfOsYU2R4AXi2UpHk60Zrgyq6eqPj/xiOfS0rRl/iiQ/rdJkVjw/5cdUyCntQ==} 1641 | engines: {node: '>= 0.10'} 1642 | 1643 | semver@5.7.1: 1644 | resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} 1645 | hasBin: true 1646 | 1647 | semver@7.6.2: 1648 | resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} 1649 | engines: {node: '>=10'} 1650 | hasBin: true 1651 | 1652 | sentence-case@3.0.4: 1653 | resolution: {integrity: sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==} 1654 | 1655 | set-blocking@2.0.0: 1656 | resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} 1657 | 1658 | set-function-length@1.2.2: 1659 | resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} 1660 | engines: {node: '>= 0.4'} 1661 | 1662 | set-function-name@2.0.2: 1663 | resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} 1664 | engines: {node: '>= 0.4'} 1665 | 1666 | set-value@2.0.1: 1667 | resolution: {integrity: sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==} 1668 | engines: {node: '>=0.10.0'} 1669 | 1670 | shebang-command@2.0.0: 1671 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 1672 | engines: {node: '>=8'} 1673 | 1674 | shebang-regex@3.0.0: 1675 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 1676 | engines: {node: '>=8'} 1677 | 1678 | side-channel@1.0.6: 1679 | resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} 1680 | engines: {node: '>= 0.4'} 1681 | 1682 | slash@3.0.0: 1683 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 1684 | engines: {node: '>=8'} 1685 | 1686 | snapdragon-node@2.1.1: 1687 | resolution: {integrity: sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==} 1688 | engines: {node: '>=0.10.0'} 1689 | 1690 | snapdragon-util@3.0.1: 1691 | resolution: {integrity: sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==} 1692 | engines: {node: '>=0.10.0'} 1693 | 1694 | snapdragon@0.8.2: 1695 | resolution: {integrity: sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==} 1696 | engines: {node: '>=0.10.0'} 1697 | 1698 | source-map-resolve@0.5.3: 1699 | resolution: {integrity: sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==} 1700 | deprecated: See https://github.com/lydell/source-map-resolve#deprecated 1701 | 1702 | source-map-url@0.4.1: 1703 | resolution: {integrity: sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==} 1704 | deprecated: See https://github.com/lydell/source-map-url#deprecated 1705 | 1706 | source-map@0.5.7: 1707 | resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} 1708 | engines: {node: '>=0.10.0'} 1709 | 1710 | source-map@0.6.1: 1711 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} 1712 | engines: {node: '>=0.10.0'} 1713 | 1714 | sparkles@1.0.1: 1715 | resolution: {integrity: sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==} 1716 | engines: {node: '>= 0.10'} 1717 | 1718 | spdx-correct@3.1.1: 1719 | resolution: {integrity: sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==} 1720 | 1721 | spdx-exceptions@2.3.0: 1722 | resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} 1723 | 1724 | spdx-expression-parse@3.0.1: 1725 | resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} 1726 | 1727 | spdx-license-ids@3.0.11: 1728 | resolution: {integrity: sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==} 1729 | 1730 | split-string@3.1.0: 1731 | resolution: {integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==} 1732 | engines: {node: '>=0.10.0'} 1733 | 1734 | stack-trace@0.0.10: 1735 | resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==} 1736 | 1737 | static-extend@0.1.2: 1738 | resolution: {integrity: sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==} 1739 | engines: {node: '>=0.10.0'} 1740 | 1741 | stop-iteration-iterator@1.0.0: 1742 | resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} 1743 | engines: {node: '>= 0.4'} 1744 | 1745 | stream-exhaust@1.0.2: 1746 | resolution: {integrity: sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==} 1747 | 1748 | stream-shift@1.0.3: 1749 | resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==} 1750 | 1751 | string-width@1.0.2: 1752 | resolution: {integrity: sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==} 1753 | engines: {node: '>=0.10.0'} 1754 | 1755 | string-width@4.2.3: 1756 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 1757 | engines: {node: '>=8'} 1758 | 1759 | string_decoder@1.1.1: 1760 | resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} 1761 | 1762 | strip-ansi@3.0.1: 1763 | resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==} 1764 | engines: {node: '>=0.10.0'} 1765 | 1766 | strip-ansi@6.0.1: 1767 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 1768 | engines: {node: '>=8'} 1769 | 1770 | strip-bom@2.0.0: 1771 | resolution: {integrity: sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==} 1772 | engines: {node: '>=0.10.0'} 1773 | 1774 | strip-json-comments@3.1.1: 1775 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 1776 | engines: {node: '>=8'} 1777 | 1778 | supports-color@7.2.0: 1779 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 1780 | engines: {node: '>=8'} 1781 | 1782 | supports-preserve-symlinks-flag@1.0.0: 1783 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 1784 | engines: {node: '>= 0.4'} 1785 | 1786 | sver-compat@1.5.0: 1787 | resolution: {integrity: sha512-aFTHfmjwizMNlNE6dsGmoAM4lHjL0CyiobWaFiXWSlD7cIxshW422Nb8KbXCmR6z+0ZEPY+daXJrDyh/vuwTyg==} 1788 | 1789 | text-table@0.2.0: 1790 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 1791 | 1792 | through2-filter@3.0.0: 1793 | resolution: {integrity: sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==} 1794 | 1795 | through2@2.0.5: 1796 | resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} 1797 | 1798 | time-stamp@1.1.0: 1799 | resolution: {integrity: sha512-gLCeArryy2yNTRzTGKbZbloctj64jkZ57hj5zdraXue6aFgd6PmvVtEyiUU+hvU0v7q08oVv8r8ev0tRo6bvgw==} 1800 | engines: {node: '>=0.10.0'} 1801 | 1802 | title-case@3.0.3: 1803 | resolution: {integrity: sha512-e1zGYRvbffpcHIrnuqT0Dh+gEJtDaxDSoG4JAIpq4oDFyooziLBIiYQv0GBT4FUAnUop5uZ1hiIAj7oAF6sOCA==} 1804 | 1805 | to-absolute-glob@2.0.2: 1806 | resolution: {integrity: sha512-rtwLUQEwT8ZeKQbyFJyomBRYXyE16U5VKuy0ftxLMK/PZb2fkOsg5r9kHdauuVDbsNdIBoC/HCthpidamQFXYA==} 1807 | engines: {node: '>=0.10.0'} 1808 | 1809 | to-object-path@0.3.0: 1810 | resolution: {integrity: sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==} 1811 | engines: {node: '>=0.10.0'} 1812 | 1813 | to-regex-range@2.1.1: 1814 | resolution: {integrity: sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==} 1815 | engines: {node: '>=0.10.0'} 1816 | 1817 | to-regex-range@5.0.1: 1818 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1819 | engines: {node: '>=8.0'} 1820 | 1821 | to-regex@3.0.2: 1822 | resolution: {integrity: sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==} 1823 | engines: {node: '>=0.10.0'} 1824 | 1825 | to-through@2.0.0: 1826 | resolution: {integrity: sha512-+QIz37Ly7acM4EMdw2PRN389OneM5+d844tirkGp4dPKzI5OE72V9OsbFp+CIYJDahZ41ZV05hNtcPAQUAm9/Q==} 1827 | engines: {node: '>= 0.10'} 1828 | 1829 | transliteration@2.3.5: 1830 | resolution: {integrity: sha512-HAGI4Lq4Q9dZ3Utu2phaWgtm3vB6PkLUFqWAScg/UW+1eZ/Tg6Exo4oC0/3VUol/w4BlefLhUUSVBr/9/ZGQOw==} 1831 | engines: {node: '>=6.0.0'} 1832 | hasBin: true 1833 | 1834 | ts-api-utils@1.3.0: 1835 | resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} 1836 | engines: {node: '>=16'} 1837 | peerDependencies: 1838 | typescript: '>=4.2.0' 1839 | 1840 | tslib@2.6.3: 1841 | resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} 1842 | 1843 | type-check@0.4.0: 1844 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 1845 | engines: {node: '>= 0.8.0'} 1846 | 1847 | type-fest@0.20.2: 1848 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 1849 | engines: {node: '>=10'} 1850 | 1851 | type@1.2.0: 1852 | resolution: {integrity: sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==} 1853 | 1854 | type@2.6.0: 1855 | resolution: {integrity: sha512-eiDBDOmkih5pMbo9OqsqPRGMljLodLcwd5XD5JbtNB0o89xZAwynY9EdCDsJU7LtcVCClu9DvM7/0Ep1hYX3EQ==} 1856 | 1857 | typedarray@0.0.6: 1858 | resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} 1859 | 1860 | typescript@5.5.3: 1861 | resolution: {integrity: sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==} 1862 | engines: {node: '>=14.17'} 1863 | hasBin: true 1864 | 1865 | unc-path-regex@0.1.2: 1866 | resolution: {integrity: sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==} 1867 | engines: {node: '>=0.10.0'} 1868 | 1869 | undertaker-registry@1.0.1: 1870 | resolution: {integrity: sha512-UR1khWeAjugW3548EfQmL9Z7pGMlBgXteQpr1IZeZBtnkCJQJIJ1Scj0mb9wQaPvUZ9Q17XqW6TIaPchJkyfqw==} 1871 | engines: {node: '>= 0.10'} 1872 | 1873 | undertaker@1.3.0: 1874 | resolution: {integrity: sha512-/RXwi5m/Mu3H6IHQGww3GNt1PNXlbeCuclF2QYR14L/2CHPz3DFZkvB5hZ0N/QUkiXWCACML2jXViIQEQc2MLg==} 1875 | engines: {node: '>= 0.10'} 1876 | 1877 | union-value@1.0.1: 1878 | resolution: {integrity: sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==} 1879 | engines: {node: '>=0.10.0'} 1880 | 1881 | unique-stream@2.3.1: 1882 | resolution: {integrity: sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==} 1883 | 1884 | unset-value@1.0.0: 1885 | resolution: {integrity: sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==} 1886 | engines: {node: '>=0.10.0'} 1887 | 1888 | upath@1.2.0: 1889 | resolution: {integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==} 1890 | engines: {node: '>=4'} 1891 | 1892 | upper-case-first@2.0.2: 1893 | resolution: {integrity: sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==} 1894 | 1895 | uri-js@4.4.1: 1896 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 1897 | 1898 | urix@0.1.0: 1899 | resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==} 1900 | deprecated: Please see https://github.com/lydell/urix#deprecated 1901 | 1902 | use@3.1.1: 1903 | resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==} 1904 | engines: {node: '>=0.10.0'} 1905 | 1906 | util-deprecate@1.0.2: 1907 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 1908 | 1909 | util@0.12.5: 1910 | resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} 1911 | 1912 | v8flags@3.2.0: 1913 | resolution: {integrity: sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==} 1914 | engines: {node: '>= 0.10'} 1915 | 1916 | validate-npm-package-license@3.0.4: 1917 | resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} 1918 | 1919 | value-or-function@3.0.0: 1920 | resolution: {integrity: sha512-jdBB2FrWvQC/pnPtIqcLsMaQgjhdb6B7tk1MMyTKapox+tQZbdRP4uLxu/JY0t7fbfDCUMnuelzEYv5GsxHhdg==} 1921 | engines: {node: '>= 0.10'} 1922 | 1923 | vinyl-fs@3.0.3: 1924 | resolution: {integrity: sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==} 1925 | engines: {node: '>= 0.10'} 1926 | 1927 | vinyl-sourcemap@1.1.0: 1928 | resolution: {integrity: sha512-NiibMgt6VJGJmyw7vtzhctDcfKch4e4n9TBeoWlirb7FMg9/1Ov9k+A5ZRAtywBpRPiyECvQRQllYM8dECegVA==} 1929 | engines: {node: '>= 0.10'} 1930 | 1931 | vinyl@2.2.1: 1932 | resolution: {integrity: sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==} 1933 | engines: {node: '>= 0.10'} 1934 | 1935 | which-boxed-primitive@1.0.2: 1936 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} 1937 | 1938 | which-collection@1.0.2: 1939 | resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} 1940 | engines: {node: '>= 0.4'} 1941 | 1942 | which-module@1.0.0: 1943 | resolution: {integrity: sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==} 1944 | 1945 | which-typed-array@1.1.15: 1946 | resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} 1947 | engines: {node: '>= 0.4'} 1948 | 1949 | which@1.3.1: 1950 | resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} 1951 | hasBin: true 1952 | 1953 | which@2.0.2: 1954 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 1955 | engines: {node: '>= 8'} 1956 | hasBin: true 1957 | 1958 | word-wrap@1.2.5: 1959 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} 1960 | engines: {node: '>=0.10.0'} 1961 | 1962 | wrap-ansi@2.1.0: 1963 | resolution: {integrity: sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw==} 1964 | engines: {node: '>=0.10.0'} 1965 | 1966 | wrap-ansi@7.0.0: 1967 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 1968 | engines: {node: '>=10'} 1969 | 1970 | wrappy@1.0.2: 1971 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 1972 | 1973 | xml2js@0.6.2: 1974 | resolution: {integrity: sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA==} 1975 | engines: {node: '>=4.0.0'} 1976 | 1977 | xmlbuilder@11.0.1: 1978 | resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==} 1979 | engines: {node: '>=4.0'} 1980 | 1981 | xtend@4.0.2: 1982 | resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} 1983 | engines: {node: '>=0.4'} 1984 | 1985 | y18n@3.2.2: 1986 | resolution: {integrity: sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==} 1987 | 1988 | y18n@5.0.8: 1989 | resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} 1990 | engines: {node: '>=10'} 1991 | 1992 | yargs-parser@21.1.1: 1993 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} 1994 | engines: {node: '>=12'} 1995 | 1996 | yargs-parser@5.0.1: 1997 | resolution: {integrity: sha512-wpav5XYiddjXxirPoCTUPbqM0PXvJ9hiBMvuJgInvo4/lAOTZzUprArw17q2O1P2+GHhbBr18/iQwjL5Z9BqfA==} 1998 | 1999 | yargs@17.7.2: 2000 | resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} 2001 | engines: {node: '>=12'} 2002 | 2003 | yargs@7.1.2: 2004 | resolution: {integrity: sha512-ZEjj/dQYQy0Zx0lgLMLR8QuaqTihnxirir7EwUHp1Axq4e3+k8jXU5K0VLbNvedv1f4EWtBonDIZm0NUr+jCcA==} 2005 | 2006 | yocto-queue@0.1.0: 2007 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 2008 | engines: {node: '>=10'} 2009 | 2010 | snapshots: 2011 | 2012 | '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': 2013 | dependencies: 2014 | eslint: 8.57.0 2015 | eslint-visitor-keys: 3.3.0 2016 | 2017 | '@eslint-community/regexpp@4.11.0': {} 2018 | 2019 | '@eslint/eslintrc@2.1.4': 2020 | dependencies: 2021 | ajv: 6.12.6 2022 | debug: 4.3.5 2023 | espree: 9.6.1 2024 | globals: 13.24.0 2025 | ignore: 5.2.0 2026 | import-fresh: 3.3.0 2027 | js-yaml: 4.1.0 2028 | minimatch: 3.1.2 2029 | strip-json-comments: 3.1.1 2030 | transitivePeerDependencies: 2031 | - supports-color 2032 | 2033 | '@eslint/js@8.57.0': {} 2034 | 2035 | '@humanwhocodes/config-array@0.11.14': 2036 | dependencies: 2037 | '@humanwhocodes/object-schema': 2.0.3 2038 | debug: 4.3.5 2039 | minimatch: 3.1.2 2040 | transitivePeerDependencies: 2041 | - supports-color 2042 | 2043 | '@humanwhocodes/module-importer@1.0.1': {} 2044 | 2045 | '@humanwhocodes/object-schema@2.0.3': {} 2046 | 2047 | '@n8n/tournament@1.0.2': 2048 | dependencies: 2049 | '@n8n_io/riot-tmpl': 4.0.1 2050 | ast-types: 0.16.1 2051 | esprima-next: 5.8.4 2052 | recast: 0.22.0 2053 | 2054 | '@n8n_io/riot-tmpl@4.0.0': 2055 | dependencies: 2056 | eslint-config-riot: 1.0.0 2057 | 2058 | '@n8n_io/riot-tmpl@4.0.1': 2059 | dependencies: 2060 | eslint-config-riot: 1.0.0 2061 | 2062 | '@nodelib/fs.scandir@2.1.5': 2063 | dependencies: 2064 | '@nodelib/fs.stat': 2.0.5 2065 | run-parallel: 1.2.0 2066 | 2067 | '@nodelib/fs.stat@2.0.5': {} 2068 | 2069 | '@nodelib/fs.walk@1.2.8': 2070 | dependencies: 2071 | '@nodelib/fs.scandir': 2.1.5 2072 | fastq: 1.13.0 2073 | 2074 | '@types/json-schema@7.0.15': {} 2075 | 2076 | '@types/semver@7.5.8': {} 2077 | 2078 | '@typescript-eslint/parser@7.15.0(eslint@8.57.0)(typescript@5.5.3)': 2079 | dependencies: 2080 | '@typescript-eslint/scope-manager': 7.15.0 2081 | '@typescript-eslint/types': 7.15.0 2082 | '@typescript-eslint/typescript-estree': 7.15.0(typescript@5.5.3) 2083 | '@typescript-eslint/visitor-keys': 7.15.0 2084 | debug: 4.3.5 2085 | eslint: 8.57.0 2086 | optionalDependencies: 2087 | typescript: 5.5.3 2088 | transitivePeerDependencies: 2089 | - supports-color 2090 | 2091 | '@typescript-eslint/scope-manager@6.21.0': 2092 | dependencies: 2093 | '@typescript-eslint/types': 6.21.0 2094 | '@typescript-eslint/visitor-keys': 6.21.0 2095 | 2096 | '@typescript-eslint/scope-manager@7.15.0': 2097 | dependencies: 2098 | '@typescript-eslint/types': 7.15.0 2099 | '@typescript-eslint/visitor-keys': 7.15.0 2100 | 2101 | '@typescript-eslint/types@6.21.0': {} 2102 | 2103 | '@typescript-eslint/types@7.15.0': {} 2104 | 2105 | '@typescript-eslint/typescript-estree@6.21.0(typescript@5.5.3)': 2106 | dependencies: 2107 | '@typescript-eslint/types': 6.21.0 2108 | '@typescript-eslint/visitor-keys': 6.21.0 2109 | debug: 4.3.5 2110 | globby: 11.1.0 2111 | is-glob: 4.0.3 2112 | minimatch: 9.0.3 2113 | semver: 7.6.2 2114 | ts-api-utils: 1.3.0(typescript@5.5.3) 2115 | optionalDependencies: 2116 | typescript: 5.5.3 2117 | transitivePeerDependencies: 2118 | - supports-color 2119 | 2120 | '@typescript-eslint/typescript-estree@7.15.0(typescript@5.5.3)': 2121 | dependencies: 2122 | '@typescript-eslint/types': 7.15.0 2123 | '@typescript-eslint/visitor-keys': 7.15.0 2124 | debug: 4.3.5 2125 | globby: 11.1.0 2126 | is-glob: 4.0.3 2127 | minimatch: 9.0.5 2128 | semver: 7.6.2 2129 | ts-api-utils: 1.3.0(typescript@5.5.3) 2130 | optionalDependencies: 2131 | typescript: 5.5.3 2132 | transitivePeerDependencies: 2133 | - supports-color 2134 | 2135 | '@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.5.3)': 2136 | dependencies: 2137 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) 2138 | '@types/json-schema': 7.0.15 2139 | '@types/semver': 7.5.8 2140 | '@typescript-eslint/scope-manager': 6.21.0 2141 | '@typescript-eslint/types': 6.21.0 2142 | '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.5.3) 2143 | eslint: 8.57.0 2144 | semver: 7.6.2 2145 | transitivePeerDependencies: 2146 | - supports-color 2147 | - typescript 2148 | 2149 | '@typescript-eslint/visitor-keys@6.21.0': 2150 | dependencies: 2151 | '@typescript-eslint/types': 6.21.0 2152 | eslint-visitor-keys: 3.4.3 2153 | 2154 | '@typescript-eslint/visitor-keys@7.15.0': 2155 | dependencies: 2156 | '@typescript-eslint/types': 7.15.0 2157 | eslint-visitor-keys: 3.4.3 2158 | 2159 | '@ungap/structured-clone@1.2.0': {} 2160 | 2161 | acorn-jsx@5.3.2(acorn@8.12.1): 2162 | dependencies: 2163 | acorn: 8.12.1 2164 | 2165 | acorn@8.12.1: {} 2166 | 2167 | ajv@6.12.6: 2168 | dependencies: 2169 | fast-deep-equal: 3.1.3 2170 | fast-json-stable-stringify: 2.1.0 2171 | json-schema-traverse: 0.4.1 2172 | uri-js: 4.4.1 2173 | 2174 | ansi-colors@1.1.0: 2175 | dependencies: 2176 | ansi-wrap: 0.1.0 2177 | 2178 | ansi-gray@0.1.1: 2179 | dependencies: 2180 | ansi-wrap: 0.1.0 2181 | 2182 | ansi-regex@2.1.1: {} 2183 | 2184 | ansi-regex@5.0.1: {} 2185 | 2186 | ansi-styles@4.3.0: 2187 | dependencies: 2188 | color-convert: 2.0.1 2189 | 2190 | ansi-wrap@0.1.0: {} 2191 | 2192 | anymatch@2.0.0: 2193 | dependencies: 2194 | micromatch: 3.1.10 2195 | normalize-path: 2.1.1 2196 | transitivePeerDependencies: 2197 | - supports-color 2198 | 2199 | append-buffer@1.0.2: 2200 | dependencies: 2201 | buffer-equal: 1.0.0 2202 | 2203 | archy@1.0.0: {} 2204 | 2205 | argparse@2.0.1: {} 2206 | 2207 | arr-diff@4.0.0: {} 2208 | 2209 | arr-filter@1.1.2: 2210 | dependencies: 2211 | make-iterator: 1.0.1 2212 | 2213 | arr-flatten@1.1.0: {} 2214 | 2215 | arr-map@2.0.2: 2216 | dependencies: 2217 | make-iterator: 1.0.1 2218 | 2219 | arr-union@3.1.0: {} 2220 | 2221 | array-each@1.0.1: {} 2222 | 2223 | array-initial@1.1.0: 2224 | dependencies: 2225 | array-slice: 1.1.0 2226 | is-number: 4.0.0 2227 | 2228 | array-last@1.3.0: 2229 | dependencies: 2230 | is-number: 4.0.0 2231 | 2232 | array-slice@1.1.0: {} 2233 | 2234 | array-sort@1.0.0: 2235 | dependencies: 2236 | default-compare: 1.0.0 2237 | get-value: 2.0.6 2238 | kind-of: 5.1.0 2239 | 2240 | array-union@2.1.0: {} 2241 | 2242 | array-unique@0.3.2: {} 2243 | 2244 | assert@2.1.0: 2245 | dependencies: 2246 | call-bind: 1.0.7 2247 | is-nan: 1.3.2 2248 | object-is: 1.1.6 2249 | object.assign: 4.1.5 2250 | util: 0.12.5 2251 | 2252 | assign-symbols@1.0.0: {} 2253 | 2254 | ast-types@0.15.2: 2255 | dependencies: 2256 | tslib: 2.6.3 2257 | 2258 | ast-types@0.16.1: 2259 | dependencies: 2260 | tslib: 2.6.3 2261 | 2262 | async-done@1.3.2: 2263 | dependencies: 2264 | end-of-stream: 1.4.4 2265 | once: 1.4.0 2266 | process-nextick-args: 2.0.1 2267 | stream-exhaust: 1.0.2 2268 | 2269 | async-each@1.0.3: {} 2270 | 2271 | async-settle@1.0.0: 2272 | dependencies: 2273 | async-done: 1.3.2 2274 | 2275 | asynckit@0.4.0: {} 2276 | 2277 | atob@2.1.2: {} 2278 | 2279 | available-typed-arrays@1.0.7: 2280 | dependencies: 2281 | possible-typed-array-names: 1.0.0 2282 | 2283 | axios@1.6.7: 2284 | dependencies: 2285 | follow-redirects: 1.15.6 2286 | form-data: 4.0.0 2287 | proxy-from-env: 1.1.0 2288 | transitivePeerDependencies: 2289 | - debug 2290 | 2291 | bach@1.2.0: 2292 | dependencies: 2293 | arr-filter: 1.1.2 2294 | arr-flatten: 1.1.0 2295 | arr-map: 2.0.2 2296 | array-each: 1.0.1 2297 | array-initial: 1.1.0 2298 | array-last: 1.3.0 2299 | async-done: 1.3.2 2300 | async-settle: 1.0.0 2301 | now-and-later: 2.0.1 2302 | 2303 | balanced-match@1.0.2: {} 2304 | 2305 | base@0.11.2: 2306 | dependencies: 2307 | cache-base: 1.0.1 2308 | class-utils: 0.3.6 2309 | component-emitter: 1.3.0 2310 | define-property: 1.0.0 2311 | isobject: 3.0.1 2312 | mixin-deep: 1.3.2 2313 | pascalcase: 0.1.1 2314 | 2315 | binary-extensions@1.13.1: {} 2316 | 2317 | bindings@1.5.0: 2318 | dependencies: 2319 | file-uri-to-path: 1.0.0 2320 | optional: true 2321 | 2322 | brace-expansion@1.1.11: 2323 | dependencies: 2324 | balanced-match: 1.0.2 2325 | concat-map: 0.0.1 2326 | 2327 | brace-expansion@2.0.1: 2328 | dependencies: 2329 | balanced-match: 1.0.2 2330 | 2331 | braces@2.3.2: 2332 | dependencies: 2333 | arr-flatten: 1.1.0 2334 | array-unique: 0.3.2 2335 | extend-shallow: 2.0.1 2336 | fill-range: 4.0.0 2337 | isobject: 3.0.1 2338 | repeat-element: 1.1.4 2339 | snapdragon: 0.8.2 2340 | snapdragon-node: 2.1.1 2341 | split-string: 3.1.0 2342 | to-regex: 3.0.2 2343 | transitivePeerDependencies: 2344 | - supports-color 2345 | 2346 | braces@3.0.3: 2347 | dependencies: 2348 | fill-range: 7.1.1 2349 | 2350 | buffer-equal@1.0.0: {} 2351 | 2352 | buffer-from@1.1.2: {} 2353 | 2354 | cache-base@1.0.1: 2355 | dependencies: 2356 | collection-visit: 1.0.0 2357 | component-emitter: 1.3.0 2358 | get-value: 2.0.6 2359 | has-value: 1.0.0 2360 | isobject: 3.0.1 2361 | set-value: 2.0.1 2362 | to-object-path: 0.3.0 2363 | union-value: 1.0.1 2364 | unset-value: 1.0.0 2365 | 2366 | call-bind@1.0.7: 2367 | dependencies: 2368 | es-define-property: 1.0.0 2369 | es-errors: 1.3.0 2370 | function-bind: 1.1.2 2371 | get-intrinsic: 1.2.4 2372 | set-function-length: 1.2.2 2373 | 2374 | callsites@3.1.0: {} 2375 | 2376 | camel-case@4.1.2: 2377 | dependencies: 2378 | pascal-case: 3.1.2 2379 | tslib: 2.6.3 2380 | 2381 | camelcase@3.0.0: {} 2382 | 2383 | chalk@4.1.2: 2384 | dependencies: 2385 | ansi-styles: 4.3.0 2386 | supports-color: 7.2.0 2387 | 2388 | charenc@0.0.2: {} 2389 | 2390 | chokidar@2.1.8: 2391 | dependencies: 2392 | anymatch: 2.0.0 2393 | async-each: 1.0.3 2394 | braces: 2.3.2 2395 | glob-parent: 3.1.0 2396 | inherits: 2.0.4 2397 | is-binary-path: 1.0.1 2398 | is-glob: 4.0.3 2399 | normalize-path: 3.0.0 2400 | path-is-absolute: 1.0.1 2401 | readdirp: 2.2.1 2402 | upath: 1.2.0 2403 | optionalDependencies: 2404 | fsevents: 1.2.13 2405 | transitivePeerDependencies: 2406 | - supports-color 2407 | 2408 | class-utils@0.3.6: 2409 | dependencies: 2410 | arr-union: 3.1.0 2411 | define-property: 0.2.5 2412 | isobject: 3.0.1 2413 | static-extend: 0.1.2 2414 | 2415 | cliui@3.2.0: 2416 | dependencies: 2417 | string-width: 1.0.2 2418 | strip-ansi: 3.0.1 2419 | wrap-ansi: 2.1.0 2420 | 2421 | cliui@8.0.1: 2422 | dependencies: 2423 | string-width: 4.2.3 2424 | strip-ansi: 6.0.1 2425 | wrap-ansi: 7.0.0 2426 | 2427 | clone-buffer@1.0.0: {} 2428 | 2429 | clone-stats@1.0.0: {} 2430 | 2431 | clone@2.1.2: {} 2432 | 2433 | cloneable-readable@1.1.3: 2434 | dependencies: 2435 | inherits: 2.0.4 2436 | process-nextick-args: 2.0.1 2437 | readable-stream: 2.3.7 2438 | 2439 | code-point-at@1.1.0: {} 2440 | 2441 | collection-map@1.0.0: 2442 | dependencies: 2443 | arr-map: 2.0.2 2444 | for-own: 1.0.0 2445 | make-iterator: 1.0.1 2446 | 2447 | collection-visit@1.0.0: 2448 | dependencies: 2449 | map-visit: 1.0.0 2450 | object-visit: 1.0.1 2451 | 2452 | color-convert@2.0.1: 2453 | dependencies: 2454 | color-name: 1.1.4 2455 | 2456 | color-name@1.1.4: {} 2457 | 2458 | color-support@1.1.3: {} 2459 | 2460 | combined-stream@1.0.8: 2461 | dependencies: 2462 | delayed-stream: 1.0.0 2463 | 2464 | component-emitter@1.3.0: {} 2465 | 2466 | concat-map@0.0.1: {} 2467 | 2468 | concat-stream@1.6.2: 2469 | dependencies: 2470 | buffer-from: 1.1.2 2471 | inherits: 2.0.4 2472 | readable-stream: 2.3.7 2473 | typedarray: 0.0.6 2474 | 2475 | convert-source-map@1.8.0: 2476 | dependencies: 2477 | safe-buffer: 5.1.2 2478 | 2479 | copy-descriptor@0.1.1: {} 2480 | 2481 | copy-props@2.0.5: 2482 | dependencies: 2483 | each-props: 1.3.2 2484 | is-plain-object: 5.0.0 2485 | 2486 | core-util-is@1.0.3: {} 2487 | 2488 | cross-spawn@7.0.3: 2489 | dependencies: 2490 | path-key: 3.1.1 2491 | shebang-command: 2.0.0 2492 | which: 2.0.2 2493 | 2494 | crypt@0.0.2: {} 2495 | 2496 | d@1.0.1: 2497 | dependencies: 2498 | es5-ext: 0.10.61 2499 | type: 1.2.0 2500 | 2501 | debug@2.6.9: 2502 | dependencies: 2503 | ms: 2.0.0 2504 | 2505 | debug@4.3.5: 2506 | dependencies: 2507 | ms: 2.1.2 2508 | 2509 | decamelize@1.2.0: {} 2510 | 2511 | decode-uri-component@0.2.0: {} 2512 | 2513 | deep-equal@2.2.0: 2514 | dependencies: 2515 | call-bind: 1.0.7 2516 | es-get-iterator: 1.1.3 2517 | get-intrinsic: 1.2.4 2518 | is-arguments: 1.1.1 2519 | is-array-buffer: 3.0.4 2520 | is-date-object: 1.0.5 2521 | is-regex: 1.1.4 2522 | is-shared-array-buffer: 1.0.3 2523 | isarray: 2.0.5 2524 | object-is: 1.1.6 2525 | object-keys: 1.1.1 2526 | object.assign: 4.1.5 2527 | regexp.prototype.flags: 1.5.2 2528 | side-channel: 1.0.6 2529 | which-boxed-primitive: 1.0.2 2530 | which-collection: 1.0.2 2531 | which-typed-array: 1.1.15 2532 | 2533 | deep-is@0.1.4: {} 2534 | 2535 | default-compare@1.0.0: 2536 | dependencies: 2537 | kind-of: 5.1.0 2538 | 2539 | default-resolution@2.0.0: {} 2540 | 2541 | define-data-property@1.1.4: 2542 | dependencies: 2543 | es-define-property: 1.0.0 2544 | es-errors: 1.3.0 2545 | gopd: 1.0.1 2546 | 2547 | define-properties@1.2.1: 2548 | dependencies: 2549 | define-data-property: 1.1.4 2550 | has-property-descriptors: 1.0.2 2551 | object-keys: 1.1.1 2552 | 2553 | define-property@0.2.5: 2554 | dependencies: 2555 | is-descriptor: 0.1.6 2556 | 2557 | define-property@1.0.0: 2558 | dependencies: 2559 | is-descriptor: 1.0.2 2560 | 2561 | define-property@2.0.2: 2562 | dependencies: 2563 | is-descriptor: 1.0.2 2564 | isobject: 3.0.1 2565 | 2566 | delayed-stream@1.0.0: {} 2567 | 2568 | detect-file@1.0.0: {} 2569 | 2570 | dir-glob@3.0.1: 2571 | dependencies: 2572 | path-type: 4.0.0 2573 | 2574 | doctrine@3.0.0: 2575 | dependencies: 2576 | esutils: 2.0.3 2577 | 2578 | duplexify@3.7.1: 2579 | dependencies: 2580 | end-of-stream: 1.4.4 2581 | inherits: 2.0.4 2582 | readable-stream: 2.3.7 2583 | stream-shift: 1.0.3 2584 | 2585 | each-props@1.3.2: 2586 | dependencies: 2587 | is-plain-object: 2.0.4 2588 | object.defaults: 1.1.0 2589 | 2590 | emoji-regex@8.0.0: {} 2591 | 2592 | end-of-stream@1.4.4: 2593 | dependencies: 2594 | once: 1.4.0 2595 | 2596 | error-ex@1.3.2: 2597 | dependencies: 2598 | is-arrayish: 0.2.1 2599 | 2600 | es-define-property@1.0.0: 2601 | dependencies: 2602 | get-intrinsic: 1.2.4 2603 | 2604 | es-errors@1.3.0: {} 2605 | 2606 | es-get-iterator@1.1.3: 2607 | dependencies: 2608 | call-bind: 1.0.7 2609 | get-intrinsic: 1.2.4 2610 | has-symbols: 1.0.3 2611 | is-arguments: 1.1.1 2612 | is-map: 2.0.3 2613 | is-set: 2.0.3 2614 | is-string: 1.0.7 2615 | isarray: 2.0.5 2616 | stop-iteration-iterator: 1.0.0 2617 | 2618 | es5-ext@0.10.61: 2619 | dependencies: 2620 | es6-iterator: 2.0.3 2621 | es6-symbol: 3.1.3 2622 | next-tick: 1.1.0 2623 | 2624 | es6-iterator@2.0.3: 2625 | dependencies: 2626 | d: 1.0.1 2627 | es5-ext: 0.10.61 2628 | es6-symbol: 3.1.3 2629 | 2630 | es6-symbol@3.1.3: 2631 | dependencies: 2632 | d: 1.0.1 2633 | ext: 1.6.0 2634 | 2635 | es6-weak-map@2.0.3: 2636 | dependencies: 2637 | d: 1.0.1 2638 | es5-ext: 0.10.61 2639 | es6-iterator: 2.0.3 2640 | es6-symbol: 3.1.3 2641 | 2642 | escalade@3.1.2: {} 2643 | 2644 | escape-string-regexp@4.0.0: {} 2645 | 2646 | eslint-config-riot@1.0.0: {} 2647 | 2648 | eslint-plugin-n8n-nodes-base@1.16.1(eslint@8.57.0)(typescript@5.5.3): 2649 | dependencies: 2650 | '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.5.3) 2651 | camel-case: 4.1.2 2652 | indefinite: 2.5.1 2653 | pascal-case: 3.1.2 2654 | pluralize: 8.0.0 2655 | sentence-case: 3.0.4 2656 | title-case: 3.0.3 2657 | transitivePeerDependencies: 2658 | - eslint 2659 | - supports-color 2660 | - typescript 2661 | 2662 | eslint-scope@7.2.2: 2663 | dependencies: 2664 | esrecurse: 4.3.0 2665 | estraverse: 5.3.0 2666 | 2667 | eslint-visitor-keys@3.3.0: {} 2668 | 2669 | eslint-visitor-keys@3.4.3: {} 2670 | 2671 | eslint@8.57.0: 2672 | dependencies: 2673 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) 2674 | '@eslint-community/regexpp': 4.11.0 2675 | '@eslint/eslintrc': 2.1.4 2676 | '@eslint/js': 8.57.0 2677 | '@humanwhocodes/config-array': 0.11.14 2678 | '@humanwhocodes/module-importer': 1.0.1 2679 | '@nodelib/fs.walk': 1.2.8 2680 | '@ungap/structured-clone': 1.2.0 2681 | ajv: 6.12.6 2682 | chalk: 4.1.2 2683 | cross-spawn: 7.0.3 2684 | debug: 4.3.5 2685 | doctrine: 3.0.0 2686 | escape-string-regexp: 4.0.0 2687 | eslint-scope: 7.2.2 2688 | eslint-visitor-keys: 3.4.3 2689 | espree: 9.6.1 2690 | esquery: 1.5.0 2691 | esutils: 2.0.3 2692 | fast-deep-equal: 3.1.3 2693 | file-entry-cache: 6.0.1 2694 | find-up: 5.0.0 2695 | glob-parent: 6.0.2 2696 | globals: 13.24.0 2697 | graphemer: 1.4.0 2698 | ignore: 5.2.0 2699 | imurmurhash: 0.1.4 2700 | is-glob: 4.0.3 2701 | is-path-inside: 3.0.3 2702 | js-yaml: 4.1.0 2703 | json-stable-stringify-without-jsonify: 1.0.1 2704 | levn: 0.4.1 2705 | lodash.merge: 4.6.2 2706 | minimatch: 3.1.2 2707 | natural-compare: 1.4.0 2708 | optionator: 0.9.4 2709 | strip-ansi: 6.0.1 2710 | text-table: 0.2.0 2711 | transitivePeerDependencies: 2712 | - supports-color 2713 | 2714 | espree@9.6.1: 2715 | dependencies: 2716 | acorn: 8.12.1 2717 | acorn-jsx: 5.3.2(acorn@8.12.1) 2718 | eslint-visitor-keys: 3.4.3 2719 | 2720 | esprima-next@5.8.4: {} 2721 | 2722 | esprima@4.0.1: {} 2723 | 2724 | esquery@1.5.0: 2725 | dependencies: 2726 | estraverse: 5.3.0 2727 | 2728 | esrecurse@4.3.0: 2729 | dependencies: 2730 | estraverse: 5.3.0 2731 | 2732 | estraverse@5.3.0: {} 2733 | 2734 | esutils@2.0.3: {} 2735 | 2736 | expand-brackets@2.1.4: 2737 | dependencies: 2738 | debug: 2.6.9 2739 | define-property: 0.2.5 2740 | extend-shallow: 2.0.1 2741 | posix-character-classes: 0.1.1 2742 | regex-not: 1.0.2 2743 | snapdragon: 0.8.2 2744 | to-regex: 3.0.2 2745 | transitivePeerDependencies: 2746 | - supports-color 2747 | 2748 | expand-tilde@2.0.2: 2749 | dependencies: 2750 | homedir-polyfill: 1.0.3 2751 | 2752 | ext@1.6.0: 2753 | dependencies: 2754 | type: 2.6.0 2755 | 2756 | extend-shallow@2.0.1: 2757 | dependencies: 2758 | is-extendable: 0.1.1 2759 | 2760 | extend-shallow@3.0.2: 2761 | dependencies: 2762 | assign-symbols: 1.0.0 2763 | is-extendable: 1.0.1 2764 | 2765 | extend@3.0.2: {} 2766 | 2767 | extglob@2.0.4: 2768 | dependencies: 2769 | array-unique: 0.3.2 2770 | define-property: 1.0.0 2771 | expand-brackets: 2.1.4 2772 | extend-shallow: 2.0.1 2773 | fragment-cache: 0.2.1 2774 | regex-not: 1.0.2 2775 | snapdragon: 0.8.2 2776 | to-regex: 3.0.2 2777 | transitivePeerDependencies: 2778 | - supports-color 2779 | 2780 | fancy-log@1.3.3: 2781 | dependencies: 2782 | ansi-gray: 0.1.1 2783 | color-support: 1.1.3 2784 | parse-node-version: 1.0.1 2785 | time-stamp: 1.1.0 2786 | 2787 | fast-deep-equal@3.1.3: {} 2788 | 2789 | fast-glob@3.2.11: 2790 | dependencies: 2791 | '@nodelib/fs.stat': 2.0.5 2792 | '@nodelib/fs.walk': 1.2.8 2793 | glob-parent: 5.1.2 2794 | merge2: 1.4.1 2795 | micromatch: 4.0.5 2796 | 2797 | fast-json-stable-stringify@2.1.0: {} 2798 | 2799 | fast-levenshtein@1.1.4: {} 2800 | 2801 | fast-levenshtein@2.0.6: {} 2802 | 2803 | fastq@1.13.0: 2804 | dependencies: 2805 | reusify: 1.0.4 2806 | 2807 | file-entry-cache@6.0.1: 2808 | dependencies: 2809 | flat-cache: 3.0.4 2810 | 2811 | file-uri-to-path@1.0.0: 2812 | optional: true 2813 | 2814 | fill-range@4.0.0: 2815 | dependencies: 2816 | extend-shallow: 2.0.1 2817 | is-number: 3.0.0 2818 | repeat-string: 1.6.1 2819 | to-regex-range: 2.1.1 2820 | 2821 | fill-range@7.1.1: 2822 | dependencies: 2823 | to-regex-range: 5.0.1 2824 | 2825 | find-up@1.1.2: 2826 | dependencies: 2827 | path-exists: 2.1.0 2828 | pinkie-promise: 2.0.1 2829 | 2830 | find-up@5.0.0: 2831 | dependencies: 2832 | locate-path: 6.0.0 2833 | path-exists: 4.0.0 2834 | 2835 | findup-sync@2.0.0: 2836 | dependencies: 2837 | detect-file: 1.0.0 2838 | is-glob: 3.1.0 2839 | micromatch: 3.1.10 2840 | resolve-dir: 1.0.1 2841 | transitivePeerDependencies: 2842 | - supports-color 2843 | 2844 | findup-sync@3.0.0: 2845 | dependencies: 2846 | detect-file: 1.0.0 2847 | is-glob: 4.0.3 2848 | micromatch: 3.1.10 2849 | resolve-dir: 1.0.1 2850 | transitivePeerDependencies: 2851 | - supports-color 2852 | 2853 | fined@1.2.0: 2854 | dependencies: 2855 | expand-tilde: 2.0.2 2856 | is-plain-object: 2.0.4 2857 | object.defaults: 1.1.0 2858 | object.pick: 1.3.0 2859 | parse-filepath: 1.0.2 2860 | 2861 | flagged-respawn@1.0.1: {} 2862 | 2863 | flat-cache@3.0.4: 2864 | dependencies: 2865 | flatted: 3.2.6 2866 | rimraf: 3.0.2 2867 | 2868 | flatted@3.2.6: {} 2869 | 2870 | flush-write-stream@1.1.1: 2871 | dependencies: 2872 | inherits: 2.0.4 2873 | readable-stream: 2.3.7 2874 | 2875 | follow-redirects@1.15.6: {} 2876 | 2877 | for-each@0.3.3: 2878 | dependencies: 2879 | is-callable: 1.2.7 2880 | 2881 | for-in@1.0.2: {} 2882 | 2883 | for-own@1.0.0: 2884 | dependencies: 2885 | for-in: 1.0.2 2886 | 2887 | form-data@4.0.0: 2888 | dependencies: 2889 | asynckit: 0.4.0 2890 | combined-stream: 1.0.8 2891 | mime-types: 2.1.35 2892 | 2893 | fragment-cache@0.2.1: 2894 | dependencies: 2895 | map-cache: 0.2.2 2896 | 2897 | fs-mkdirp-stream@1.0.0: 2898 | dependencies: 2899 | graceful-fs: 4.2.10 2900 | through2: 2.0.5 2901 | 2902 | fs.realpath@1.0.0: {} 2903 | 2904 | fsevents@1.2.13: 2905 | dependencies: 2906 | bindings: 1.5.0 2907 | nan: 2.20.0 2908 | optional: true 2909 | 2910 | function-bind@1.1.2: {} 2911 | 2912 | functions-have-names@1.2.3: {} 2913 | 2914 | get-caller-file@1.0.3: {} 2915 | 2916 | get-caller-file@2.0.5: {} 2917 | 2918 | get-intrinsic@1.2.4: 2919 | dependencies: 2920 | es-errors: 1.3.0 2921 | function-bind: 1.1.2 2922 | has-proto: 1.0.3 2923 | has-symbols: 1.0.3 2924 | hasown: 2.0.2 2925 | 2926 | get-value@2.0.6: {} 2927 | 2928 | glob-parent@3.1.0: 2929 | dependencies: 2930 | is-glob: 3.1.0 2931 | path-dirname: 1.0.2 2932 | 2933 | glob-parent@5.1.2: 2934 | dependencies: 2935 | is-glob: 4.0.3 2936 | 2937 | glob-parent@6.0.2: 2938 | dependencies: 2939 | is-glob: 4.0.3 2940 | 2941 | glob-stream@6.1.0: 2942 | dependencies: 2943 | extend: 3.0.2 2944 | glob: 7.2.3 2945 | glob-parent: 3.1.0 2946 | is-negated-glob: 1.0.0 2947 | ordered-read-streams: 1.0.1 2948 | pumpify: 1.5.1 2949 | readable-stream: 2.3.7 2950 | remove-trailing-separator: 1.1.0 2951 | to-absolute-glob: 2.0.2 2952 | unique-stream: 2.3.1 2953 | 2954 | glob-watcher@5.0.5: 2955 | dependencies: 2956 | anymatch: 2.0.0 2957 | async-done: 1.3.2 2958 | chokidar: 2.1.8 2959 | is-negated-glob: 1.0.0 2960 | just-debounce: 1.1.0 2961 | normalize-path: 3.0.0 2962 | object.defaults: 1.1.0 2963 | transitivePeerDependencies: 2964 | - supports-color 2965 | 2966 | glob@7.2.3: 2967 | dependencies: 2968 | fs.realpath: 1.0.0 2969 | inflight: 1.0.6 2970 | inherits: 2.0.4 2971 | minimatch: 3.1.2 2972 | once: 1.4.0 2973 | path-is-absolute: 1.0.1 2974 | 2975 | global-modules@1.0.0: 2976 | dependencies: 2977 | global-prefix: 1.0.2 2978 | is-windows: 1.0.2 2979 | resolve-dir: 1.0.1 2980 | 2981 | global-prefix@1.0.2: 2982 | dependencies: 2983 | expand-tilde: 2.0.2 2984 | homedir-polyfill: 1.0.3 2985 | ini: 1.3.8 2986 | is-windows: 1.0.2 2987 | which: 1.3.1 2988 | 2989 | globals@13.24.0: 2990 | dependencies: 2991 | type-fest: 0.20.2 2992 | 2993 | globby@11.1.0: 2994 | dependencies: 2995 | array-union: 2.1.0 2996 | dir-glob: 3.0.1 2997 | fast-glob: 3.2.11 2998 | ignore: 5.2.0 2999 | merge2: 1.4.1 3000 | slash: 3.0.0 3001 | 3002 | glogg@1.0.2: 3003 | dependencies: 3004 | sparkles: 1.0.1 3005 | 3006 | gopd@1.0.1: 3007 | dependencies: 3008 | get-intrinsic: 1.2.4 3009 | 3010 | graceful-fs@4.2.10: {} 3011 | 3012 | graphemer@1.4.0: {} 3013 | 3014 | gulp-cli@2.3.0: 3015 | dependencies: 3016 | ansi-colors: 1.1.0 3017 | archy: 1.0.0 3018 | array-sort: 1.0.0 3019 | color-support: 1.1.3 3020 | concat-stream: 1.6.2 3021 | copy-props: 2.0.5 3022 | fancy-log: 1.3.3 3023 | gulplog: 1.0.0 3024 | interpret: 1.4.0 3025 | isobject: 3.0.1 3026 | liftoff: 3.1.0 3027 | matchdep: 2.0.0 3028 | mute-stdout: 1.0.1 3029 | pretty-hrtime: 1.0.3 3030 | replace-homedir: 1.0.0 3031 | semver-greatest-satisfied-range: 1.1.0 3032 | v8flags: 3.2.0 3033 | yargs: 7.1.2 3034 | transitivePeerDependencies: 3035 | - supports-color 3036 | 3037 | gulp@4.0.2: 3038 | dependencies: 3039 | glob-watcher: 5.0.5 3040 | gulp-cli: 2.3.0 3041 | undertaker: 1.3.0 3042 | vinyl-fs: 3.0.3 3043 | transitivePeerDependencies: 3044 | - supports-color 3045 | 3046 | gulplog@1.0.0: 3047 | dependencies: 3048 | glogg: 1.0.2 3049 | 3050 | has-bigints@1.0.2: {} 3051 | 3052 | has-flag@4.0.0: {} 3053 | 3054 | has-property-descriptors@1.0.2: 3055 | dependencies: 3056 | es-define-property: 1.0.0 3057 | 3058 | has-proto@1.0.3: {} 3059 | 3060 | has-symbols@1.0.3: {} 3061 | 3062 | has-tostringtag@1.0.2: 3063 | dependencies: 3064 | has-symbols: 1.0.3 3065 | 3066 | has-value@0.3.1: 3067 | dependencies: 3068 | get-value: 2.0.6 3069 | has-values: 0.1.4 3070 | isobject: 2.1.0 3071 | 3072 | has-value@1.0.0: 3073 | dependencies: 3074 | get-value: 2.0.6 3075 | has-values: 1.0.0 3076 | isobject: 3.0.1 3077 | 3078 | has-values@0.1.4: {} 3079 | 3080 | has-values@1.0.0: 3081 | dependencies: 3082 | is-number: 3.0.0 3083 | kind-of: 4.0.0 3084 | 3085 | has@1.0.3: 3086 | dependencies: 3087 | function-bind: 1.1.2 3088 | 3089 | hasown@2.0.2: 3090 | dependencies: 3091 | function-bind: 1.1.2 3092 | 3093 | homedir-polyfill@1.0.3: 3094 | dependencies: 3095 | parse-passwd: 1.0.0 3096 | 3097 | hosted-git-info@2.8.9: {} 3098 | 3099 | ignore@5.2.0: {} 3100 | 3101 | import-fresh@3.3.0: 3102 | dependencies: 3103 | parent-module: 1.0.1 3104 | resolve-from: 4.0.0 3105 | 3106 | imurmurhash@0.1.4: {} 3107 | 3108 | indefinite@2.5.1: {} 3109 | 3110 | inflight@1.0.6: 3111 | dependencies: 3112 | once: 1.4.0 3113 | wrappy: 1.0.2 3114 | 3115 | inherits@2.0.4: {} 3116 | 3117 | ini@1.3.8: {} 3118 | 3119 | internal-slot@1.0.7: 3120 | dependencies: 3121 | es-errors: 1.3.0 3122 | hasown: 2.0.2 3123 | side-channel: 1.0.6 3124 | 3125 | interpret@1.4.0: {} 3126 | 3127 | invert-kv@1.0.0: {} 3128 | 3129 | is-absolute@1.0.0: 3130 | dependencies: 3131 | is-relative: 1.0.0 3132 | is-windows: 1.0.2 3133 | 3134 | is-accessor-descriptor@0.1.6: 3135 | dependencies: 3136 | kind-of: 3.2.2 3137 | 3138 | is-accessor-descriptor@1.0.0: 3139 | dependencies: 3140 | kind-of: 6.0.3 3141 | 3142 | is-arguments@1.1.1: 3143 | dependencies: 3144 | call-bind: 1.0.7 3145 | has-tostringtag: 1.0.2 3146 | 3147 | is-array-buffer@3.0.4: 3148 | dependencies: 3149 | call-bind: 1.0.7 3150 | get-intrinsic: 1.2.4 3151 | 3152 | is-arrayish@0.2.1: {} 3153 | 3154 | is-bigint@1.0.4: 3155 | dependencies: 3156 | has-bigints: 1.0.2 3157 | 3158 | is-binary-path@1.0.1: 3159 | dependencies: 3160 | binary-extensions: 1.13.1 3161 | 3162 | is-boolean-object@1.1.2: 3163 | dependencies: 3164 | call-bind: 1.0.7 3165 | has-tostringtag: 1.0.2 3166 | 3167 | is-buffer@1.1.6: {} 3168 | 3169 | is-callable@1.2.7: {} 3170 | 3171 | is-core-module@2.9.0: 3172 | dependencies: 3173 | has: 1.0.3 3174 | 3175 | is-data-descriptor@0.1.4: 3176 | dependencies: 3177 | kind-of: 3.2.2 3178 | 3179 | is-data-descriptor@1.0.0: 3180 | dependencies: 3181 | kind-of: 6.0.3 3182 | 3183 | is-date-object@1.0.5: 3184 | dependencies: 3185 | has-tostringtag: 1.0.2 3186 | 3187 | is-descriptor@0.1.6: 3188 | dependencies: 3189 | is-accessor-descriptor: 0.1.6 3190 | is-data-descriptor: 0.1.4 3191 | kind-of: 5.1.0 3192 | 3193 | is-descriptor@1.0.2: 3194 | dependencies: 3195 | is-accessor-descriptor: 1.0.0 3196 | is-data-descriptor: 1.0.0 3197 | kind-of: 6.0.3 3198 | 3199 | is-extendable@0.1.1: {} 3200 | 3201 | is-extendable@1.0.1: 3202 | dependencies: 3203 | is-plain-object: 2.0.4 3204 | 3205 | is-extglob@2.1.1: {} 3206 | 3207 | is-fullwidth-code-point@1.0.0: 3208 | dependencies: 3209 | number-is-nan: 1.0.1 3210 | 3211 | is-fullwidth-code-point@3.0.0: {} 3212 | 3213 | is-generator-function@1.0.10: 3214 | dependencies: 3215 | has-tostringtag: 1.0.2 3216 | 3217 | is-glob@3.1.0: 3218 | dependencies: 3219 | is-extglob: 2.1.1 3220 | 3221 | is-glob@4.0.3: 3222 | dependencies: 3223 | is-extglob: 2.1.1 3224 | 3225 | is-map@2.0.3: {} 3226 | 3227 | is-nan@1.3.2: 3228 | dependencies: 3229 | call-bind: 1.0.7 3230 | define-properties: 1.2.1 3231 | 3232 | is-negated-glob@1.0.0: {} 3233 | 3234 | is-number-object@1.0.7: 3235 | dependencies: 3236 | has-tostringtag: 1.0.2 3237 | 3238 | is-number@3.0.0: 3239 | dependencies: 3240 | kind-of: 3.2.2 3241 | 3242 | is-number@4.0.0: {} 3243 | 3244 | is-number@7.0.0: {} 3245 | 3246 | is-path-inside@3.0.3: {} 3247 | 3248 | is-plain-object@2.0.4: 3249 | dependencies: 3250 | isobject: 3.0.1 3251 | 3252 | is-plain-object@5.0.0: {} 3253 | 3254 | is-regex@1.1.4: 3255 | dependencies: 3256 | call-bind: 1.0.7 3257 | has-tostringtag: 1.0.2 3258 | 3259 | is-relative@1.0.0: 3260 | dependencies: 3261 | is-unc-path: 1.0.0 3262 | 3263 | is-set@2.0.3: {} 3264 | 3265 | is-shared-array-buffer@1.0.3: 3266 | dependencies: 3267 | call-bind: 1.0.7 3268 | 3269 | is-string@1.0.7: 3270 | dependencies: 3271 | has-tostringtag: 1.0.2 3272 | 3273 | is-symbol@1.0.4: 3274 | dependencies: 3275 | has-symbols: 1.0.3 3276 | 3277 | is-typed-array@1.1.13: 3278 | dependencies: 3279 | which-typed-array: 1.1.15 3280 | 3281 | is-unc-path@1.0.0: 3282 | dependencies: 3283 | unc-path-regex: 0.1.2 3284 | 3285 | is-utf8@0.2.1: {} 3286 | 3287 | is-valid-glob@1.0.0: {} 3288 | 3289 | is-weakmap@2.0.2: {} 3290 | 3291 | is-weakset@2.0.3: 3292 | dependencies: 3293 | call-bind: 1.0.7 3294 | get-intrinsic: 1.2.4 3295 | 3296 | is-windows@1.0.2: {} 3297 | 3298 | isarray@1.0.0: {} 3299 | 3300 | isarray@2.0.5: {} 3301 | 3302 | isexe@2.0.0: {} 3303 | 3304 | isobject@2.1.0: 3305 | dependencies: 3306 | isarray: 1.0.0 3307 | 3308 | isobject@3.0.1: {} 3309 | 3310 | jmespath@0.16.0: {} 3311 | 3312 | js-base64@3.7.2: {} 3313 | 3314 | js-yaml@4.1.0: 3315 | dependencies: 3316 | argparse: 2.0.1 3317 | 3318 | json-schema-traverse@0.4.1: {} 3319 | 3320 | json-stable-stringify-without-jsonify@1.0.1: {} 3321 | 3322 | jssha@3.3.1: {} 3323 | 3324 | just-debounce@1.1.0: {} 3325 | 3326 | kind-of@3.2.2: 3327 | dependencies: 3328 | is-buffer: 1.1.6 3329 | 3330 | kind-of@4.0.0: 3331 | dependencies: 3332 | is-buffer: 1.1.6 3333 | 3334 | kind-of@5.1.0: {} 3335 | 3336 | kind-of@6.0.3: {} 3337 | 3338 | last-run@1.1.1: 3339 | dependencies: 3340 | default-resolution: 2.0.0 3341 | es6-weak-map: 2.0.3 3342 | 3343 | lazystream@1.0.1: 3344 | dependencies: 3345 | readable-stream: 2.3.7 3346 | 3347 | lcid@1.0.0: 3348 | dependencies: 3349 | invert-kv: 1.0.0 3350 | 3351 | lead@1.0.0: 3352 | dependencies: 3353 | flush-write-stream: 1.1.1 3354 | 3355 | levn@0.4.1: 3356 | dependencies: 3357 | prelude-ls: 1.2.1 3358 | type-check: 0.4.0 3359 | 3360 | liftoff@3.1.0: 3361 | dependencies: 3362 | extend: 3.0.2 3363 | findup-sync: 3.0.0 3364 | fined: 1.2.0 3365 | flagged-respawn: 1.0.1 3366 | is-plain-object: 2.0.4 3367 | object.map: 1.0.1 3368 | rechoir: 0.6.2 3369 | resolve: 1.22.1 3370 | transitivePeerDependencies: 3371 | - supports-color 3372 | 3373 | load-json-file@1.1.0: 3374 | dependencies: 3375 | graceful-fs: 4.2.10 3376 | parse-json: 2.2.0 3377 | pify: 2.3.0 3378 | pinkie-promise: 2.0.1 3379 | strip-bom: 2.0.0 3380 | 3381 | locate-path@6.0.0: 3382 | dependencies: 3383 | p-locate: 5.0.0 3384 | 3385 | lodash.merge@4.6.2: {} 3386 | 3387 | lodash@4.17.21: {} 3388 | 3389 | lower-case@2.0.2: 3390 | dependencies: 3391 | tslib: 2.6.3 3392 | 3393 | luxon@3.3.0: {} 3394 | 3395 | make-iterator@1.0.1: 3396 | dependencies: 3397 | kind-of: 6.0.3 3398 | 3399 | map-cache@0.2.2: {} 3400 | 3401 | map-visit@1.0.0: 3402 | dependencies: 3403 | object-visit: 1.0.1 3404 | 3405 | matchdep@2.0.0: 3406 | dependencies: 3407 | findup-sync: 2.0.0 3408 | micromatch: 3.1.10 3409 | resolve: 1.22.1 3410 | stack-trace: 0.0.10 3411 | transitivePeerDependencies: 3412 | - supports-color 3413 | 3414 | md5@2.3.0: 3415 | dependencies: 3416 | charenc: 0.0.2 3417 | crypt: 0.0.2 3418 | is-buffer: 1.1.6 3419 | 3420 | merge2@1.4.1: {} 3421 | 3422 | micromatch@3.1.10: 3423 | dependencies: 3424 | arr-diff: 4.0.0 3425 | array-unique: 0.3.2 3426 | braces: 2.3.2 3427 | define-property: 2.0.2 3428 | extend-shallow: 3.0.2 3429 | extglob: 2.0.4 3430 | fragment-cache: 0.2.1 3431 | kind-of: 6.0.3 3432 | nanomatch: 1.2.13 3433 | object.pick: 1.3.0 3434 | regex-not: 1.0.2 3435 | snapdragon: 0.8.2 3436 | to-regex: 3.0.2 3437 | transitivePeerDependencies: 3438 | - supports-color 3439 | 3440 | micromatch@4.0.5: 3441 | dependencies: 3442 | braces: 3.0.3 3443 | picomatch: 2.3.1 3444 | 3445 | mime-db@1.52.0: {} 3446 | 3447 | mime-types@2.1.35: 3448 | dependencies: 3449 | mime-db: 1.52.0 3450 | 3451 | minimatch@3.1.2: 3452 | dependencies: 3453 | brace-expansion: 1.1.11 3454 | 3455 | minimatch@9.0.3: 3456 | dependencies: 3457 | brace-expansion: 2.0.1 3458 | 3459 | minimatch@9.0.5: 3460 | dependencies: 3461 | brace-expansion: 2.0.1 3462 | 3463 | mixin-deep@1.3.2: 3464 | dependencies: 3465 | for-in: 1.0.2 3466 | is-extendable: 1.0.1 3467 | 3468 | ms@2.0.0: {} 3469 | 3470 | ms@2.1.2: {} 3471 | 3472 | mute-stdout@1.0.1: {} 3473 | 3474 | n8n-workflow@1.48.0: 3475 | dependencies: 3476 | '@n8n/tournament': 1.0.2 3477 | '@n8n_io/riot-tmpl': 4.0.0 3478 | ast-types: 0.15.2 3479 | axios: 1.6.7 3480 | callsites: 3.1.0 3481 | deep-equal: 2.2.0 3482 | esprima-next: 5.8.4 3483 | form-data: 4.0.0 3484 | jmespath: 0.16.0 3485 | js-base64: 3.7.2 3486 | jssha: 3.3.1 3487 | lodash: 4.17.21 3488 | luxon: 3.3.0 3489 | md5: 2.3.0 3490 | recast: 0.21.5 3491 | title-case: 3.0.3 3492 | transliteration: 2.3.5 3493 | xml2js: 0.6.2 3494 | transitivePeerDependencies: 3495 | - debug 3496 | 3497 | nan@2.20.0: 3498 | optional: true 3499 | 3500 | nanomatch@1.2.13: 3501 | dependencies: 3502 | arr-diff: 4.0.0 3503 | array-unique: 0.3.2 3504 | define-property: 2.0.2 3505 | extend-shallow: 3.0.2 3506 | fragment-cache: 0.2.1 3507 | is-windows: 1.0.2 3508 | kind-of: 6.0.3 3509 | object.pick: 1.3.0 3510 | regex-not: 1.0.2 3511 | snapdragon: 0.8.2 3512 | to-regex: 3.0.2 3513 | transitivePeerDependencies: 3514 | - supports-color 3515 | 3516 | natural-compare@1.4.0: {} 3517 | 3518 | next-tick@1.1.0: {} 3519 | 3520 | no-case@3.0.4: 3521 | dependencies: 3522 | lower-case: 2.0.2 3523 | tslib: 2.6.3 3524 | 3525 | normalize-package-data@2.5.0: 3526 | dependencies: 3527 | hosted-git-info: 2.8.9 3528 | resolve: 1.22.1 3529 | semver: 5.7.1 3530 | validate-npm-package-license: 3.0.4 3531 | 3532 | normalize-path@2.1.1: 3533 | dependencies: 3534 | remove-trailing-separator: 1.1.0 3535 | 3536 | normalize-path@3.0.0: {} 3537 | 3538 | now-and-later@2.0.1: 3539 | dependencies: 3540 | once: 1.4.0 3541 | 3542 | number-is-nan@1.0.1: {} 3543 | 3544 | object-copy@0.1.0: 3545 | dependencies: 3546 | copy-descriptor: 0.1.1 3547 | define-property: 0.2.5 3548 | kind-of: 3.2.2 3549 | 3550 | object-inspect@1.13.2: {} 3551 | 3552 | object-is@1.1.6: 3553 | dependencies: 3554 | call-bind: 1.0.7 3555 | define-properties: 1.2.1 3556 | 3557 | object-keys@1.1.1: {} 3558 | 3559 | object-visit@1.0.1: 3560 | dependencies: 3561 | isobject: 3.0.1 3562 | 3563 | object.assign@4.1.5: 3564 | dependencies: 3565 | call-bind: 1.0.7 3566 | define-properties: 1.2.1 3567 | has-symbols: 1.0.3 3568 | object-keys: 1.1.1 3569 | 3570 | object.defaults@1.1.0: 3571 | dependencies: 3572 | array-each: 1.0.1 3573 | array-slice: 1.1.0 3574 | for-own: 1.0.0 3575 | isobject: 3.0.1 3576 | 3577 | object.map@1.0.1: 3578 | dependencies: 3579 | for-own: 1.0.0 3580 | make-iterator: 1.0.1 3581 | 3582 | object.pick@1.3.0: 3583 | dependencies: 3584 | isobject: 3.0.1 3585 | 3586 | object.reduce@1.0.1: 3587 | dependencies: 3588 | for-own: 1.0.0 3589 | make-iterator: 1.0.1 3590 | 3591 | once@1.4.0: 3592 | dependencies: 3593 | wrappy: 1.0.2 3594 | 3595 | optionator@0.9.4: 3596 | dependencies: 3597 | deep-is: 0.1.4 3598 | fast-levenshtein: 2.0.6 3599 | levn: 0.4.1 3600 | prelude-ls: 1.2.1 3601 | type-check: 0.4.0 3602 | word-wrap: 1.2.5 3603 | 3604 | ordered-read-streams@1.0.1: 3605 | dependencies: 3606 | readable-stream: 2.3.7 3607 | 3608 | os-locale@1.4.0: 3609 | dependencies: 3610 | lcid: 1.0.0 3611 | 3612 | p-limit@3.1.0: 3613 | dependencies: 3614 | yocto-queue: 0.1.0 3615 | 3616 | p-locate@5.0.0: 3617 | dependencies: 3618 | p-limit: 3.1.0 3619 | 3620 | parent-module@1.0.1: 3621 | dependencies: 3622 | callsites: 3.1.0 3623 | 3624 | parse-filepath@1.0.2: 3625 | dependencies: 3626 | is-absolute: 1.0.0 3627 | map-cache: 0.2.2 3628 | path-root: 0.1.1 3629 | 3630 | parse-json@2.2.0: 3631 | dependencies: 3632 | error-ex: 1.3.2 3633 | 3634 | parse-node-version@1.0.1: {} 3635 | 3636 | parse-passwd@1.0.0: {} 3637 | 3638 | pascal-case@3.1.2: 3639 | dependencies: 3640 | no-case: 3.0.4 3641 | tslib: 2.6.3 3642 | 3643 | pascalcase@0.1.1: {} 3644 | 3645 | path-dirname@1.0.2: {} 3646 | 3647 | path-exists@2.1.0: 3648 | dependencies: 3649 | pinkie-promise: 2.0.1 3650 | 3651 | path-exists@4.0.0: {} 3652 | 3653 | path-is-absolute@1.0.1: {} 3654 | 3655 | path-key@3.1.1: {} 3656 | 3657 | path-parse@1.0.7: {} 3658 | 3659 | path-root-regex@0.1.2: {} 3660 | 3661 | path-root@0.1.1: 3662 | dependencies: 3663 | path-root-regex: 0.1.2 3664 | 3665 | path-type@1.1.0: 3666 | dependencies: 3667 | graceful-fs: 4.2.10 3668 | pify: 2.3.0 3669 | pinkie-promise: 2.0.1 3670 | 3671 | path-type@4.0.0: {} 3672 | 3673 | picomatch@2.3.1: {} 3674 | 3675 | pify@2.3.0: {} 3676 | 3677 | pinkie-promise@2.0.1: 3678 | dependencies: 3679 | pinkie: 2.0.4 3680 | 3681 | pinkie@2.0.4: {} 3682 | 3683 | pluralize@8.0.0: {} 3684 | 3685 | posix-character-classes@0.1.1: {} 3686 | 3687 | possible-typed-array-names@1.0.0: {} 3688 | 3689 | prelude-ls@1.2.1: {} 3690 | 3691 | prettier@3.3.2: {} 3692 | 3693 | pretty-hrtime@1.0.3: {} 3694 | 3695 | process-nextick-args@2.0.1: {} 3696 | 3697 | proxy-from-env@1.1.0: {} 3698 | 3699 | pump@2.0.1: 3700 | dependencies: 3701 | end-of-stream: 1.4.4 3702 | once: 1.4.0 3703 | 3704 | pumpify@1.5.1: 3705 | dependencies: 3706 | duplexify: 3.7.1 3707 | inherits: 2.0.4 3708 | pump: 2.0.1 3709 | 3710 | punycode@2.1.1: {} 3711 | 3712 | queue-microtask@1.2.3: {} 3713 | 3714 | read-pkg-up@1.0.1: 3715 | dependencies: 3716 | find-up: 1.1.2 3717 | read-pkg: 1.1.0 3718 | 3719 | read-pkg@1.1.0: 3720 | dependencies: 3721 | load-json-file: 1.1.0 3722 | normalize-package-data: 2.5.0 3723 | path-type: 1.1.0 3724 | 3725 | readable-stream@2.3.7: 3726 | dependencies: 3727 | core-util-is: 1.0.3 3728 | inherits: 2.0.4 3729 | isarray: 1.0.0 3730 | process-nextick-args: 2.0.1 3731 | safe-buffer: 5.1.2 3732 | string_decoder: 1.1.1 3733 | util-deprecate: 1.0.2 3734 | 3735 | readdirp@2.2.1: 3736 | dependencies: 3737 | graceful-fs: 4.2.10 3738 | micromatch: 3.1.10 3739 | readable-stream: 2.3.7 3740 | transitivePeerDependencies: 3741 | - supports-color 3742 | 3743 | recast@0.21.5: 3744 | dependencies: 3745 | ast-types: 0.15.2 3746 | esprima: 4.0.1 3747 | source-map: 0.6.1 3748 | tslib: 2.6.3 3749 | 3750 | recast@0.22.0: 3751 | dependencies: 3752 | assert: 2.1.0 3753 | ast-types: 0.15.2 3754 | esprima: 4.0.1 3755 | source-map: 0.6.1 3756 | tslib: 2.6.3 3757 | 3758 | rechoir@0.6.2: 3759 | dependencies: 3760 | resolve: 1.22.1 3761 | 3762 | regex-not@1.0.2: 3763 | dependencies: 3764 | extend-shallow: 3.0.2 3765 | safe-regex: 1.1.0 3766 | 3767 | regexp.prototype.flags@1.5.2: 3768 | dependencies: 3769 | call-bind: 1.0.7 3770 | define-properties: 1.2.1 3771 | es-errors: 1.3.0 3772 | set-function-name: 2.0.2 3773 | 3774 | remove-bom-buffer@3.0.0: 3775 | dependencies: 3776 | is-buffer: 1.1.6 3777 | is-utf8: 0.2.1 3778 | 3779 | remove-bom-stream@1.2.0: 3780 | dependencies: 3781 | remove-bom-buffer: 3.0.0 3782 | safe-buffer: 5.2.1 3783 | through2: 2.0.5 3784 | 3785 | remove-trailing-separator@1.1.0: {} 3786 | 3787 | repeat-element@1.1.4: {} 3788 | 3789 | repeat-string@1.6.1: {} 3790 | 3791 | replace-ext@1.0.1: {} 3792 | 3793 | replace-homedir@1.0.0: 3794 | dependencies: 3795 | homedir-polyfill: 1.0.3 3796 | is-absolute: 1.0.0 3797 | remove-trailing-separator: 1.1.0 3798 | 3799 | require-directory@2.1.1: {} 3800 | 3801 | require-main-filename@1.0.1: {} 3802 | 3803 | resolve-dir@1.0.1: 3804 | dependencies: 3805 | expand-tilde: 2.0.2 3806 | global-modules: 1.0.0 3807 | 3808 | resolve-from@4.0.0: {} 3809 | 3810 | resolve-options@1.1.0: 3811 | dependencies: 3812 | value-or-function: 3.0.0 3813 | 3814 | resolve-url@0.2.1: {} 3815 | 3816 | resolve@1.22.1: 3817 | dependencies: 3818 | is-core-module: 2.9.0 3819 | path-parse: 1.0.7 3820 | supports-preserve-symlinks-flag: 1.0.0 3821 | 3822 | ret@0.1.15: {} 3823 | 3824 | reusify@1.0.4: {} 3825 | 3826 | rimraf@3.0.2: 3827 | dependencies: 3828 | glob: 7.2.3 3829 | 3830 | run-parallel@1.2.0: 3831 | dependencies: 3832 | queue-microtask: 1.2.3 3833 | 3834 | safe-buffer@5.1.2: {} 3835 | 3836 | safe-buffer@5.2.1: {} 3837 | 3838 | safe-regex@1.1.0: 3839 | dependencies: 3840 | ret: 0.1.15 3841 | 3842 | sax@1.4.1: {} 3843 | 3844 | semver-greatest-satisfied-range@1.1.0: 3845 | dependencies: 3846 | sver-compat: 1.5.0 3847 | 3848 | semver@5.7.1: {} 3849 | 3850 | semver@7.6.2: {} 3851 | 3852 | sentence-case@3.0.4: 3853 | dependencies: 3854 | no-case: 3.0.4 3855 | tslib: 2.6.3 3856 | upper-case-first: 2.0.2 3857 | 3858 | set-blocking@2.0.0: {} 3859 | 3860 | set-function-length@1.2.2: 3861 | dependencies: 3862 | define-data-property: 1.1.4 3863 | es-errors: 1.3.0 3864 | function-bind: 1.1.2 3865 | get-intrinsic: 1.2.4 3866 | gopd: 1.0.1 3867 | has-property-descriptors: 1.0.2 3868 | 3869 | set-function-name@2.0.2: 3870 | dependencies: 3871 | define-data-property: 1.1.4 3872 | es-errors: 1.3.0 3873 | functions-have-names: 1.2.3 3874 | has-property-descriptors: 1.0.2 3875 | 3876 | set-value@2.0.1: 3877 | dependencies: 3878 | extend-shallow: 2.0.1 3879 | is-extendable: 0.1.1 3880 | is-plain-object: 2.0.4 3881 | split-string: 3.1.0 3882 | 3883 | shebang-command@2.0.0: 3884 | dependencies: 3885 | shebang-regex: 3.0.0 3886 | 3887 | shebang-regex@3.0.0: {} 3888 | 3889 | side-channel@1.0.6: 3890 | dependencies: 3891 | call-bind: 1.0.7 3892 | es-errors: 1.3.0 3893 | get-intrinsic: 1.2.4 3894 | object-inspect: 1.13.2 3895 | 3896 | slash@3.0.0: {} 3897 | 3898 | snapdragon-node@2.1.1: 3899 | dependencies: 3900 | define-property: 1.0.0 3901 | isobject: 3.0.1 3902 | snapdragon-util: 3.0.1 3903 | 3904 | snapdragon-util@3.0.1: 3905 | dependencies: 3906 | kind-of: 3.2.2 3907 | 3908 | snapdragon@0.8.2: 3909 | dependencies: 3910 | base: 0.11.2 3911 | debug: 2.6.9 3912 | define-property: 0.2.5 3913 | extend-shallow: 2.0.1 3914 | map-cache: 0.2.2 3915 | source-map: 0.5.7 3916 | source-map-resolve: 0.5.3 3917 | use: 3.1.1 3918 | transitivePeerDependencies: 3919 | - supports-color 3920 | 3921 | source-map-resolve@0.5.3: 3922 | dependencies: 3923 | atob: 2.1.2 3924 | decode-uri-component: 0.2.0 3925 | resolve-url: 0.2.1 3926 | source-map-url: 0.4.1 3927 | urix: 0.1.0 3928 | 3929 | source-map-url@0.4.1: {} 3930 | 3931 | source-map@0.5.7: {} 3932 | 3933 | source-map@0.6.1: {} 3934 | 3935 | sparkles@1.0.1: {} 3936 | 3937 | spdx-correct@3.1.1: 3938 | dependencies: 3939 | spdx-expression-parse: 3.0.1 3940 | spdx-license-ids: 3.0.11 3941 | 3942 | spdx-exceptions@2.3.0: {} 3943 | 3944 | spdx-expression-parse@3.0.1: 3945 | dependencies: 3946 | spdx-exceptions: 2.3.0 3947 | spdx-license-ids: 3.0.11 3948 | 3949 | spdx-license-ids@3.0.11: {} 3950 | 3951 | split-string@3.1.0: 3952 | dependencies: 3953 | extend-shallow: 3.0.2 3954 | 3955 | stack-trace@0.0.10: {} 3956 | 3957 | static-extend@0.1.2: 3958 | dependencies: 3959 | define-property: 0.2.5 3960 | object-copy: 0.1.0 3961 | 3962 | stop-iteration-iterator@1.0.0: 3963 | dependencies: 3964 | internal-slot: 1.0.7 3965 | 3966 | stream-exhaust@1.0.2: {} 3967 | 3968 | stream-shift@1.0.3: {} 3969 | 3970 | string-width@1.0.2: 3971 | dependencies: 3972 | code-point-at: 1.1.0 3973 | is-fullwidth-code-point: 1.0.0 3974 | strip-ansi: 3.0.1 3975 | 3976 | string-width@4.2.3: 3977 | dependencies: 3978 | emoji-regex: 8.0.0 3979 | is-fullwidth-code-point: 3.0.0 3980 | strip-ansi: 6.0.1 3981 | 3982 | string_decoder@1.1.1: 3983 | dependencies: 3984 | safe-buffer: 5.1.2 3985 | 3986 | strip-ansi@3.0.1: 3987 | dependencies: 3988 | ansi-regex: 2.1.1 3989 | 3990 | strip-ansi@6.0.1: 3991 | dependencies: 3992 | ansi-regex: 5.0.1 3993 | 3994 | strip-bom@2.0.0: 3995 | dependencies: 3996 | is-utf8: 0.2.1 3997 | 3998 | strip-json-comments@3.1.1: {} 3999 | 4000 | supports-color@7.2.0: 4001 | dependencies: 4002 | has-flag: 4.0.0 4003 | 4004 | supports-preserve-symlinks-flag@1.0.0: {} 4005 | 4006 | sver-compat@1.5.0: 4007 | dependencies: 4008 | es6-iterator: 2.0.3 4009 | es6-symbol: 3.1.3 4010 | 4011 | text-table@0.2.0: {} 4012 | 4013 | through2-filter@3.0.0: 4014 | dependencies: 4015 | through2: 2.0.5 4016 | xtend: 4.0.2 4017 | 4018 | through2@2.0.5: 4019 | dependencies: 4020 | readable-stream: 2.3.7 4021 | xtend: 4.0.2 4022 | 4023 | time-stamp@1.1.0: {} 4024 | 4025 | title-case@3.0.3: 4026 | dependencies: 4027 | tslib: 2.6.3 4028 | 4029 | to-absolute-glob@2.0.2: 4030 | dependencies: 4031 | is-absolute: 1.0.0 4032 | is-negated-glob: 1.0.0 4033 | 4034 | to-object-path@0.3.0: 4035 | dependencies: 4036 | kind-of: 3.2.2 4037 | 4038 | to-regex-range@2.1.1: 4039 | dependencies: 4040 | is-number: 3.0.0 4041 | repeat-string: 1.6.1 4042 | 4043 | to-regex-range@5.0.1: 4044 | dependencies: 4045 | is-number: 7.0.0 4046 | 4047 | to-regex@3.0.2: 4048 | dependencies: 4049 | define-property: 2.0.2 4050 | extend-shallow: 3.0.2 4051 | regex-not: 1.0.2 4052 | safe-regex: 1.1.0 4053 | 4054 | to-through@2.0.0: 4055 | dependencies: 4056 | through2: 2.0.5 4057 | 4058 | transliteration@2.3.5: 4059 | dependencies: 4060 | yargs: 17.7.2 4061 | 4062 | ts-api-utils@1.3.0(typescript@5.5.3): 4063 | dependencies: 4064 | typescript: 5.5.3 4065 | 4066 | tslib@2.6.3: {} 4067 | 4068 | type-check@0.4.0: 4069 | dependencies: 4070 | prelude-ls: 1.2.1 4071 | 4072 | type-fest@0.20.2: {} 4073 | 4074 | type@1.2.0: {} 4075 | 4076 | type@2.6.0: {} 4077 | 4078 | typedarray@0.0.6: {} 4079 | 4080 | typescript@5.5.3: {} 4081 | 4082 | unc-path-regex@0.1.2: {} 4083 | 4084 | undertaker-registry@1.0.1: {} 4085 | 4086 | undertaker@1.3.0: 4087 | dependencies: 4088 | arr-flatten: 1.1.0 4089 | arr-map: 2.0.2 4090 | bach: 1.2.0 4091 | collection-map: 1.0.0 4092 | es6-weak-map: 2.0.3 4093 | fast-levenshtein: 1.1.4 4094 | last-run: 1.1.1 4095 | object.defaults: 1.1.0 4096 | object.reduce: 1.0.1 4097 | undertaker-registry: 1.0.1 4098 | 4099 | union-value@1.0.1: 4100 | dependencies: 4101 | arr-union: 3.1.0 4102 | get-value: 2.0.6 4103 | is-extendable: 0.1.1 4104 | set-value: 2.0.1 4105 | 4106 | unique-stream@2.3.1: 4107 | dependencies: 4108 | json-stable-stringify-without-jsonify: 1.0.1 4109 | through2-filter: 3.0.0 4110 | 4111 | unset-value@1.0.0: 4112 | dependencies: 4113 | has-value: 0.3.1 4114 | isobject: 3.0.1 4115 | 4116 | upath@1.2.0: {} 4117 | 4118 | upper-case-first@2.0.2: 4119 | dependencies: 4120 | tslib: 2.6.3 4121 | 4122 | uri-js@4.4.1: 4123 | dependencies: 4124 | punycode: 2.1.1 4125 | 4126 | urix@0.1.0: {} 4127 | 4128 | use@3.1.1: {} 4129 | 4130 | util-deprecate@1.0.2: {} 4131 | 4132 | util@0.12.5: 4133 | dependencies: 4134 | inherits: 2.0.4 4135 | is-arguments: 1.1.1 4136 | is-generator-function: 1.0.10 4137 | is-typed-array: 1.1.13 4138 | which-typed-array: 1.1.15 4139 | 4140 | v8flags@3.2.0: 4141 | dependencies: 4142 | homedir-polyfill: 1.0.3 4143 | 4144 | validate-npm-package-license@3.0.4: 4145 | dependencies: 4146 | spdx-correct: 3.1.1 4147 | spdx-expression-parse: 3.0.1 4148 | 4149 | value-or-function@3.0.0: {} 4150 | 4151 | vinyl-fs@3.0.3: 4152 | dependencies: 4153 | fs-mkdirp-stream: 1.0.0 4154 | glob-stream: 6.1.0 4155 | graceful-fs: 4.2.10 4156 | is-valid-glob: 1.0.0 4157 | lazystream: 1.0.1 4158 | lead: 1.0.0 4159 | object.assign: 4.1.5 4160 | pumpify: 1.5.1 4161 | readable-stream: 2.3.7 4162 | remove-bom-buffer: 3.0.0 4163 | remove-bom-stream: 1.2.0 4164 | resolve-options: 1.1.0 4165 | through2: 2.0.5 4166 | to-through: 2.0.0 4167 | value-or-function: 3.0.0 4168 | vinyl: 2.2.1 4169 | vinyl-sourcemap: 1.1.0 4170 | 4171 | vinyl-sourcemap@1.1.0: 4172 | dependencies: 4173 | append-buffer: 1.0.2 4174 | convert-source-map: 1.8.0 4175 | graceful-fs: 4.2.10 4176 | normalize-path: 2.1.1 4177 | now-and-later: 2.0.1 4178 | remove-bom-buffer: 3.0.0 4179 | vinyl: 2.2.1 4180 | 4181 | vinyl@2.2.1: 4182 | dependencies: 4183 | clone: 2.1.2 4184 | clone-buffer: 1.0.0 4185 | clone-stats: 1.0.0 4186 | cloneable-readable: 1.1.3 4187 | remove-trailing-separator: 1.1.0 4188 | replace-ext: 1.0.1 4189 | 4190 | which-boxed-primitive@1.0.2: 4191 | dependencies: 4192 | is-bigint: 1.0.4 4193 | is-boolean-object: 1.1.2 4194 | is-number-object: 1.0.7 4195 | is-string: 1.0.7 4196 | is-symbol: 1.0.4 4197 | 4198 | which-collection@1.0.2: 4199 | dependencies: 4200 | is-map: 2.0.3 4201 | is-set: 2.0.3 4202 | is-weakmap: 2.0.2 4203 | is-weakset: 2.0.3 4204 | 4205 | which-module@1.0.0: {} 4206 | 4207 | which-typed-array@1.1.15: 4208 | dependencies: 4209 | available-typed-arrays: 1.0.7 4210 | call-bind: 1.0.7 4211 | for-each: 0.3.3 4212 | gopd: 1.0.1 4213 | has-tostringtag: 1.0.2 4214 | 4215 | which@1.3.1: 4216 | dependencies: 4217 | isexe: 2.0.0 4218 | 4219 | which@2.0.2: 4220 | dependencies: 4221 | isexe: 2.0.0 4222 | 4223 | word-wrap@1.2.5: {} 4224 | 4225 | wrap-ansi@2.1.0: 4226 | dependencies: 4227 | string-width: 1.0.2 4228 | strip-ansi: 3.0.1 4229 | 4230 | wrap-ansi@7.0.0: 4231 | dependencies: 4232 | ansi-styles: 4.3.0 4233 | string-width: 4.2.3 4234 | strip-ansi: 6.0.1 4235 | 4236 | wrappy@1.0.2: {} 4237 | 4238 | xml2js@0.6.2: 4239 | dependencies: 4240 | sax: 1.4.1 4241 | xmlbuilder: 11.0.1 4242 | 4243 | xmlbuilder@11.0.1: {} 4244 | 4245 | xtend@4.0.2: {} 4246 | 4247 | y18n@3.2.2: {} 4248 | 4249 | y18n@5.0.8: {} 4250 | 4251 | yargs-parser@21.1.1: {} 4252 | 4253 | yargs-parser@5.0.1: 4254 | dependencies: 4255 | camelcase: 3.0.0 4256 | object.assign: 4.1.5 4257 | 4258 | yargs@17.7.2: 4259 | dependencies: 4260 | cliui: 8.0.1 4261 | escalade: 3.1.2 4262 | get-caller-file: 2.0.5 4263 | require-directory: 2.1.1 4264 | string-width: 4.2.3 4265 | y18n: 5.0.8 4266 | yargs-parser: 21.1.1 4267 | 4268 | yargs@7.1.2: 4269 | dependencies: 4270 | camelcase: 3.0.0 4271 | cliui: 3.2.0 4272 | decamelize: 1.2.0 4273 | get-caller-file: 1.0.3 4274 | os-locale: 1.4.0 4275 | read-pkg-up: 1.0.1 4276 | require-directory: 2.1.1 4277 | require-main-filename: 1.0.1 4278 | set-blocking: 2.0.0 4279 | string-width: 1.0.2 4280 | which-module: 1.0.0 4281 | y18n: 3.2.2 4282 | yargs-parser: 5.0.1 4283 | 4284 | yocto-queue@0.1.0: {} 4285 | --------------------------------------------------------------------------------