From 2ac93392b4c59b6ab0b7c45e1ec578019453b307 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Fri, 18 Sep 2020 10:10:02 +0200 Subject: [PATCH 01/10] add data token address validity check --- src/datatokens/Datatokens.ts | 4 ++-- src/ocean/Assets.ts | 13 +++++++++++-- test/integration/Marketplaceflow.test.ts | 16 ++++++++++++++++ 3 files changed, 29 insertions(+), 4 deletions(-) diff --git a/src/datatokens/Datatokens.ts b/src/datatokens/Datatokens.ts index 7843726e..a68d8968 100644 --- a/src/datatokens/Datatokens.ts +++ b/src/datatokens/Datatokens.ts @@ -6,10 +6,10 @@ import defaultDatatokensABI from '@oceanprotocol/contracts/artifacts/DataTokenTe import wordListDefault from '../data/words.json' import { TransactionReceipt } from 'web3-core' -import { time } from 'console' import BigNumber from 'bignumber.js' + /** - * Provides a interface to DataTokens + * Provides an interface to DataTokens */ export class DataTokens { public factoryAddress: string diff --git a/src/ocean/Assets.ts b/src/ocean/Assets.ts index 27332382..faafedaa 100644 --- a/src/ocean/Assets.ts +++ b/src/ocean/Assets.ts @@ -14,8 +14,8 @@ import DID from './DID' import { SubscribablePromise, didZeroX } from '../utils' import { Instantiable, InstantiableConfig } from '../Instantiable.abstract' import { WebServiceConnector } from './utils/WebServiceConnector' -import { DataTokens } from '../lib' import BigNumber from 'bignumber.js' +import { isAddress } from 'web3-utils' export enum CreateProgressStep { CreatingDataToken, @@ -78,6 +78,7 @@ export class Assets extends Instantiable { const metadataStoreURI = this.ocean.metadatastore.getURI() const jsonBlob = { t: 1, url: metadataStoreURI } const { datatokens } = this.ocean + dtAddress = await datatokens.create( JSON.stringify(jsonBlob), publisher.getId(), @@ -85,7 +86,15 @@ export class Assets extends Instantiable { name, symbol ) - this.logger.log('DataToken creted') + + if (!isAddress(dtAddress)) { + this.logger.error( + `Created Data Token address ${dtAddress} is not valid. Aborting publishing.` + ) + return null + } + + this.logger.log(`DataToken ${dtAddress} created`) observer.next(CreateProgressStep.DataTokenCreated) } diff --git a/test/integration/Marketplaceflow.test.ts b/test/integration/Marketplaceflow.test.ts index 7942772e..a38df798 100644 --- a/test/integration/Marketplaceflow.test.ts +++ b/test/integration/Marketplaceflow.test.ts @@ -197,10 +197,12 @@ describe('Marketplace flow', () => { const balanceAfter = await datatoken.balance(tokenAddress, bob.getId()) assert(balanceBefore === balanceAfter) }) + it('owner can list there assets', async () => { const assets = await ocean.assets.ownerAssets(alice.getId()) assert(assets.length > 0) }) + it('Alice updates metadata', async () => { const newMetaData: EditableMetadata = { description: 'new description', @@ -217,4 +219,18 @@ describe('Marketplace flow', () => { ) assert(metaData.attributes.additionalInformation.links === newMetaData.links) }) + + it('Alice publishes a dataset but created data token is invalid', async () => { + price = datatoken.toWei('10') // in datatoken + const publishedDate = new Date(Date.now()).toISOString().split('.')[0] + 'Z' + const timeout = 0 + service1 = await ocean.assets.createAccessServiceAttributes( + alice, + price, + publishedDate, + timeout + ) + ddo = await ocean.assets.create(asset, '0xxxxx', [service1]) + assert(ddo === null) + }) }) From 127b0c2fcce92514f4f01feec75488eee69dbc20 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Fri, 18 Sep 2020 10:29:28 +0200 Subject: [PATCH 02/10] test tweaks --- test/integration/ComputeFlow.test.ts | 20 ++++++++++---------- test/integration/Marketplaceflow.test.ts | 24 ++++++++++++++---------- 2 files changed, 24 insertions(+), 20 deletions(-) diff --git a/test/integration/ComputeFlow.test.ts b/test/integration/ComputeFlow.test.ts index eeb6632f..65ca7487 100644 --- a/test/integration/ComputeFlow.test.ts +++ b/test/integration/ComputeFlow.test.ts @@ -4,7 +4,7 @@ import { DataTokens } from '../../src/datatokens/Datatokens' import { Ocean } from '../../src/ocean/Ocean' import { ConfigHelper } from '../../src/utils/ConfigHelper' -import { assert } from 'console' +import { assert } from 'chai' import { ServiceComputePrivacy } from '../../src/ddo/interfaces/Service' import Web3 from 'web3' import factory from '@oceanprotocol/contracts/artifacts/DTFactory.json' @@ -393,17 +393,17 @@ describe('Compute flow', () => { assert(newDdo !== null) await sleep(6000) const metaData = await ocean.assets.getServiceByType(ddo.id, 'compute') - assert( - metaData.attributes.main.privacy.allowRawAlgorithm === - newComputePrivacy.allowRawAlgorithm + assert.equal( + metaData.attributes.main.privacy.allowRawAlgorithm, + newComputePrivacy.allowRawAlgorithm ) - assert( - metaData.attributes.main.privacy.allowNetworkAccess === - newComputePrivacy.allowNetworkAccess + assert.equal( + metaData.attributes.main.privacy.allowNetworkAccess, + newComputePrivacy.allowNetworkAccess ) - assert( - metaData.attributes.main.privacy.trustedAlgorithms === - newComputePrivacy.trustedAlgorithms + assert.equal( + metaData.attributes.main.privacy.trustedAlgorithms, + newComputePrivacy.trustedAlgorithms ) }) diff --git a/test/integration/Marketplaceflow.test.ts b/test/integration/Marketplaceflow.test.ts index a38df798..06a809f4 100644 --- a/test/integration/Marketplaceflow.test.ts +++ b/test/integration/Marketplaceflow.test.ts @@ -1,12 +1,11 @@ import { AbiItem } from 'web3-utils/types' +import { assert, spy, use } from 'chai' +import spies from 'chai-spies' import { TestContractHandler } from '../TestContractHandler' import { DataTokens } from '../../src/datatokens/Datatokens' import { Ocean } from '../../src/ocean/Ocean' import { ConfigHelper } from '../../src/utils/ConfigHelper' -// import config from './config' -import { assert } from 'console' - import Web3 from 'web3' import factory from '@oceanprotocol/contracts/artifacts/DTFactory.json' import datatokensTemplate from '@oceanprotocol/contracts/artifacts/DataTokenTemplate.json' @@ -19,6 +18,8 @@ function sleep(ms) { }) } +use(spies) + describe('Marketplace flow', () => { let owner let bob @@ -156,7 +157,7 @@ describe('Marketplace flow', () => { it('Marketplace posts asset for sale', async () => { accessService = await ocean.assets.getServiceByType(ddo.id, 'access') price = 20 - assert(accessService.attributes.main.cost * price === datatoken.toWei('200')) + assert.equal(accessService.attributes.main.cost * price, datatoken.toWei('200')) }) it('Bob gets datatokens', async () => { @@ -213,11 +214,12 @@ describe('Marketplace flow', () => { assert(newDdo !== null) await sleep(6000) const metaData = await ocean.assets.getServiceByType(ddo.id, 'metadata') - assert(metaData.attributes.main.name === newMetaData.title) - assert( - metaData.attributes.additionalInformation.description === newMetaData.description + assert.equal(metaData.attributes.main.name, newMetaData.title) + assert.equal( + metaData.attributes.additionalInformation.description, + newMetaData.description ) - assert(metaData.attributes.additionalInformation.links === newMetaData.links) + assert.equal(metaData.attributes.additionalInformation.links, newMetaData.links) }) it('Alice publishes a dataset but created data token is invalid', async () => { @@ -230,7 +232,9 @@ describe('Marketplace flow', () => { publishedDate, timeout ) - ddo = await ocean.assets.create(asset, '0xxxxx', [service1]) - assert(ddo === null) + + spy.on(datatoken, 'create', () => null) + ddo = await ocean.assets.create(asset, alice, [service1]) + assert.equal(ddo, null) }) }) From 7d34e1c99ce54cbc5950bf599b67a8359f5b521d Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Fri, 18 Sep 2020 10:59:59 +0200 Subject: [PATCH 03/10] also check for validity of passed data token --- src/ocean/Assets.ts | 7 +++++++ test/integration/Marketplaceflow.test.ts | 15 +++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/src/ocean/Assets.ts b/src/ocean/Assets.ts index faafedaa..b882e3f7 100644 --- a/src/ocean/Assets.ts +++ b/src/ocean/Assets.ts @@ -67,6 +67,13 @@ export class Assets extends Instantiable { name?: string, symbol?: string ): SubscribablePromise { + if (!isAddress(dtAddress)) { + this.logger.error( + `Passed Data Token address ${dtAddress} is not valid. Aborting publishing.` + ) + return null + } + this.logger.log('Creating asset') return new SubscribablePromise(async (observer) => { if (services.length === 0) { diff --git a/test/integration/Marketplaceflow.test.ts b/test/integration/Marketplaceflow.test.ts index 06a809f4..42b6664c 100644 --- a/test/integration/Marketplaceflow.test.ts +++ b/test/integration/Marketplaceflow.test.ts @@ -222,6 +222,21 @@ describe('Marketplace flow', () => { assert.equal(metaData.attributes.additionalInformation.links, newMetaData.links) }) + it('Alice publishes a dataset but passed data token is invalid', async () => { + price = datatoken.toWei('10') // in datatoken + const publishedDate = new Date(Date.now()).toISOString().split('.')[0] + 'Z' + const timeout = 0 + service1 = await ocean.assets.createAccessServiceAttributes( + alice, + price, + publishedDate, + timeout + ) + + ddo = await ocean.assets.create(asset, alice, [service1], 'gibberishDataToken') + assert.equal(ddo, null) + }) + it('Alice publishes a dataset but created data token is invalid', async () => { price = datatoken.toWei('10') // in datatoken const publishedDate = new Date(Date.now()).toISOString().split('.')[0] + 'Z' From d7dfa326d3e6cf13e4b60fbf7075b121a68bd545 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Fri, 18 Sep 2020 11:21:43 +0200 Subject: [PATCH 04/10] test fixes --- test/integration/ComputeFlow.test.ts | 2 +- test/integration/Marketplaceflow.test.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/integration/ComputeFlow.test.ts b/test/integration/ComputeFlow.test.ts index 65ca7487..10b9a902 100644 --- a/test/integration/ComputeFlow.test.ts +++ b/test/integration/ComputeFlow.test.ts @@ -401,7 +401,7 @@ describe('Compute flow', () => { metaData.attributes.main.privacy.allowNetworkAccess, newComputePrivacy.allowNetworkAccess ) - assert.equal( + assert.deepEqual( metaData.attributes.main.privacy.trustedAlgorithms, newComputePrivacy.trustedAlgorithms ) diff --git a/test/integration/Marketplaceflow.test.ts b/test/integration/Marketplaceflow.test.ts index 42b6664c..e4a39dc8 100644 --- a/test/integration/Marketplaceflow.test.ts +++ b/test/integration/Marketplaceflow.test.ts @@ -219,7 +219,7 @@ describe('Marketplace flow', () => { metaData.attributes.additionalInformation.description, newMetaData.description ) - assert.equal(metaData.attributes.additionalInformation.links, newMetaData.links) + assert.deepEqual(metaData.attributes.additionalInformation.links, newMetaData.links) }) it('Alice publishes a dataset but passed data token is invalid', async () => { From d5ff713882e8aca01aa6c59160fe7936296b5788 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Sep 2020 01:03:26 +0000 Subject: [PATCH 05/10] Bump auto-changelog from 2.2.0 to 2.2.1 Bumps [auto-changelog](https://github.com/CookPete/auto-changelog) from 2.2.0 to 2.2.1. - [Release notes](https://github.com/CookPete/auto-changelog/releases) - [Changelog](https://github.com/CookPete/auto-changelog/blob/master/CHANGELOG.md) - [Commits](https://github.com/CookPete/auto-changelog/compare/v2.2.0...v2.2.1) Signed-off-by: dependabot[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0bef010b..9f416ad8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2017,9 +2017,9 @@ "integrity": "sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY=" }, "auto-changelog": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/auto-changelog/-/auto-changelog-2.2.0.tgz", - "integrity": "sha512-RBY0hhVNXstggOQL0SyUaCfSiVD11CVXEHvDwB+mEt9UnhXPqhdpQ7nIVGDEog7JopTdYbydULLLt6v//qrWjw==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/auto-changelog/-/auto-changelog-2.2.1.tgz", + "integrity": "sha512-XlykJfZrXlWUAADBqGoN1elmntrRcx7oEymyYB3NRPEZxv0TfYHfivmwzejUMnwAdXKCgbQPo7GV5ULs3jwpfw==", "dev": true, "requires": { "commander": "^5.0.0", From ac14192e7e42db5a97261cf626c7dcb9d62430ad Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Sep 2020 01:04:00 +0000 Subject: [PATCH 06/10] Bump typescript from 4.0.2 to 4.0.3 Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.0.2 to 4.0.3. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v4.0.2...v4.0.3) Signed-off-by: dependabot[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0bef010b..05a41d81 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9598,9 +9598,9 @@ } }, "typescript": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.0.2.tgz", - "integrity": "sha512-e4ERvRV2wb+rRZ/IQeb3jm2VxBsirQLpQhdxplZ2MEzGvDkkMmPglecnNDfSUBivMjP93vRbngYYDQqQ/78bcQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.0.3.tgz", + "integrity": "sha512-tEu6DGxGgRJPb/mVPIZ48e69xCn2yRmCgYmDugAVwmJ6o+0u1RI18eO7E7WBTLYLaEVVOhwQmcdhQHweux/WPg==", "dev": true }, "uglify-js": { From dc73ec37e5700dcb7559ee8e9843823deb745fcc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Sep 2020 01:54:28 +0000 Subject: [PATCH 07/10] Bump @typescript-eslint/eslint-plugin from 4.1.1 to 4.2.0 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.1.1 to 4.2.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.2.0/packages/eslint-plugin) Signed-off-by: dependabot[bot] --- package-lock.json | 135 ++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 119 insertions(+), 16 deletions(-) diff --git a/package-lock.json b/package-lock.json index fa35e183..a4056b7f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1535,13 +1535,13 @@ } }, "@typescript-eslint/eslint-plugin": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.1.1.tgz", - "integrity": "sha512-Hoxyt99EA9LMmqo/5PuWWPeWeB3mKyvibfJ1Hy5SfiUpjE8Nqp+5QNd9fOkzL66+fqvIWSIE+Ett16LGMzCGnQ==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.2.0.tgz", + "integrity": "sha512-zBNRkzvLSwo6y5TG0DVcmshZIYBHKtmzD4N+LYnfTFpzc4bc79o8jNRSb728WV7A4Cegbs+MV5IRAj8BKBgOVQ==", "dev": true, "requires": { - "@typescript-eslint/experimental-utils": "4.1.1", - "@typescript-eslint/scope-manager": "4.1.1", + "@typescript-eslint/experimental-utils": "4.2.0", + "@typescript-eslint/scope-manager": "4.2.0", "debug": "^4.1.1", "functional-red-black-tree": "^1.0.1", "regexpp": "^3.0.0", @@ -1549,15 +1549,47 @@ "tsutils": "^3.17.1" }, "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "@typescript-eslint/scope-manager": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.2.0.tgz", + "integrity": "sha512-Tb402cxxObSxWIVT+PnBp5ruT2V/36yj6gG4C9AjkgRlZpxrLAzWDk3neen6ToMBGeGdxtnfFLoJRUecGz9mYQ==", "dev": true, "requires": { - "ms": "^2.1.1" + "@typescript-eslint/types": "4.2.0", + "@typescript-eslint/visitor-keys": "4.2.0" } }, + "@typescript-eslint/types": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.2.0.tgz", + "integrity": "sha512-xkv5nIsxfI/Di9eVwN+G9reWl7Me9R5jpzmZUch58uQ7g0/hHVuGUbbn4NcxcM5y/R4wuJIIEPKPDb5l4Fdmwg==", + "dev": true + }, + "@typescript-eslint/visitor-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.2.0.tgz", + "integrity": "sha512-WIf4BNOlFOH2W+YqGWa6YKLcK/EB3gEj2apCrqLw6mme1RzBy0jtJ9ewJgnrZDB640zfnv8L+/gwGH5sYp/rGw==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.2.0", + "eslint-visitor-keys": "^2.0.0" + } + }, + "debug": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "eslint-visitor-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", + "dev": true + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -1573,17 +1605,88 @@ } }, "@typescript-eslint/experimental-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.1.1.tgz", - "integrity": "sha512-jzYsNciHoa4Z3c1URtmeT/bamYm8Dwfw6vuN3WHIE/BXb1iC4KveAnXDErTAZtPVxTYBaYn3n2gbt6F6D2rm1A==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.2.0.tgz", + "integrity": "sha512-5BBj6BjgHEndBaQQpUVzRIPERz03LBc0MCQkHwUaH044FJFL08SwWv/sQftk7gf0ShZ2xZysz0LTwCwNt4Xu3w==", "dev": true, "requires": { "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.1.1", - "@typescript-eslint/types": "4.1.1", - "@typescript-eslint/typescript-estree": "4.1.1", + "@typescript-eslint/scope-manager": "4.2.0", + "@typescript-eslint/types": "4.2.0", + "@typescript-eslint/typescript-estree": "4.2.0", "eslint-scope": "^5.0.0", "eslint-utils": "^2.0.0" + }, + "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.2.0.tgz", + "integrity": "sha512-Tb402cxxObSxWIVT+PnBp5ruT2V/36yj6gG4C9AjkgRlZpxrLAzWDk3neen6ToMBGeGdxtnfFLoJRUecGz9mYQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.2.0", + "@typescript-eslint/visitor-keys": "4.2.0" + } + }, + "@typescript-eslint/types": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.2.0.tgz", + "integrity": "sha512-xkv5nIsxfI/Di9eVwN+G9reWl7Me9R5jpzmZUch58uQ7g0/hHVuGUbbn4NcxcM5y/R4wuJIIEPKPDb5l4Fdmwg==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.2.0.tgz", + "integrity": "sha512-iWDLCB7z4MGkLipduF6EOotdHNtgxuNKnYD54nMS/oitFnsk4S3S/TE/UYXQTra550lHtlv9eGmp+dvN9pUDtA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.2.0", + "@typescript-eslint/visitor-keys": "4.2.0", + "debug": "^4.1.1", + "globby": "^11.0.1", + "is-glob": "^4.0.1", + "lodash": "^4.17.15", + "semver": "^7.3.2", + "tsutils": "^3.17.1" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.2.0.tgz", + "integrity": "sha512-WIf4BNOlFOH2W+YqGWa6YKLcK/EB3gEj2apCrqLw6mme1RzBy0jtJ9ewJgnrZDB640zfnv8L+/gwGH5sYp/rGw==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.2.0", + "eslint-visitor-keys": "^2.0.0" + } + }, + "debug": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "eslint-visitor-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", + "dev": true + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true + } } }, "@typescript-eslint/parser": { From 4d565456bcb220b57faf5cd5032997b3828c4fe0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Sep 2020 01:54:42 +0000 Subject: [PATCH 08/10] Bump typedoc from 0.19.1 to 0.19.2 Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.19.1 to 0.19.2. - [Release notes](https://github.com/TypeStrong/TypeDoc/releases) - [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.19.1...v0.19.2) Signed-off-by: dependabot[bot] --- package-lock.json | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/package-lock.json b/package-lock.json index fa35e183..bcb2f66a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5372,9 +5372,9 @@ "dev": true }, "highlight.js": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.1.2.tgz", - "integrity": "sha512-Q39v/Mn5mfBlMff9r+zzA+gWxRsCRKwEMvYTiisLr/XUiFI/4puWt0Ojdko3R3JCNWGdOWaA5g/Yxqa23kC5AA==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.2.0.tgz", + "integrity": "sha512-OryzPiqqNCfO/wtFo619W+nPYALM6u7iCQkum4bqRmmlcTikOkmlL06i009QelynBPAlNByTQU6cBB2cOBQtCw==", "dev": true }, "hmac-drbg": { @@ -9528,14 +9528,14 @@ } }, "typedoc": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.19.1.tgz", - "integrity": "sha512-EqZpRJQUnkwHA1yBhaDExEXUZIiWKddkrDXhRcfUzpnu6pizxNmVTw5IZ3mu682Noa4zQCniE0YNjaAwHQodrA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.19.2.tgz", + "integrity": "sha512-oDEg1BLEzi1qvgdQXc658EYgJ5qJLVSeZ0hQ57Eq4JXy6Vj2VX4RVo18qYxRWz75ifAaYuYNBUCnbhjd37TfOg==", "dev": true, "requires": { "fs-extra": "^9.0.1", "handlebars": "^4.7.6", - "highlight.js": "^10.0.0", + "highlight.js": "^10.2.0", "lodash": "^4.17.20", "lunr": "^2.3.9", "marked": "^1.1.1", @@ -9543,7 +9543,7 @@ "progress": "^2.0.3", "semver": "^7.3.2", "shelljs": "^0.8.4", - "typedoc-default-themes": "^0.11.1" + "typedoc-default-themes": "^0.11.4" }, "dependencies": { "fs-extra": { @@ -9589,13 +9589,10 @@ } }, "typedoc-default-themes": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/typedoc-default-themes/-/typedoc-default-themes-0.11.1.tgz", - "integrity": "sha512-1yl8pbhjrLywqGJx9TfT+wzP+ntudPYjgJdpCj+s5ed2etBkqZPOCBMKwpaN9o6pdoFQF195PggqWTLVEkaRQQ==", - "dev": true, - "requires": { - "lunr": "^2.3.9" - } + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/typedoc-default-themes/-/typedoc-default-themes-0.11.4.tgz", + "integrity": "sha512-Y4Lf+qIb9NTydrexlazAM46SSLrmrQRqWiD52593g53SsmUFioAsMWt8m834J6qsp+7wHRjxCXSZeiiW5cMUdw==", + "dev": true }, "typescript": { "version": "4.0.3", From df03cf8869c4d908b280f9ae2991bb52326982d8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Sep 2020 01:54:59 +0000 Subject: [PATCH 09/10] Bump @types/node from 14.11.1 to 14.11.2 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.11.1 to 14.11.2. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Signed-off-by: dependabot[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index fa35e183..61716770 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1465,9 +1465,9 @@ "dev": true }, "@types/node": { - "version": "14.11.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.1.tgz", - "integrity": "sha512-oTQgnd0hblfLsJ6BvJzzSL+Inogp3lq9fGgqRkMB/ziKMgEUaFl801OncOzUmalfzt14N0oPHMK47ipl+wbTIw==" + "version": "14.11.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.2.tgz", + "integrity": "sha512-jiE3QIxJ8JLNcb1Ps6rDbysDhN4xa8DJJvuC9prr6w+1tIh+QAbYyNF3tyiZNLDBIuBCf4KEcV2UvQm/V60xfA==" }, "@types/node-fetch": { "version": "2.5.7", From fcdeb60aa555915a3974c66c9f04f11977301e7b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Sep 2020 08:05:11 +0000 Subject: [PATCH 10/10] Bump @typescript-eslint/parser from 4.1.1 to 4.2.0 Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.1.1 to 4.2.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.2.0/packages/parser) Signed-off-by: dependabot[bot] --- package-lock.json | 62 +++++++++++++++++++++++------------------------ 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6f1b3fee..d6d6346e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1690,24 +1690,24 @@ } }, "@typescript-eslint/parser": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.1.1.tgz", - "integrity": "sha512-NLIhmicpKGfJbdXyQBz9j48PA6hq6e+SDOoXy7Ak6bq1ebGqbgG+fR1UIDAuay6OjQdot69c/URu2uLlsP8GQQ==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.2.0.tgz", + "integrity": "sha512-54jJ6MwkOtowpE48C0QJF9iTz2/NZxfKVJzv1ha5imigzHbNSLN9yvbxFFH1KdlRPQrlR8qxqyOvLHHxd397VA==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "4.1.1", - "@typescript-eslint/types": "4.1.1", - "@typescript-eslint/typescript-estree": "4.1.1", + "@typescript-eslint/scope-manager": "4.2.0", + "@typescript-eslint/types": "4.2.0", + "@typescript-eslint/typescript-estree": "4.2.0", "debug": "^4.1.1" }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { @@ -1719,29 +1719,29 @@ } }, "@typescript-eslint/scope-manager": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.1.1.tgz", - "integrity": "sha512-0W8TTobCvIIQ2FsrYTffyZGAAFUyIbEHq5EYJb1m7Rpd005jrnOvKOo8ywCLhs/Bm17C+KsrUboBvBAARQVvyA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.2.0.tgz", + "integrity": "sha512-Tb402cxxObSxWIVT+PnBp5ruT2V/36yj6gG4C9AjkgRlZpxrLAzWDk3neen6ToMBGeGdxtnfFLoJRUecGz9mYQ==", "dev": true, "requires": { - "@typescript-eslint/types": "4.1.1", - "@typescript-eslint/visitor-keys": "4.1.1" + "@typescript-eslint/types": "4.2.0", + "@typescript-eslint/visitor-keys": "4.2.0" } }, "@typescript-eslint/types": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.1.1.tgz", - "integrity": "sha512-zrBiqOKYerMTllKcn+BP+i1b7LW/EbMMYytroXMxUTvFPn1smkCu0D7lSAx29fTUO4jnwV0ljSvYQtn2vNrNxA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.2.0.tgz", + "integrity": "sha512-xkv5nIsxfI/Di9eVwN+G9reWl7Me9R5jpzmZUch58uQ7g0/hHVuGUbbn4NcxcM5y/R4wuJIIEPKPDb5l4Fdmwg==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.1.1.tgz", - "integrity": "sha512-2AUg5v0liVBsqbGxBphbJ0QbGqSRVaF5qPoTPWcxop+66vMdU1h4CCvHxTC47+Qb+Pr4l2RhXDd41JNpwcQEKw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.2.0.tgz", + "integrity": "sha512-iWDLCB7z4MGkLipduF6EOotdHNtgxuNKnYD54nMS/oitFnsk4S3S/TE/UYXQTra550lHtlv9eGmp+dvN9pUDtA==", "dev": true, "requires": { - "@typescript-eslint/types": "4.1.1", - "@typescript-eslint/visitor-keys": "4.1.1", + "@typescript-eslint/types": "4.2.0", + "@typescript-eslint/visitor-keys": "4.2.0", "debug": "^4.1.1", "globby": "^11.0.1", "is-glob": "^4.0.1", @@ -1751,12 +1751,12 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { @@ -1774,12 +1774,12 @@ } }, "@typescript-eslint/visitor-keys": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.1.1.tgz", - "integrity": "sha512-/EOOXbA2ferGLG6RmCHEQ0lTTLkOlXYDgblCmQk3tIU7mTPLm4gKhFMeeUSe+bcchTUsKeCk8xcpbop5Zr/8Rw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.2.0.tgz", + "integrity": "sha512-WIf4BNOlFOH2W+YqGWa6YKLcK/EB3gEj2apCrqLw6mme1RzBy0jtJ9ewJgnrZDB640zfnv8L+/gwGH5sYp/rGw==", "dev": true, "requires": { - "@typescript-eslint/types": "4.1.1", + "@typescript-eslint/types": "4.2.0", "eslint-visitor-keys": "^2.0.0" }, "dependencies": {