From 4d6f972e7c454ae3f49e1346597c813de8497aa3 Mon Sep 17 00:00:00 2001 From: Sanket Dharwadkar Date: Tue, 28 Sep 2021 16:20:12 -0400 Subject: [PATCH] test: restore advanced integ tests (#722) * test: restore advanced integ tests * testing workflow trigger * revert workflow changes * chore: add logic for new admin token integ tests * code cleanup * fix: method call correction integ test * code cleanup --- .../verify-linux-study-permissions.test.js | 205 +++ .../create-workspace-service-catalog.test.js | 48 + .../config/settings/example.yml | 18 +- main/integration-tests/package.json | 1 + .../support/complex/run-shell-command.js | 9 +- main/integration-tests/support/setup.js | 52 +- pnpm-lock.yaml | 1227 +---------------- 7 files changed, 324 insertions(+), 1236 deletions(-) create mode 100644 main/integration-tests/__test__/advanced-tests/study-permissions/verify-linux-study-permissions.test.js diff --git a/main/integration-tests/__test__/advanced-tests/study-permissions/verify-linux-study-permissions.test.js b/main/integration-tests/__test__/advanced-tests/study-permissions/verify-linux-study-permissions.test.js new file mode 100644 index 0000000000..e91f6fa4e1 --- /dev/null +++ b/main/integration-tests/__test__/advanced-tests/study-permissions/verify-linux-study-permissions.test.js @@ -0,0 +1,205 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +const { sleep } = require('@aws-ee/base-services/lib/helpers/utils'); +const { NodeSSH } = require('node-ssh'); +const { mountStudies, readWrite } = require('../../../support/complex/run-shell-command'); +const { runSetup } = require('../../../support/setup'); + +describe('EC2 Linux scenarios', () => { + let setup; + let ssh; + async function testSetup() { + const adminSession = await setup.createAdminSession(); + const admin2Session = await setup.createAdminSession(); + const keyPair = await admin2Session.resources.keyPairs.create(); + return { adminSession, admin2Session, keyPair }; + } + + beforeAll(async () => { + setup = await runSetup(); + ssh = new NodeSSH(); + }); + afterAll(async () => { + await setup.cleanup(); + }); + + describe('Updates to mounted study permissions', () => { + it('should propagate for Org Study', async () => { + const { adminSession, admin2Session, keyPair } = await testSetup(); + const studyId = setup.gen.string({ prefix: `create-org-study-test` }); + await adminSession.resources.studies.create({ id: studyId, name: studyId, category: 'Organization' }); + await adminSession.resources.studies + .study(studyId) + .propagatePermission(admin2Session, ['admin', 'readwrite'], []); + + const workspaceName = setup.gen.string({ prefix: 'workspace-sc-test' }); + + const env = await admin2Session.resources.workspaceServiceCatalogs.create({ + name: workspaceName, + envTypeId: setup.defaults.envTypes.ec2Linux.envTypeId, + envTypeConfigId: setup.defaults.envTypes.ec2Linux.envTypeConfigId, + studyIds: [studyId], + description: 'test', + projectId: setup.defaults.project.id, + cidr: '0.0.0.0/0', + }); + // Poll until workspace is provisioned + await sleep(2000); + await adminSession.resources.workflows + .versions('wf-provision-environment-sc') + .version(1) + .findAndPollWorkflow(env.id, 10000, 60); + + // Connect to workspace + const networkInfo = await admin2Session.resources.workspaceServiceCatalogs + .workspaceServiceCatalog(env.id) // env.id + .connections() + .connection('id-1') + .sendSshPublicKey({ keyPairId: keyPair.id }); + + await ssh.connect({ + host: networkInfo.networkInterfaces[0].publicDnsName, + username: 'ec2-user', + privateKey: keyPair.privateKey, + }); + + // Mount studies + let output; + output = await mountStudies(ssh, studyId); + + // Readwrite permission level + const numberOfBytes = 20; + output = await readWrite(ssh, studyId, numberOfBytes); + expect(output.stdout).toContain(`ec2-user ${numberOfBytes}`); + + // Admin permission level + await adminSession.resources.studies.study(studyId).propagatePermission(admin2Session, ['admin'], ['readwrite']); + output = await readWrite(ssh, studyId); + expect(output.stderr).toEqual(expect.stringMatching(/write error: Permission denied/)); + + // Readonly permission level + await adminSession.resources.studies.study(studyId).propagatePermission(admin2Session, ['readonly'], ['admin']); + output = await readWrite(ssh, studyId); + expect(output.stderr).toEqual(expect.stringMatching(/write error: Permission denied/)); + + // None permission level + await adminSession.resources.studies.study(studyId).propagatePermission(admin2Session, [], ['readonly']); + output = await readWrite(ssh, studyId); + expect(output.stderr).toEqual(expect.stringMatching(/reading directory .: Permission denied/)); + + await ssh.dispose(); + await setup.cleanup(); + }); + + it('should propagate for BYOB Study', async () => { + const { adminSession, admin2Session, keyPair } = await testSetup(); + const externalStudy = setup.defaults.byobStudy; + const workspaceName = setup.gen.string({ prefix: 'workspace-sc-test' }); + await adminSession.resources.studies.study(externalStudy).propagatePermission(admin2Session, ['readwrite'], []); + + const env = await admin2Session.resources.workspaceServiceCatalogs.create({ + name: workspaceName, + envTypeId: setup.defaults.envTypes.ec2Linux.envTypeId, + envTypeConfigId: setup.defaults.envTypes.ec2Linux.envTypeConfigId, + studyIds: [externalStudy], + description: 'test', + projectId: setup.defaults.project.id, + cidr: '0.0.0.0/0', + }); + // Poll until workspace is provisioned + await sleep(2000); + await adminSession.resources.workflows + .versions('wf-provision-environment-sc') + .version(1) + .findAndPollWorkflow(env.id, 10000, 60); + // Connect to workspace + const networkInfo = await admin2Session.resources.workspaceServiceCatalogs + .workspaceServiceCatalog(env.id) // env.id + .connections() + .connection('id-1') + .sendSshPublicKey({ keyPairId: keyPair.id }); + + await ssh.connect({ + host: networkInfo.networkInterfaces[0].publicDnsName, + username: 'ec2-user', + privateKey: keyPair.privateKey, + }); + + // Mount studies + let output; + output = await mountStudies(ssh, externalStudy); + + // Readwrite permission level + const numberOfBytes = 20; + output = await readWrite(ssh, externalStudy, numberOfBytes); + expect(output.stdout).toContain(`ec2-user ${numberOfBytes}`); + + // Readonly permission level + await adminSession.resources.studies + .study(externalStudy) + .propagatePermission(admin2Session, ['readonly'], ['readwrite']); + output = await readWrite(ssh, externalStudy); + expect(output.stderr).toEqual(expect.stringMatching(/reading directory .: Permission denied/)); + + await ssh.dispose(); + // Removes user permission + await adminSession.resources.studies.study(externalStudy).propagatePermission(admin2Session, [], ['readonly']); + await setup.cleanup(); + }); + }); + + describe('Confirm study permissions', () => { + it('should pass for My Study', async () => { + const { adminSession, admin2Session, keyPair } = await testSetup(); + const studyId = setup.gen.string({ prefix: `create-my-study-test` }); + await admin2Session.resources.studies.create({ id: studyId, name: studyId, category: 'My Studies' }); + + const workspaceName = setup.gen.string({ prefix: 'workspace-sc-test' }); + const env = await admin2Session.resources.workspaceServiceCatalogs.create({ + name: workspaceName, + envTypeId: setup.defaults.envTypes.ec2Linux.envTypeId, + envTypeConfigId: setup.defaults.envTypes.ec2Linux.envTypeConfigId, + studyIds: [studyId], + description: 'test', + projectId: setup.defaults.project.id, + cidr: '0.0.0.0/0', + }); + + // Poll until workspace is provisioned + await sleep(2000); + await adminSession.resources.workflows + .versions('wf-provision-environment-sc') + .version(1) + .findAndPollWorkflow(env.id, 10000, 60); + + // Connect to workspace + const networkInfo = await admin2Session.resources.workspaceServiceCatalogs + .workspaceServiceCatalog(env.id) // env.id + .connections() + .connection('id-1') + .sendSshPublicKey({ keyPairId: keyPair.id }); + + await ssh.connect({ + host: networkInfo.networkInterfaces[0].publicDnsName, + username: 'ec2-user', + privateKey: keyPair.privateKey, + }); + + const output = await mountStudies(ssh, studyId); + expect(output.stdout).toEqual(expect.stringMatching(/output.txt/)); + await setup.cleanup(); + }); + }); +}); diff --git a/main/integration-tests/__test__/api-tests/workspace-service-catalogs/create-workspace-service-catalog.test.js b/main/integration-tests/__test__/api-tests/workspace-service-catalogs/create-workspace-service-catalog.test.js index ae081426c2..e57e9abd6d 100644 --- a/main/integration-tests/__test__/api-tests/workspace-service-catalogs/create-workspace-service-catalog.test.js +++ b/main/integration-tests/__test__/api-tests/workspace-service-catalogs/create-workspace-service-catalog.test.js @@ -14,6 +14,7 @@ * permissions and limitations under the License. */ +const { sleep } = require('@aws-ee/base-services/lib/helpers/utils'); const { runSetup } = require('../../../support/setup'); const { createWorkspaceTypeAndConfiguration, @@ -167,4 +168,51 @@ describe('Create workspace-service-catalog scenarios', () => { }); }); }); + describe('Workspace SC env with studies', () => { + it('for EC2Linux should provision correctly', async () => { + const admin1Session = await setup.createAdminSession(); + + const studyIds = []; + let studyId = setup.gen.string({ prefix: `create-study-ray-my-study` }); + await expect( + admin1Session.resources.studies.create({ id: studyId, name: studyId, category: 'My Studies' }), + ).resolves.toMatchObject({ + id: studyId, + }); + studyIds.push(studyId); + + studyId = setup.gen.string({ prefix: `create-study-ray-org-study` }); + await expect( + admin1Session.resources.studies.create({ id: studyId, name: studyId, category: 'Organization' }), + ).resolves.toMatchObject({ + id: studyId, + }); + studyIds.push(studyId); + + const workspaceName = setup.gen.string({ prefix: 'workspace-sc-test' }); + const env = await admin1Session.resources.workspaceServiceCatalogs.create({ + name: workspaceName, + envTypeId: setup.defaults.envTypes.ec2Linux.envTypeId, + envTypeConfigId: setup.defaults.envTypes.ec2Linux.envTypeConfigId, + studyIds, + description: 'assignment', + projectId: setup.defaults.project.id, + cidr: '123.123.123.123/12', + }); + expect(env).toMatchObject({ + name: workspaceName, + envTypeId: setup.defaults.envTypes.ec2Linux.envTypeId, + envTypeConfigId: setup.defaults.envTypes.ec2Linux.envTypeConfigId, + studyIds, + }); + + // Poll until workspace is provisioned + await sleep(2000); + await admin1Session.resources.workflows + .versions('wf-provision-environment-sc') + .version(1) + .findAndPollWorkflow(env.id, 10000, 60); + await setup.cleanup(); + }); + }); }); diff --git a/main/integration-tests/config/settings/example.yml b/main/integration-tests/config/settings/example.yml index 6fdd923022..d776acac91 100644 --- a/main/integration-tests/config/settings/example.yml +++ b/main/integration-tests/config/settings/example.yml @@ -39,24 +39,24 @@ isLocal: false # Set this to the API endpoint if different than the following localApiEndpoint: http://localhost:4000 # Provide the id of the available EC2-Linux Service Catalog product -# ec2LinuxEnvTypeId: "prod-sampleEC2Linux-pa-sampleEC2Linux" +ec2LinuxEnvTypeId: "prod-sampleEC2Linux-pa-sampleEC2Linux" # Provide the id of a configuration for an imported EC2-Linux environment -# ec2LinuxConfigId: "" +ec2LinuxConfigId: "sampleLinuxConfigName" # Provide the id of the available EC2-Windows Service Catalog product -# ec2WindowsEnvTypeId: "prod-sampleEC2Windows-pa-sampleEC2Windows" +ec2WindowsEnvTypeId: "prod-sampleEC2Windows-pa-sampleEC2Windows" # Provide the id of a configuration for an imported EC2-Windows environment -# ec2WindowsConfigId: "" +ec2WindowsConfigId: "sampleWindowsConfigName" # Provide the id of the available SageMaker Service Catalog product -# sagemakerEnvTypeId: "prod-sampleSageMaker-pa-sampleSageMaker" +sagemakerEnvTypeId: "prod-sampleSageMaker-pa-sampleSageMaker" # Provide the id of a configuration for an imported SageMaker environment -# sagemakerConfigId: "" +sagemakerConfigId: "sampleSageMakerConfigName" # Provide the id of the available EMR Service Catalog product -# emrEnvTypeId: "prod-sampleEMR-pa-sampleEMR" +emrEnvTypeId: "prod-sampleEMR-pa-sampleEMR" # Provide the id of a configuration for an imported EMR environment -# emrConfigId: "" +emrConfigId: "sampleEMRConfigName" # Provide the id of the external BYOB Data Source study -# byobStudy: "" +byobStudy: "sampleByobStudyName" diff --git a/main/integration-tests/package.json b/main/integration-tests/package.json index 2014901c3d..c07ebf8008 100644 --- a/main/integration-tests/package.json +++ b/main/integration-tests/package.json @@ -27,6 +27,7 @@ "chance": "^1.1.7", "fs-extra": "^9.1.0", "js-yaml": "^4.1.0", + "jwt-decode": "^2.2.0", "lodash": "^4.17.21", "node-ssh": "^11.1.1", "services": "workspace:*", diff --git a/main/integration-tests/support/complex/run-shell-command.js b/main/integration-tests/support/complex/run-shell-command.js index ccdc3da077..839f7baa0c 100644 --- a/main/integration-tests/support/complex/run-shell-command.js +++ b/main/integration-tests/support/complex/run-shell-command.js @@ -16,9 +16,14 @@ async function mountStudies(ssh, studyId) { const output = await ssh.execCommand(`source ~/.bash_profile && cd ~/studies/${studyId} && touch output.txt && ls`); return output; } -async function readWrite(ssh, studyId) { + +// This method aides in the advanced integration test to check study permission levels on workspaces +// by performing the following operations: +// 1. Reads the contents of the study folder (verifies read priveleges) +// 2. Writes random content into a new file in that study folder, and lists to confirm file can be viewed (verifies write priveleges) +async function readWrite(ssh, studyId, numberOfBytes = 20) { const output = await ssh.execCommand( - `cd ~/studies/${studyId} && ls -l && head -c 20 output.txt && ls -l`, + `cd ~/studies/${studyId} && ls -l && head -c ${numberOfBytes} output.txt && ls -l`, ); return output; } diff --git a/main/integration-tests/support/setup.js b/main/integration-tests/support/setup.js index c2142301d5..5581ff4267 100644 --- a/main/integration-tests/support/setup.js +++ b/main/integration-tests/support/setup.js @@ -17,6 +17,7 @@ */ const _ = require('lodash'); +const jwtDecode = require('jwt-decode'); const Settings = require('./utils/settings'); const { getIdToken } = require('./utils/id-token'); @@ -67,12 +68,55 @@ class Setup { jest.retryTimes(3); } + async getNewAdminIdToken() { + let apiEndpoint; + + // If isLocal = false, we get the api endpoint from the backend stack outputs + if (this.settings.get('isLocal')) { + apiEndpoint = this.settings.get('localApiEndpoint'); + } else { + const cloudformation = await this.aws.services.cloudFormation(); + const stackName = this.aws.settings.get('backendStackName'); + apiEndpoint = await cloudformation.getStackOutputValue(stackName, 'ServiceEndpoint'); + if (_.isEmpty(apiEndpoint)) throw new Error(`No API Endpoint value defined in stack ${stackName}`); + } + + // Get the admin password from parameter store + const ssm = await this.aws.services.parameterStore(); + const passwordPath = this.settings.get('passwordPath'); + const password = await ssm.getParameter(passwordPath); + + const adminIdToken = await getIdToken({ + username: this.settings.get('username'), + password, + apiEndpoint, + authenticationProviderId: this.settings.get('authenticationProviderId'), + }); + + return adminIdToken; + } + async defaultAdminSession() { - // Only create a new client session if we haven't done that already - if (this.defaultAdminSessionInstance) return this.defaultAdminSessionInstance; + let idToken = this.settings.get('adminIdToken'); + const decodedIdToken = jwtDecode(idToken); + const expiresAt = _.get(decodedIdToken, 'exp', 0) * 1000; + + // Assume the default admin session is shared between all test cases in a given test suite (ie. test file), + // so it has to stay active throughout the test suite duration. + // Therefore the buffer time (in minutes) should be the longest time taken by any single test suite + // If the current token has less than the buffer minutes remaining, we create a new one. + const bufferInMinutes = 10; + const tokenExpired = (expiresAt - Date.now()) / 60 / 1000 < bufferInMinutes; + + // Only create a new client session if we haven't done that already or if the token has expired + if (this.defaultAdminSessionInstance && !tokenExpired) return this.defaultAdminSessionInstance; + + // If previous token expired, we need to create a new id token for the default admin + if (tokenExpired) { + idToken = await this.getNewAdminIdToken(); + this.settings.set('adminIdToken', idToken); + } - const idToken = this.settings.get('adminIdToken'); - // In the future, we can check if the token expired and if so, we can create a new one const session = await getClientSession({ idToken, setup: this }); this.sessions.push(session); this.defaultAdminSessionInstance = session; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0b40a1458a..d71dc3bde5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,33 +1,4 @@ importers: - .: - devDependencies: - babel-plugin-inline-import: 3.0.0 - eslint: 7.32.0 - eslint-config-airbnb: 18.2.1_99d4791fa33f8ec6eb1617e4d5767faf - eslint-config-airbnb-base: 14.2.1_ee2ddb12623c985c36290f985ad5559c - eslint-config-prettier: 6.15.0_eslint@7.32.0 - eslint-plugin-import: 2.23.4_eslint@7.32.0 - eslint-plugin-jest: 23.20.0_eslint@7.32.0 - eslint-plugin-jsx-a11y: 6.4.1_eslint@7.32.0 - eslint-plugin-prettier: 3.4.0_abde24c0b7a99c720e8b7b900c7a58d8 - eslint-plugin-react: 7.21.5_eslint@7.32.0 - eslint-plugin-react-hooks: 4.2.0_eslint@7.32.0 - prettier-eslint: 11.0.0 - standard-version: 9.3.1 - specifiers: - babel-plugin-inline-import: ^3.0.0 - eslint: ^7.2.0 - eslint-config-airbnb: ^18.2.0 - eslint-config-airbnb-base: ^14.2.0 - eslint-config-prettier: ^6.11.0 - eslint-plugin-import: ^2.22.0 - eslint-plugin-jest: ^23.20.0 - eslint-plugin-jsx-a11y: ^6.3.1 - eslint-plugin-prettier: ^3.1.4 - eslint-plugin-react: ^7.20.5 - eslint-plugin-react-hooks: ^4.0.0 - prettier-eslint: ^11.0.0 - standard-version: ^9.1.0 addons/addon-base-post-deployment/packages/base-post-deployment: dependencies: '@aws-ee/base-api-services': link:../../../addon-base-rest-api/packages/services @@ -1892,6 +1863,7 @@ importers: chance: 1.1.7 fs-extra: 9.1.0 js-yaml: 4.1.0 + jwt-decode: 2.2.0 lodash: 4.17.21 node-ssh: 11.1.1 services: link:../packages/services @@ -1934,6 +1906,7 @@ importers: jest-circus: ^26.6.3 jest-junit: ^10.0.0 js-yaml: ^4.1.0 + jwt-decode: ^2.2.0 lodash: ^4.17.21 node-ssh: ^11.1.1 prettier: ^1.19.1 @@ -4737,22 +4710,6 @@ packages: dev: false resolution: integrity: sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA== - /@eslint/eslintrc/0.4.3: - dependencies: - ajv: 6.12.6 - debug: 4.3.1 - espree: 7.3.1 - globals: 13.11.0 - ignore: 4.0.6 - import-fresh: 3.2.2 - js-yaml: 3.14.0 - minimatch: 3.0.4 - strip-json-comments: 3.1.1 - dev: true - engines: - node: ^10.12.0 || >=12.0.0 - resolution: - integrity: sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== /@hapi/accept/3.2.4: dependencies: '@hapi/boom': 7.4.11 @@ -5021,26 +4978,6 @@ packages: dev: true resolution: integrity: sha512-tQczYRTTeYBmvhsek/D49En/5khcShaBEmzrAaDjMrFXKJRuF8xA8+tlq1ETLBFwGd6Do6g2OC74rt11kzawzg== - /@humanwhocodes/config-array/0.5.0: - dependencies: - '@humanwhocodes/object-schema': 1.2.0 - debug: 4.3.1 - minimatch: 3.0.4 - dev: true - engines: - node: '>=10.10.0' - resolution: - integrity: sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== - /@humanwhocodes/object-schema/1.2.0: - dev: true - resolution: - integrity: sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w== - /@hutson/parse-repository-url/3.0.2: - dev: true - engines: - node: '>=6.9.0' - resolution: - integrity: sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q== /@istanbuljs/load-nyc-config/1.0.0: dependencies: camelcase: 5.3.1 @@ -6271,10 +6208,6 @@ packages: dev: true resolution: integrity: sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== - /@types/minimist/1.2.2: - dev: true - resolution: - integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== /@types/mysql/2.15.18: dependencies: '@types/node': 14.14.10 @@ -6453,36 +6386,6 @@ packages: eslint: '*' resolution: integrity: sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA== - /@typescript-eslint/experimental-utils/2.34.0_eslint@7.32.0: - dependencies: - '@types/json-schema': 7.0.6 - '@typescript-eslint/typescript-estree': 2.34.0 - eslint: 7.32.0 - eslint-scope: 5.1.1 - eslint-utils: 2.1.0 - dev: true - engines: - node: ^8.10.0 || ^10.13.0 || >=11.10.1 - peerDependencies: - eslint: '*' - resolution: - integrity: sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA== - /@typescript-eslint/experimental-utils/3.10.1_eslint@6.8.0+typescript@3.9.10: - dependencies: - '@types/json-schema': 7.0.6 - '@typescript-eslint/types': 3.10.1 - '@typescript-eslint/typescript-estree': 3.10.1_typescript@3.9.10 - eslint: 6.8.0 - eslint-scope: 5.1.1 - eslint-utils: 2.1.0 - dev: true - engines: - node: ^10.12.0 || >=12.0.0 - peerDependencies: - eslint: '*' - typescript: '*' - resolution: - integrity: sha512-DewqIgscDzmAfd5nOGe4zm6Bl7PKtMG2Ad0KG8CUZAHlXfAKTF9Ol5PXhiMh39yRL2ChRH1cuuUGOcVyyrhQIw== /@typescript-eslint/parser/2.34.0_eslint@6.8.0: dependencies: '@types/eslint-visitor-keys': 1.0.0 @@ -6501,32 +6404,6 @@ packages: optional: true resolution: integrity: sha512-03ilO0ucSD0EPTw2X4PntSIRFtDPWjrVq7C3/Z3VQHRC7+13YB55rcJI3Jt+YgeHbjUdJPcPa7b23rXCBokuyA== - /@typescript-eslint/parser/3.10.1_eslint@6.8.0+typescript@3.9.10: - dependencies: - '@types/eslint-visitor-keys': 1.0.0 - '@typescript-eslint/experimental-utils': 3.10.1_eslint@6.8.0+typescript@3.9.10 - '@typescript-eslint/types': 3.10.1 - '@typescript-eslint/typescript-estree': 3.10.1_typescript@3.9.10 - eslint: 6.8.0 - eslint-visitor-keys: 1.3.0 - typescript: 3.9.10 - dev: true - engines: - node: ^10.12.0 || >=12.0.0 - peerDependencies: - eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - resolution: - integrity: sha512-Ug1RcWcrJP02hmtaXVS3axPPTTPnZjupqhgj+NnZ6BCkwSImWk/283347+x9wN+lqOdK9Eo3vsyiyDHgsmiEJw== - /@typescript-eslint/types/3.10.1: - dev: true - engines: - node: ^8.10.0 || ^10.13.0 || >=11.10.1 - resolution: - integrity: sha512-+3+FCUJIahE9q0lDi1WleYzjCwJs5hIsbugIgnbB+dSCYUxl8L6PwmsyOPFZde2hc1DlTo/xnkOgiTLSyAbHiQ== /@typescript-eslint/typescript-estree/1.13.0: dependencies: lodash.unescape: 4.0.1 @@ -6575,35 +6452,6 @@ packages: optional: true resolution: integrity: sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg== - /@typescript-eslint/typescript-estree/3.10.1_typescript@3.9.10: - dependencies: - '@typescript-eslint/types': 3.10.1 - '@typescript-eslint/visitor-keys': 3.10.1 - debug: 4.3.1 - glob: 7.1.6 - is-glob: 4.0.1 - lodash: 4.17.21 - semver: 7.3.4 - tsutils: 3.17.1_typescript@3.9.10 - typescript: 3.9.10 - dev: true - engines: - node: ^10.12.0 || >=12.0.0 - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - resolution: - integrity: sha512-QbcXOuq6WYvnB3XPsZpIwztBoquEYLXh2MtwVU+kO8jgYCiv4G5xrSP/1wg4tkvrEE+esZVquIPX/dxPlePk1w== - /@typescript-eslint/visitor-keys/3.10.1: - dependencies: - eslint-visitor-keys: 1.3.0 - dev: true - engines: - node: ^8.10.0 || ^10.13.0 || >=11.10.1 - resolution: - integrity: sha512-9JgC82AaQeglebjZMgYR5wgmfUdUc+EitGUUMW8u2nDckaeimzW+VsoLV6FoimPv2id3VQzfjwBxEMVz08ameQ== /@webassemblyjs/ast/1.8.5: dependencies: '@webassemblyjs/helper-module-context': 1.8.5 @@ -6867,14 +6715,6 @@ packages: dev: true resolution: integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== - /JSONStream/1.3.5: - dependencies: - jsonparse: 1.3.1 - through: 2.3.8 - dev: true - hasBin: true - resolution: - integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== /abab/2.0.5: dev: true resolution: @@ -6949,10 +6789,6 @@ packages: hasBin: true resolution: integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - /add-stream/1.0.0: - dev: true - resolution: - integrity: sha1-anmQQ3ynNtXhKI25K9MmbV9csqo= /address/1.1.2: dev: true engines: @@ -7082,15 +6918,6 @@ packages: uri-js: 4.4.0 resolution: integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - /ajv/8.6.2: - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.0 - dev: true - resolution: - integrity: sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w== /alphanum-sort/1.0.2: dev: true resolution: @@ -7117,12 +6944,6 @@ packages: node: '>=6' resolution: integrity: sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== - /ansi-colors/4.1.1: - dev: true - engines: - node: '>=6' - resolution: - integrity: sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== /ansi-escapes/3.2.0: dev: true engines: @@ -7400,10 +7221,6 @@ packages: dev: true resolution: integrity: sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== - /array-ify/1.0.0: - dev: true - resolution: - integrity: sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= /array-includes/3.1.1: dependencies: define-properties: 1.1.3 @@ -7560,12 +7377,6 @@ packages: node: '>=4' resolution: integrity: sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== - /astral-regex/2.0.0: - dev: true - engines: - node: '>=8' - resolution: - integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== /async-each/1.0.3: dev: true resolution: @@ -8683,16 +8494,6 @@ packages: dev: true resolution: integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== - /camelcase-keys/6.2.2: - dependencies: - camelcase: 5.3.1 - map-obj: 4.2.1 - quick-lru: 4.0.1 - dev: true - engines: - node: '>=8' - resolution: - integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg== /camelcase/4.1.0: dev: true engines: @@ -9111,14 +8912,6 @@ packages: dev: true resolution: integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== - /cliui/7.0.4: - dependencies: - string-width: 4.2.0 - strip-ansi: 6.0.0 - wrap-ansi: 7.0.0 - dev: true - resolution: - integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== /clone-deep/0.2.4: dependencies: for-own: 0.1.5 @@ -9314,13 +9107,6 @@ packages: dev: true resolution: integrity: sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= - /compare-func/2.0.0: - dependencies: - array-ify: 1.0.0 - dot-prop: 5.3.0 - dev: true - resolution: - integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA== /component-bind/1.0.0: dev: true resolution: @@ -9407,17 +9193,6 @@ packages: '0': node >= 0.8 resolution: integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== - /concat-stream/2.0.0: - dependencies: - buffer-from: 1.1.1 - inherits: 2.0.4 - readable-stream: 3.6.0 - typedarray: 0.0.6 - dev: true - engines: - '0': node >= 6.0 - resolution: - integrity: sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== /config-chain/1.1.12: dependencies: ini: 1.3.5 @@ -9491,188 +9266,6 @@ packages: node: '>= 0.6' resolution: integrity: sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - /conventional-changelog-angular/5.0.12: - dependencies: - compare-func: 2.0.0 - q: 1.5.1 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-5GLsbnkR/7A89RyHLvvoExbiGbd9xKdKqDTrArnPbOqBqG/2wIosu0fHwpeIRI8Tl94MhVNBXcLJZl92ZQ5USw== - /conventional-changelog-atom/2.0.8: - dependencies: - q: 1.5.1 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-xo6v46icsFTK3bb7dY/8m2qvc8sZemRgdqLb/bjpBsH2UyOS8rKNTgcb5025Hri6IpANPApbXMg15QLb1LJpBw== - /conventional-changelog-codemirror/2.0.8: - dependencies: - q: 1.5.1 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-z5DAsn3uj1Vfp7po3gpt2Boc+Bdwmw2++ZHa5Ak9k0UKsYAO5mH1UBTN0qSCuJZREIhX6WU4E1p3IW2oRCNzQw== - /conventional-changelog-config-spec/2.1.0: - dev: true - resolution: - integrity: sha512-IpVePh16EbbB02V+UA+HQnnPIohgXvJRxHcS5+Uwk4AT5LjzCZJm5sp/yqs5C6KZJ1jMsV4paEV13BN1pvDuxQ== - /conventional-changelog-conventionalcommits/4.5.0: - dependencies: - compare-func: 2.0.0 - lodash: 4.17.21 - q: 1.5.1 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-buge9xDvjjOxJlyxUnar/+6i/aVEVGA7EEh4OafBCXPlLUQPGbRUBhBUveWRxzvR8TEjhKEP4BdepnpG2FSZXw== - /conventional-changelog-core/4.2.3: - dependencies: - add-stream: 1.0.0 - conventional-changelog-writer: 5.0.0 - conventional-commits-parser: 3.2.1 - dateformat: 3.0.3 - get-pkg-repo: 4.2.0 - git-raw-commits: 2.0.10 - git-remote-origin-url: 2.0.0 - git-semver-tags: 4.1.1 - lodash: 4.17.21 - normalize-package-data: 3.0.3 - q: 1.5.1 - read-pkg: 3.0.0 - read-pkg-up: 3.0.0 - through2: 4.0.2 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-MwnZjIoMRL3jtPH5GywVNqetGILC7g6RQFvdb8LRU/fA/338JbeWAku3PZ8yQ+mtVRViiISqJlb0sOz0htBZig== - /conventional-changelog-ember/2.0.9: - dependencies: - q: 1.5.1 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-ulzIReoZEvZCBDhcNYfDIsLTHzYHc7awh+eI44ZtV5cx6LVxLlVtEmcO+2/kGIHGtw+qVabJYjdI5cJOQgXh1A== - /conventional-changelog-eslint/3.0.9: - dependencies: - q: 1.5.1 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-6NpUCMgU8qmWmyAMSZO5NrRd7rTgErjrm4VASam2u5jrZS0n38V7Y9CzTtLT2qwz5xEChDR4BduoWIr8TfwvXA== - /conventional-changelog-express/2.0.6: - dependencies: - q: 1.5.1 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-SDez2f3iVJw6V563O3pRtNwXtQaSmEfTCaTBPCqn0oG0mfkq0rX4hHBq5P7De2MncoRixrALj3u3oQsNK+Q0pQ== - /conventional-changelog-jquery/3.0.11: - dependencies: - q: 1.5.1 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-x8AWz5/Td55F7+o/9LQ6cQIPwrCjfJQ5Zmfqi8thwUEKHstEn4kTIofXub7plf1xvFA2TqhZlq7fy5OmV6BOMw== - /conventional-changelog-jshint/2.0.9: - dependencies: - compare-func: 2.0.0 - q: 1.5.1 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-wMLdaIzq6TNnMHMy31hql02OEQ8nCQfExw1SE0hYL5KvU+JCTuPaDO+7JiogGT2gJAxiUGATdtYYfh+nT+6riA== - /conventional-changelog-preset-loader/2.3.4: - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g== - /conventional-changelog-writer/5.0.0: - dependencies: - conventional-commits-filter: 2.0.7 - dateformat: 3.0.3 - handlebars: 4.7.7 - json-stringify-safe: 5.0.1 - lodash: 4.17.21 - meow: 8.1.2 - semver: 6.3.0 - split: 1.0.1 - through2: 4.0.2 - dev: true - engines: - node: '>=10' - hasBin: true - resolution: - integrity: sha512-HnDh9QHLNWfL6E1uHz6krZEQOgm8hN7z/m7tT16xwd802fwgMN0Wqd7AQYVkhpsjDUx/99oo+nGgvKF657XP5g== - /conventional-changelog/3.1.24: - dependencies: - conventional-changelog-angular: 5.0.12 - conventional-changelog-atom: 2.0.8 - conventional-changelog-codemirror: 2.0.8 - conventional-changelog-conventionalcommits: 4.5.0 - conventional-changelog-core: 4.2.3 - conventional-changelog-ember: 2.0.9 - conventional-changelog-eslint: 3.0.9 - conventional-changelog-express: 2.0.6 - conventional-changelog-jquery: 3.0.11 - conventional-changelog-jshint: 2.0.9 - conventional-changelog-preset-loader: 2.3.4 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-ed6k8PO00UVvhExYohroVPXcOJ/K1N0/drJHx/faTH37OIZthlecuLIRX/T6uOp682CAoVoFpu+sSEaeuH6Asg== - /conventional-commits-filter/2.0.7: - dependencies: - lodash.ismatch: 4.4.0 - modify-values: 1.0.1 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA== - /conventional-commits-parser/3.2.1: - dependencies: - JSONStream: 1.3.5 - is-text-path: 1.0.1 - lodash: 4.17.21 - meow: 8.1.2 - split2: 3.2.2 - through2: 4.0.2 - trim-off-newlines: 1.0.1 - dev: true - engines: - node: '>=10' - hasBin: true - resolution: - integrity: sha512-OG9kQtmMZBJD/32NEw5IhN5+HnBqVjy03eC+I71I0oQRFA5rOgA4OtPOYG7mz1GkCfCNxn3gKIX8EiHJYuf1cA== - /conventional-recommended-bump/6.1.0: - dependencies: - concat-stream: 2.0.0 - conventional-changelog-preset-loader: 2.3.4 - conventional-commits-filter: 2.0.7 - conventional-commits-parser: 3.2.1 - git-raw-commits: 2.0.10 - git-semver-tags: 4.1.1 - meow: 8.1.2 - q: 1.5.1 - dev: true - engines: - node: '>=10' - hasBin: true - resolution: - integrity: sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw== /convert-source-map/0.3.5: dev: true resolution: @@ -10303,12 +9896,6 @@ packages: dev: true resolution: integrity: sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug== - /dargs/7.0.0: - dev: true - engines: - node: '>=8' - resolution: - integrity: sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg== /dashdash/1.14.1: dependencies: assert-plus: 1.0.0 @@ -10342,10 +9929,6 @@ packages: dev: false resolution: integrity: sha512-eKeLk3sLCnxB/0PN4t1+zqDtSs4jb4mXRSTZ2okmx/myfWyDqeO4r5nnmA5LClJiCwpuTMeK2v5UQPuE4uMaxA== - /dateformat/3.0.3: - dev: true - resolution: - integrity: sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== /dayjs/1.8.23: dev: true resolution: @@ -10416,15 +9999,6 @@ packages: optional: true resolution: integrity: sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== - /decamelize-keys/1.1.0: - dependencies: - decamelize: 1.2.0 - map-obj: 1.0.1 - dev: true - engines: - node: '>=0.10.0' - resolution: - integrity: sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= /decamelize/1.2.0: engines: node: '>=0.10.0' @@ -10657,16 +10231,10 @@ packages: node: '>=0.10.0' resolution: integrity: sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc= - /detect-indent/6.1.0: + /detect-newline/2.1.0: dev: true engines: - node: '>=8' - resolution: - integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== - /detect-newline/2.1.0: - dev: true - engines: - node: '>=0.10.0' + node: '>=0.10.0' resolution: integrity: sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= /detect-newline/3.1.0: @@ -10850,10 +10418,6 @@ packages: dev: true resolution: integrity: sha1-44Mx8IRLukm5qctxx3FYWqsbxlo= - /dlv/1.1.3: - dev: true - resolution: - integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== /dns-equal/1.0.0: dev: true resolution: @@ -11009,15 +10573,6 @@ packages: node: '>=8' resolution: integrity: sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw== - /dotgitignore/2.1.0: - dependencies: - find-up: 3.0.0 - minimatch: 3.0.4 - dev: true - engines: - node: '>=6' - resolution: - integrity: sha512-sCm11ak2oY6DglEPpCB8TixLjWAxd3kJTs6UIcSasNYxXdFPV+YKlye92c8H4kKFqV5qYMIh7d+cYecEg0dIkA== /download/7.1.0: dependencies: archive-type: 4.0.0 @@ -11266,14 +10821,6 @@ packages: node: '>=6.9.0' resolution: integrity: sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ== - /enquirer/2.3.6: - dependencies: - ansi-colors: 4.1.1 - dev: true - engines: - node: '>=8.6' - resolution: - integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== /entities/1.1.2: dev: true resolution: @@ -11530,12 +11077,6 @@ packages: node: '>=8' resolution: integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== - /escape-string-regexp/4.0.0: - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== /escodegen/1.14.1: dependencies: esprima: 4.0.1 @@ -11609,21 +11150,6 @@ packages: eslint-plugin-import: ^2.22.1 resolution: integrity: sha512-GOrQyDtVEc1Xy20U7vsB2yAoB4nBlfH5HZJeatRXHleO+OS5Ot+MWij4Dpltw4/DyIkqUfqz1epfhVR5XWWQPA== - /eslint-config-airbnb-base/14.2.1_ee2ddb12623c985c36290f985ad5559c: - dependencies: - confusing-browser-globals: 1.0.10 - eslint: 7.32.0 - eslint-plugin-import: 2.23.4_eslint@7.32.0 - object.assign: 4.1.2 - object.entries: 1.1.3 - dev: true - engines: - node: '>= 6' - peerDependencies: - eslint: ^5.16.0 || ^6.8.0 || ^7.2.0 - eslint-plugin-import: ^2.22.1 - resolution: - integrity: sha512-GOrQyDtVEc1Xy20U7vsB2yAoB4nBlfH5HZJeatRXHleO+OS5Ot+MWij4Dpltw4/DyIkqUfqz1epfhVR5XWWQPA== /eslint-config-airbnb/18.1.0_7221e9efc3e1df952f9031babfc371af: dependencies: eslint: 6.8.0 @@ -11703,27 +11229,6 @@ packages: eslint-plugin-react-hooks: ^4 || ^3 || ^2.3.0 || ^1.7.0 resolution: integrity: sha512-glZNDEZ36VdlZWoxn/bUR1r/sdFKPd1mHPbqUtkctgNG4yT2DLLtJ3D+yCV+jzZCc2V1nBVkmdknOJBZ5Hc0fg== - /eslint-config-airbnb/18.2.1_99d4791fa33f8ec6eb1617e4d5767faf: - dependencies: - eslint: 7.32.0 - eslint-config-airbnb-base: 14.2.1_ee2ddb12623c985c36290f985ad5559c - eslint-plugin-import: 2.23.4_eslint@7.32.0 - eslint-plugin-jsx-a11y: 6.4.1_eslint@7.32.0 - eslint-plugin-react: 7.21.5_eslint@7.32.0 - eslint-plugin-react-hooks: 4.2.0_eslint@7.32.0 - object.assign: 4.1.2 - object.entries: 1.1.3 - dev: true - engines: - node: '>= 6' - peerDependencies: - eslint: ^5.16.0 || ^6.8.0 || ^7.2.0 - eslint-plugin-import: ^2.22.1 - eslint-plugin-jsx-a11y: ^6.4.1 - eslint-plugin-react: ^7.21.5 - eslint-plugin-react-hooks: ^4 || ^3 || ^2.3.0 || ^1.7.0 - resolution: - integrity: sha512-glZNDEZ36VdlZWoxn/bUR1r/sdFKPd1mHPbqUtkctgNG4yT2DLLtJ3D+yCV+jzZCc2V1nBVkmdknOJBZ5Hc0fg== /eslint-config-airbnb/18.2.1_fdb7bbbc49566f392bdf537c74c00196: dependencies: eslint: 6.8.0 @@ -11763,16 +11268,6 @@ packages: eslint: '>=3.14.1' resolution: integrity: sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw== - /eslint-config-prettier/6.15.0_eslint@7.32.0: - dependencies: - eslint: 7.32.0 - get-stdin: 6.0.0 - dev: true - hasBin: true - peerDependencies: - eslint: '>=3.14.1' - resolution: - integrity: sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw== /eslint-config-react-app/5.2.1_f8f91f27f800428497667fb337aaf85d: dependencies: '@typescript-eslint/eslint-plugin': 2.34.0_984cbb313f9ea271f36cadd8f9814e06 @@ -11960,31 +11455,6 @@ packages: eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 resolution: integrity: sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ== - /eslint-plugin-import/2.23.4_eslint@7.32.0: - dependencies: - array-includes: 3.1.3 - array.prototype.flat: 1.2.4 - debug: 2.6.9 - doctrine: 2.1.0 - eslint: 7.32.0 - eslint-import-resolver-node: 0.3.4 - eslint-module-utils: 2.6.1 - find-up: 2.1.0 - has: 1.0.3 - is-core-module: 2.5.0 - minimatch: 3.0.4 - object.values: 1.1.4 - pkg-up: 2.0.0 - read-pkg-up: 3.0.0 - resolve: 1.20.0 - tsconfig-paths: 3.9.0 - dev: true - engines: - node: '>=4' - peerDependencies: - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 - resolution: - integrity: sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ== /eslint-plugin-jest/22.21.0_eslint@6.8.0: dependencies: '@typescript-eslint/experimental-utils': 1.13.0_eslint@6.8.0 @@ -12007,17 +11477,6 @@ packages: eslint: '>=5' resolution: integrity: sha512-+6BGQt85OREevBDWCvhqj1yYA4+BFK4XnRZSGJionuEYmcglMZYLNNBBemwzbqUAckURaHdJSBcjHPyrtypZOw== - /eslint-plugin-jest/23.20.0_eslint@7.32.0: - dependencies: - '@typescript-eslint/experimental-utils': 2.34.0_eslint@7.32.0 - eslint: 7.32.0 - dev: true - engines: - node: '>=8' - peerDependencies: - eslint: '>=5' - resolution: - integrity: sha512-+6BGQt85OREevBDWCvhqj1yYA4+BFK4XnRZSGJionuEYmcglMZYLNNBBemwzbqUAckURaHdJSBcjHPyrtypZOw== /eslint-plugin-jsx-a11y/6.2.3_eslint@6.8.0: dependencies: '@babel/runtime': 7.12.5 @@ -12058,27 +11517,6 @@ packages: eslint: ^3 || ^4 || ^5 || ^6 || ^7 resolution: integrity: sha512-0rGPJBbwHoGNPU73/QCLP/vveMlM1b1Z9PponxO87jfr6tuH5ligXbDT6nHSSzBC8ovX2Z+BQu7Bk5D/Xgq9zg== - /eslint-plugin-jsx-a11y/6.4.1_eslint@7.32.0: - dependencies: - '@babel/runtime': 7.12.5 - aria-query: 4.2.2 - array-includes: 3.1.3 - ast-types-flow: 0.0.7 - axe-core: 4.1.1 - axobject-query: 2.2.0 - damerau-levenshtein: 1.0.6 - emoji-regex: 9.2.0 - eslint: 7.32.0 - has: 1.0.3 - jsx-ast-utils: 3.1.0 - language-tags: 1.0.5 - dev: true - engines: - node: '>=4.0' - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 - resolution: - integrity: sha512-0rGPJBbwHoGNPU73/QCLP/vveMlM1b1Z9PponxO87jfr6tuH5ligXbDT6nHSSzBC8ovX2Z+BQu7Bk5D/Xgq9zg== /eslint-plugin-prettier/3.1.2_eslint@6.8.0+prettier@1.19.1: dependencies: eslint: 6.8.0 @@ -12105,23 +11543,6 @@ packages: prettier: '>=1.13.0' resolution: integrity: sha512-jZDa8z76klRqo+TdGDTFJSavwbnWK2ZpqGKNZ+VvweMW516pDUMmQ2koXvxEE4JhzNvTv+radye/bWGBmA6jmg== - /eslint-plugin-prettier/3.4.0_abde24c0b7a99c720e8b7b900c7a58d8: - dependencies: - eslint: 7.32.0 - eslint-config-prettier: 6.15.0_eslint@7.32.0 - prettier-linter-helpers: 1.0.0 - dev: true - engines: - node: '>=6.0.0' - peerDependencies: - eslint: '>=5.0.0' - eslint-config-prettier: '*' - prettier: '>=1.13.0' - peerDependenciesMeta: - eslint-config-prettier: - optional: true - resolution: - integrity: sha512-UDK6rJT6INSfcOo545jiaOwB701uAIt2/dR7WnFQoGCVl1/EMqdANBmwUaqqQ45aXprsTGzSa39LI1PyuRBxxw== /eslint-plugin-prettier/3.4.0_b77cd85fda941e232840dc83bf6b7690: dependencies: eslint: 6.8.0 @@ -12160,16 +11581,6 @@ packages: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 resolution: integrity: sha512-Y2c4b55R+6ZzwtTppKwSmK/Kar8AdLiC2f9NADCuxbcTgPPg41Gyqa6b9GppgXSvCtkRw43ZE86CT5sejKC6/g== - /eslint-plugin-react-hooks/4.2.0_eslint@7.32.0: - dependencies: - eslint: 7.32.0 - dev: true - engines: - node: '>=10' - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 - resolution: - integrity: sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ== /eslint-plugin-react/7.19.0_eslint@6.8.0: dependencies: array-includes: 3.1.2 @@ -12213,27 +11624,6 @@ packages: eslint: ^3 || ^4 || ^5 || ^6 || ^7 resolution: integrity: sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g== - /eslint-plugin-react/7.21.5_eslint@7.32.0: - dependencies: - array-includes: 3.1.3 - array.prototype.flatmap: 1.2.4 - doctrine: 2.1.0 - eslint: 7.32.0 - has: 1.0.3 - jsx-ast-utils: 3.1.0 - object.entries: 1.1.3 - object.fromentries: 2.0.3 - object.values: 1.1.4 - prop-types: 15.7.2 - resolve: 1.20.0 - string.prototype.matchall: 4.0.3 - dev: true - engines: - node: '>=4' - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 - resolution: - integrity: sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g== /eslint-scope/4.0.3: dependencies: esrecurse: 4.3.0 @@ -12274,12 +11664,6 @@ packages: node: '>=4' resolution: integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - /eslint-visitor-keys/2.1.0: - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== /eslint/6.8.0: dependencies: '@babel/code-frame': 7.12.11 @@ -12325,54 +11709,6 @@ packages: hasBin: true resolution: integrity: sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig== - /eslint/7.32.0: - dependencies: - '@babel/code-frame': 7.12.11 - '@eslint/eslintrc': 0.4.3 - '@humanwhocodes/config-array': 0.5.0 - ajv: 6.12.6 - chalk: 4.1.0 - cross-spawn: 7.0.2 - debug: 4.3.1 - doctrine: 3.0.0 - enquirer: 2.3.6 - escape-string-regexp: 4.0.0 - eslint-scope: 5.1.1 - eslint-utils: 2.1.0 - eslint-visitor-keys: 2.1.0 - espree: 7.3.1 - esquery: 1.4.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - functional-red-black-tree: 1.0.1 - glob-parent: 5.1.2 - globals: 13.11.0 - ignore: 4.0.6 - import-fresh: 3.2.2 - imurmurhash: 0.1.4 - is-glob: 4.0.1 - js-yaml: 3.14.0 - json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 - lodash.merge: 4.6.2 - minimatch: 3.0.4 - natural-compare: 1.4.0 - optionator: 0.9.1 - progress: 2.0.3 - regexpp: 3.1.0 - semver: 7.3.4 - strip-ansi: 6.0.0 - strip-json-comments: 3.1.1 - table: 6.7.1 - text-table: 0.2.0 - v8-compile-cache: 2.2.0 - dev: true - engines: - node: ^10.12.0 || >=12.0.0 - hasBin: true - resolution: - integrity: sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== /esniff/1.1.0: dependencies: d: 1.0.1 @@ -12390,16 +11726,6 @@ packages: node: '>=6.0.0' resolution: integrity: sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw== - /espree/7.3.1: - dependencies: - acorn: 7.4.1 - acorn-jsx: 5.3.1_acorn@7.4.1 - eslint-visitor-keys: 1.3.0 - dev: true - engines: - node: ^10.12.0 || >=12.0.0 - resolution: - integrity: sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== /esprima/4.0.1: engines: node: '>=4' @@ -12888,14 +12214,6 @@ packages: node: '>=4' resolution: integrity: sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== - /file-entry-cache/6.0.1: - dependencies: - flat-cache: 3.0.4 - dev: true - engines: - node: ^10.12.0 || >=12.0.0 - resolution: - integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== /file-exists-dazinatorfork/1.0.2: dev: true engines: @@ -13131,15 +12449,6 @@ packages: node: '>=8' resolution: integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - /find-up/5.0.0: - dependencies: - locate-path: 6.0.0 - path-exists: 4.0.0 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== /find/0.3.0: dependencies: traverse-chain: 0.1.0 @@ -13173,15 +12482,6 @@ packages: node: '>=4' resolution: integrity: sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== - /flat-cache/3.0.4: - dependencies: - flatted: 3.2.2 - rimraf: 3.0.2 - dev: true - engines: - node: ^10.12.0 || >=12.0.0 - resolution: - integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== /flat/5.0.0: dependencies: is-buffer: 2.0.4 @@ -13199,10 +12499,6 @@ packages: dev: true resolution: integrity: sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== - /flatted/3.2.2: - dev: true - resolution: - integrity: sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA== /flatten/1.0.3: dev: true resolution: @@ -13324,14 +12620,6 @@ packages: dev: true resolution: integrity: sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= - /fs-access/1.0.1: - dependencies: - null-check: 1.0.0 - dev: true - engines: - node: '>=0.10.0' - resolution: - integrity: sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o= /fs-constants/1.0.0: dev: true resolution: @@ -13533,18 +12821,6 @@ packages: dev: true resolution: integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== - /get-pkg-repo/4.2.0: - dependencies: - '@hutson/parse-repository-url': 3.0.2 - hosted-git-info: 4.0.2 - through2: 2.0.5 - yargs: 17.1.1 - dev: true - engines: - node: '>=6.9.0' - hasBin: true - resolution: - integrity: sha512-eiSexNxIsij+l+IZzkqT52t4Lh+0ChN9l6Z3oennXLQT8OaJNvp9ecoXpmZ220lPYMwwM1KDal4w4ZA+smVLHA== /get-proxy/2.1.0: dependencies: npm-conf: 1.1.3 @@ -13619,44 +12895,6 @@ packages: assert-plus: 1.0.0 resolution: integrity: sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - /git-raw-commits/2.0.10: - dependencies: - dargs: 7.0.0 - lodash: 4.17.21 - meow: 8.1.2 - split2: 3.2.2 - through2: 4.0.2 - dev: true - engines: - node: '>=10' - hasBin: true - resolution: - integrity: sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ== - /git-remote-origin-url/2.0.0: - dependencies: - gitconfiglocal: 1.0.0 - pify: 2.3.0 - dev: true - engines: - node: '>=4' - resolution: - integrity: sha1-UoJlna4hBxRaERJhEq0yFuxfpl8= - /git-semver-tags/4.1.1: - dependencies: - meow: 8.1.2 - semver: 6.3.0 - dev: true - engines: - node: '>=10' - hasBin: true - resolution: - integrity: sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA== - /gitconfiglocal/1.0.0: - dependencies: - ini: 1.3.5 - dev: true - resolution: - integrity: sha1-QdBF84UaXqiPA/JMocYXgRRGS5s= /glob-parent/3.1.0: dependencies: is-glob: 3.1.0 @@ -13765,14 +13003,6 @@ packages: node: '>=8' resolution: integrity: sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== - /globals/13.11.0: - dependencies: - type-fest: 0.20.2 - dev: true - engines: - node: '>=8' - resolution: - integrity: sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g== /globby/10.0.2: dependencies: '@types/glob': 7.1.3 @@ -13956,20 +13186,6 @@ packages: dev: true resolution: integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== - /handlebars/4.7.7: - dependencies: - minimist: 1.2.5 - neo-async: 2.6.2 - source-map: 0.6.1 - wordwrap: 1.0.0 - dev: true - engines: - node: '>=0.4.7' - hasBin: true - optionalDependencies: - uglify-js: 3.14.2 - resolution: - integrity: sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== /hapi-plugin-websocket/2.3.0_@hapi+hapi@18.4.1: dependencies: '@hapi/boom': 9.0.0 @@ -14009,12 +13225,6 @@ packages: node: '>=6' resolution: integrity: sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== - /hard-rejection/2.1.0: - dev: true - engines: - node: '>=6' - resolution: - integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== /harmony-reflect/1.6.1: dev: true resolution: @@ -14196,14 +13406,6 @@ packages: dev: true resolution: integrity: sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== - /hosted-git-info/4.0.2: - dependencies: - lru-cache: 6.0.0 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg== /hpack.js/2.1.6: dependencies: inherits: 2.0.4 @@ -15310,14 +14512,6 @@ packages: node: '>= 0.4' resolution: integrity: sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== - /is-text-path/1.0.1: - dependencies: - text-extensions: 1.9.0 - dev: true - engines: - node: '>=0.10.0' - resolution: - integrity: sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4= /is-typedarray/1.0.0: resolution: integrity: sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= @@ -16630,11 +15824,7 @@ packages: integrity: sha512-0vOQd9eLNBL18EGl5yYaO44GhixmImes2wiYn9Z3sag3QnehWrYWlB9AFtMxCL2Bj3fyxgDYkxGFEU/chlYssw== /json-schema-traverse/0.4.1: resolution: - integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - /json-schema-traverse/1.0.0: - dev: true - resolution: - integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== /json-schema/0.2.3: resolution: integrity: sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= @@ -16706,12 +15896,6 @@ packages: dev: true resolution: integrity: sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= - /jsonparse/1.3.1: - dev: true - engines: - '0': node >= 0.2.0 - resolution: - integrity: sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= /jsonpath-plus/1.1.0: dev: true engines: @@ -16982,15 +16166,6 @@ packages: node: '>= 0.8.0' resolution: integrity: sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= - /levn/0.4.1: - dependencies: - prelude-ls: 1.2.1 - type-check: 0.4.0 - dev: true - engines: - node: '>= 0.8.0' - resolution: - integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== /lie/3.3.0: dependencies: immediate: 3.0.6 @@ -17141,22 +16316,10 @@ packages: node: '>=8' resolution: integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== - /locate-path/6.0.0: - dependencies: - p-locate: 5.0.0 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== /lodash._reinterpolate/3.0.0: dev: true resolution: integrity: sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= - /lodash.clonedeep/4.5.0: - dev: true - resolution: - integrity: sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= /lodash.defaults/4.2.0: dev: true resolution: @@ -17194,10 +16357,6 @@ packages: /lodash.isinteger/4.0.4: resolution: integrity: sha1-YZwK89A/iwTDH1iChAt3sRzWg0M= - /lodash.ismatch/4.4.0: - dev: true - resolution: - integrity: sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc= /lodash.isnumber/3.0.3: resolution: integrity: sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w= @@ -17211,10 +16370,6 @@ packages: dev: true resolution: integrity: sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= - /lodash.merge/4.6.2: - dev: true - resolution: - integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== /lodash.once/4.1.1: resolution: integrity: sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= @@ -17235,10 +16390,6 @@ packages: dev: true resolution: integrity: sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== - /lodash.truncate/4.4.2: - dev: true - resolution: - integrity: sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= /lodash.unescape/4.0.1: dev: true resolution: @@ -17301,13 +16452,6 @@ packages: dev: true resolution: integrity: sha512-N0qPlqfypFx7UHNn4B3lzS/b0uLqt2hmuoa+PpuXNYgozdJYAyauF5Ky0BWVjrxDlMWiT3qN4zPq3vVAfZy7Yg== - /loglevel-colored-level-prefix/1.0.0: - dependencies: - chalk: 1.1.3 - loglevel: 1.7.1 - dev: true - resolution: - integrity: sha1-akAhj9x64V/HbD0PPmdsRlOIYD4= /loglevel/1.7.1: dev: true engines: @@ -17442,18 +16586,6 @@ packages: node: '>=0.10.0' resolution: integrity: sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= - /map-obj/1.0.1: - dev: true - engines: - node: '>=0.10.0' - resolution: - integrity: sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= - /map-obj/4.2.1: - dev: true - engines: - node: '>=8' - resolution: - integrity: sha512-+WA2/1sPmDj1dlvvJmB5G6JKfY9dpn7EVBUL06+y6PoljPkh+6V1QihwxNkbcGxCRjt2b0F9K0taiCuo7MbdFQ== /map-visit/1.0.0: dependencies: object-visit: 1.0.1 @@ -17541,24 +16673,6 @@ packages: node: '>=4.3.0 <5.0.0 || >=5.10' resolution: integrity: sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== - /meow/8.1.2: - dependencies: - '@types/minimist': 1.2.2 - camelcase-keys: 6.2.2 - decamelize-keys: 1.1.0 - hard-rejection: 2.1.0 - minimist-options: 4.1.0 - normalize-package-data: 3.0.3 - read-pkg-up: 7.0.1 - redent: 3.0.0 - trim-newlines: 3.0.0 - type-fest: 0.18.1 - yargs-parser: 20.2.9 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q== /merge-deep/3.0.2: dependencies: arr-union: 3.1.0 @@ -17708,12 +16822,6 @@ packages: node: '>=4' resolution: integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== - /min-indent/1.0.1: - dev: true - engines: - node: '>=4' - resolution: - integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== /mini-create-react-context/0.3.2_prop-types@15.7.2+react@16.13.1: dependencies: '@babel/runtime': 7.10.3 @@ -17765,16 +16873,6 @@ packages: dev: true resolution: integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - /minimist-options/4.1.0: - dependencies: - arrify: 1.0.1 - is-plain-obj: 1.1.0 - kind-of: 6.0.3 - dev: true - engines: - node: '>= 6' - resolution: - integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== /minimist/1.2.5: dev: true resolution: @@ -17961,12 +17059,6 @@ packages: dev: false resolution: integrity: sha512-wyM3FghTkhmC+hQjyPGGFdpehrcX1KOXsDuERhfK2YbJemkUhEB+6wzEN639T21onxlfYBmriA1PFnvxTUhcKw== - /modify-values/1.0.1: - dev: true - engines: - node: '>=0.10.0' - resolution: - integrity: sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== /module-definition/3.3.0: dependencies: ast-module-types: 2.6.0 @@ -18350,17 +17442,6 @@ packages: dev: true resolution: integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - /normalize-package-data/3.0.3: - dependencies: - hosted-git-info: 4.0.2 - is-core-module: 2.5.0 - semver: 7.3.4 - validate-npm-package-license: 3.0.4 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== /normalize-path/2.1.1: dependencies: remove-trailing-separator: 1.1.0 @@ -18445,12 +17526,6 @@ packages: dev: true resolution: integrity: sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== - /null-check/1.0.0: - dev: true - engines: - node: '>=0.10.0' - resolution: - integrity: sha1-l33/1xdgErnsMNKjnbXPcqBDnt0= /num2fraction/1.2.2: dev: true resolution: @@ -18766,19 +17841,6 @@ packages: node: '>= 0.8.0' resolution: integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== - /optionator/0.9.1: - dependencies: - deep-is: 0.1.3 - fast-levenshtein: 2.0.6 - levn: 0.4.1 - prelude-ls: 1.2.1 - type-check: 0.4.0 - word-wrap: 1.2.3 - dev: true - engines: - node: '>= 0.8.0' - resolution: - integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== /original/1.0.2: dependencies: url-parse: 1.4.7 @@ -18882,14 +17944,6 @@ packages: node: '>=6' resolution: integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - /p-limit/3.1.0: - dependencies: - yocto-queue: 0.1.0 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== /p-locate/2.0.0: dependencies: p-limit: 1.3.0 @@ -18913,14 +17967,6 @@ packages: node: '>=8' resolution: integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== - /p-locate/5.0.0: - dependencies: - p-limit: 3.1.0 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== /p-map/2.1.0: dev: true engines: @@ -20177,12 +19223,6 @@ packages: node: '>= 0.8.0' resolution: integrity: sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= - /prelude-ls/1.2.1: - dev: true - engines: - node: '>= 0.8.0' - resolution: - integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== /prepend-http/1.0.4: dev: true engines: @@ -20195,25 +19235,6 @@ packages: node: '>=4' resolution: integrity: sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= - /prettier-eslint/11.0.0: - dependencies: - '@typescript-eslint/parser': 3.10.1_eslint@6.8.0+typescript@3.9.10 - common-tags: 1.8.0 - dlv: 1.1.3 - eslint: 6.8.0 - indent-string: 4.0.0 - lodash.merge: 4.6.2 - loglevel-colored-level-prefix: 1.0.0 - prettier: 2.3.2 - pretty-format: 23.6.0 - require-relative: 0.8.7 - typescript: 3.9.10 - vue-eslint-parser: 7.1.1_eslint@6.8.0 - dev: true - engines: - node: '>=8.0.0' - resolution: - integrity: sha512-ACjL7T8m10HCO7DwYdXwhNWuZzQv86JkZAhVpzFV9brTMWi3i6LhqoELFaXf6RetDngujz89tnbDmGyvDl+rzA== /prettier-linter-helpers/1.0.0: dependencies: fast-diff: 1.2.0 @@ -20229,13 +19250,6 @@ packages: hasBin: true resolution: integrity: sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== - /prettier/2.3.2: - dev: true - engines: - node: '>=10.13.0' - hasBin: true - resolution: - integrity: sha512-lnJzDfJ66zkMy58OL5/NY5zp70S7Nz6KqcKkXYzn2tMVrNxvbqaBpg7H3qHaLxCJ5lNMsGuM8+ohS7cZrthdLQ== /pretty-bytes/5.3.0: engines: node: '>=6' @@ -20254,13 +19268,6 @@ packages: dev: true resolution: integrity: sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw== - /pretty-format/23.6.0: - dependencies: - ansi-regex: 3.0.0 - ansi-styles: 3.2.1 - dev: true - resolution: - integrity: sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw== /pretty-format/24.9.0: dependencies: '@jest/types': 24.9.0 @@ -20535,12 +19542,6 @@ packages: dev: true resolution: integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== - /quick-lru/4.0.1: - dev: true - engines: - node: '>=8' - resolution: - integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== /raf-schd/4.0.2: dev: false resolution: @@ -21326,15 +20327,6 @@ packages: node: '>=0.10.0' resolution: integrity: sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg== - /redent/3.0.0: - dependencies: - indent-string: 4.0.0 - strip-indent: 3.0.0 - dev: true - engines: - node: '>=8' - resolution: - integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg== /redux/4.0.5: dependencies: loose-envify: 1.4.0 @@ -21623,19 +20615,9 @@ packages: node: '>=0.10.0' resolution: integrity: sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - /require-from-string/2.0.2: - dev: true - engines: - node: '>=0.10.0' - resolution: - integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== /require-main-filename/2.0.0: resolution: integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== - /require-relative/0.8.7: - dev: true - resolution: - integrity: sha1-eZlTn8ngR6N5KPoZb44VY9q9Nt4= /require-resolve/0.0.2: dependencies: x-path: 0.0.2 @@ -22656,16 +21638,6 @@ packages: node: '>=6' resolution: integrity: sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== - /slice-ansi/4.0.0: - dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== /slugify/1.4.0: dev: false engines: @@ -22919,12 +21891,6 @@ packages: node: '>=0.10.0' resolution: integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - /split/1.0.1: - dependencies: - through: 2.3.8 - dev: true - resolution: - integrity: sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg== /split2/3.2.2: dependencies: readable-stream: 3.6.0 @@ -23021,29 +21987,6 @@ packages: node: '>=10' resolution: integrity: sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw== - /standard-version/9.3.1: - dependencies: - chalk: 2.4.2 - conventional-changelog: 3.1.24 - conventional-changelog-config-spec: 2.1.0 - conventional-changelog-conventionalcommits: 4.5.0 - conventional-recommended-bump: 6.1.0 - detect-indent: 6.1.0 - detect-newline: 3.1.0 - dotgitignore: 2.1.0 - figures: 3.2.0 - find-up: 5.0.0 - fs-access: 1.0.1 - git-semver-tags: 4.1.1 - semver: 7.3.4 - stringify-package: 1.0.1 - yargs: 16.2.0 - dev: true - engines: - node: '>=10' - hasBin: true - resolution: - integrity: sha512-5qMxXw/FxLouC5nANyx/5RY1kiorJx9BppUso8gN07MG64q2uLRmrPb4KfXp3Ql4s/gxjZwZ89e0FwxeLubGww== /static-extend/0.1.2: dependencies: define-property: 0.2.5 @@ -23278,10 +22221,6 @@ packages: node: '>=4' resolution: integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - /stringify-package/1.0.1: - dev: true - resolution: - integrity: sha512-sa4DUQsYciMP1xhKWGuFM04fB0LG/9DlluZoSVywUMRNvzid6XucHK0/90xGxRoHrAaROrcHK1aPKaijCtSrhg== /strip-ansi/3.0.1: dependencies: ansi-regex: 2.1.1 @@ -23360,14 +22299,6 @@ packages: node: '>=6' resolution: integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== - /strip-indent/3.0.0: - dependencies: - min-indent: 1.0.1 - dev: true - engines: - node: '>=8' - resolution: - integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== /strip-json-comments/2.0.1: dev: true engines: @@ -23525,19 +22456,6 @@ packages: node: '>=6.0.0' resolution: integrity: sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== - /table/6.7.1: - dependencies: - ajv: 8.6.2 - lodash.clonedeep: 4.5.0 - lodash.truncate: 4.4.2 - slice-ansi: 4.0.0 - string-width: 4.2.0 - strip-ansi: 6.0.0 - dev: true - engines: - node: '>=10.0.0' - resolution: - integrity: sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg== /tabtab/3.0.2: dependencies: debug: 4.3.1 @@ -23717,12 +22635,6 @@ packages: node: '>=8' resolution: integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== - /text-extensions/1.9.0: - dev: true - engines: - node: '>=0.10' - resolution: - integrity: sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ== /text-hex/1.0.0: dev: true resolution: @@ -23754,12 +22666,6 @@ packages: dev: true resolution: integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== - /through2/4.0.2: - dependencies: - readable-stream: 3.6.0 - dev: true - resolution: - integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw== /thunky/1.1.0: dev: true resolution: @@ -23946,12 +22852,6 @@ packages: node: '>=8' resolution: integrity: sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA== - /trim-off-newlines/1.0.1: - dev: true - engines: - node: '>=0.10.0' - resolution: - integrity: sha1-n5up2e+odkw4dpi8v+sshI8RrbM= /trim-repeated/1.0.0: dependencies: escape-string-regexp: 1.0.5 @@ -24061,17 +22961,6 @@ packages: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' resolution: integrity: sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g== - /tsutils/3.17.1_typescript@3.9.10: - dependencies: - tslib: 1.14.1 - typescript: 3.9.10 - dev: true - engines: - node: '>= 6' - peerDependencies: - typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' - resolution: - integrity: sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g== /tty-browserify/0.0.0: dev: true resolution: @@ -24092,14 +22981,6 @@ packages: node: '>= 0.8.0' resolution: integrity: sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= - /type-check/0.4.0: - dependencies: - prelude-ls: 1.2.1 - dev: true - engines: - node: '>= 0.8.0' - resolution: - integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== /type-detect/4.0.8: dev: true engines: @@ -24112,18 +22993,6 @@ packages: node: '>=8' resolution: integrity: sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== - /type-fest/0.18.1: - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw== - /type-fest/0.20.2: - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== /type-fest/0.3.1: dev: true engines: @@ -24187,21 +23056,6 @@ packages: hasBin: true resolution: integrity: sha512-MYlEfn5VrLNsgudQTVJeNaQFUAI7DkhnOjdpAp4T+ku1TfQClewlbSuTVHiA+8skNBgaf02TL/kLOvig4y3G8w== - /typescript/3.9.10: - dev: true - engines: - node: '>=4.2.0' - hasBin: true - resolution: - integrity: sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q== - /uglify-js/3.14.2: - dev: true - engines: - node: '>=0.8.0' - hasBin: true - optional: true - resolution: - integrity: sha512-rtPMlmcO4agTUfz10CbgJ1k6UAoXM2gWb3GoMPPZB/+/Ackf8lNWk11K4rYi2D0apgoFRLtQOZhb+/iGNJq26A== /un-eval/1.2.0: dev: true resolution: @@ -24633,22 +23487,6 @@ packages: dev: true resolution: integrity: sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== - /vue-eslint-parser/7.1.1_eslint@6.8.0: - dependencies: - debug: 4.3.1 - eslint: 6.8.0 - eslint-scope: 5.1.1 - eslint-visitor-keys: 1.3.0 - espree: 6.2.1 - esquery: 1.4.0 - lodash: 4.17.21 - dev: true - engines: - node: '>=8.10' - peerDependencies: - eslint: '>=5.0.0' - resolution: - integrity: sha512-8FdXi0gieEwh1IprIBafpiJWcApwrU+l2FEj8c1HtHFdNXMd0+2jUSjBVmcQYohf/E72irwAXEXLga6TQcB3FA== /w3c-hr-time/1.0.2: dependencies: browser-process-hrtime: 1.0.0 @@ -25106,10 +23944,6 @@ packages: node: '>=0.10.0' resolution: integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== - /wordwrap/1.0.0: - dev: true - resolution: - integrity: sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= /workbox-background-sync/4.3.1: dependencies: workbox-core: 4.3.1 @@ -25276,16 +24110,6 @@ packages: node: '>=8' resolution: integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== - /wrap-ansi/7.0.0: - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.0 - strip-ansi: 6.0.0 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== /wrappy/1.0.2: dev: true resolution: @@ -25457,12 +24281,6 @@ packages: /y18n/4.0.3: resolution: integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== - /y18n/5.0.8: - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== /yallist/2.1.2: dev: true resolution: @@ -25523,6 +24341,7 @@ packages: resolution: integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== /yargs-parser/20.2.9: + dev: false engines: node: '>=10' resolution: @@ -25592,34 +24411,6 @@ packages: node: '>=8' resolution: integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== - /yargs/16.2.0: - dependencies: - cliui: 7.0.4 - escalade: 3.1.1 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.0 - y18n: 5.0.8 - yargs-parser: 20.2.9 - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== - /yargs/17.1.1: - dependencies: - cliui: 7.0.4 - escalade: 3.1.1 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.0 - y18n: 5.0.8 - yargs-parser: 20.2.9 - dev: true - engines: - node: '>=12' - resolution: - integrity: sha512-c2k48R0PwKIqKhPMWjeiF6y2xY/gPMUlro0sgxqXpbOIohWiLNXWslsootttv7E1e73QPAMQSg5FeySbVcpsPQ== /yauzl/2.10.0: dependencies: buffer-crc32: 0.2.13 @@ -25643,12 +24434,6 @@ packages: node: '>=6' resolution: integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== - /yocto-queue/0.1.0: - dev: true - engines: - node: '>=10' - resolution: - integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== /zip-stream/1.2.0: dependencies: archiver-utils: 1.3.0