From 9f0b5dd6ff95621fe4d90913f3139995363bd955 Mon Sep 17 00:00:00 2001 From: Kris Liew <39853992+krisliew@users.noreply.github.com> Date: Wed, 2 Jun 2021 20:58:07 +0800 Subject: [PATCH 01/10] add "valid" boolean in File.ts (#825) * add "valid" boolean in File.ts --- src/ddo/interfaces/File.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/ddo/interfaces/File.ts b/src/ddo/interfaces/File.ts index e8193b51..bf46175f 100644 --- a/src/ddo/interfaces/File.ts +++ b/src/ddo/interfaces/File.ts @@ -61,4 +61,10 @@ export interface File { * @example "zip" */ compression?: string + + /** + * File availability (check fileinfo connectivity) + * @type {boolean} + */ + valid?: boolean } From 0f46959dfabd859324363c8c5ece5ffd1df3cd0e Mon Sep 17 00:00:00 2001 From: kianyee <71874741+kianyee@users.noreply.github.com> Date: Wed, 2 Jun 2021 21:51:13 +0800 Subject: [PATCH 02/10] Feature/credentials support in asset (#787) * [KianYee] Add credentials in DDO Co-authored-by: alexcos20 --- src/ddo/DDO.ts | 3 + src/ddo/interfaces/Credentials.ts | 16 +++ src/ddo/interfaces/index.ts | 1 + src/ocean/Assets.ts | 63 +++++++++ src/ocean/AssetsCredential.ts | 169 +++++++++++++++++++++++ test/integration/Marketplaceflow.test.ts | 9 +- test/unit/ocean/Assets.test.ts | 150 +++++++++++++++++++- 7 files changed, 406 insertions(+), 5 deletions(-) create mode 100644 src/ddo/interfaces/Credentials.ts create mode 100644 src/ocean/AssetsCredential.ts diff --git a/src/ddo/DDO.ts b/src/ddo/DDO.ts index 815ee9f0..ea30d60e 100644 --- a/src/ddo/DDO.ts +++ b/src/ddo/DDO.ts @@ -7,6 +7,7 @@ import Web3Provider from '../datatokens/Web3Provider' import { BestPrice } from './interfaces/BestPrice' import { DataTokenInfo } from './interfaces/DataTokenInfo' import { PurgatoryData } from './interfaces/PurgatoryData' +import { Credentials } from './interfaces/Credentials' /** * DID Descriptor Object. * Contains all the data related to an asset. @@ -62,6 +63,8 @@ export class DDO { public dataTokenInfo?: DataTokenInfo + public credentials?: Credentials + public constructor(ddo: Partial = {}) { Object.assign(this, ddo, { created: (ddo && ddo.created) || new Date().toISOString().replace(/\.[0-9]{3}/, '') diff --git a/src/ddo/interfaces/Credentials.ts b/src/ddo/interfaces/Credentials.ts new file mode 100644 index 00000000..d8422350 --- /dev/null +++ b/src/ddo/interfaces/Credentials.ts @@ -0,0 +1,16 @@ +export enum CredentialType { + address = 'address', + credential3Box = 'credential3Box' +} + +export type CredentialAction = 'allow' | 'deny' + +export interface Credential { + type: CredentialType + value: string[] +} + +export interface Credentials { + allow?: Credential[] + deny?: Credential[] +} diff --git a/src/ddo/interfaces/index.ts b/src/ddo/interfaces/index.ts index 385f3da5..0c5d8c24 100644 --- a/src/ddo/interfaces/index.ts +++ b/src/ddo/interfaces/index.ts @@ -13,3 +13,4 @@ export * from './PublicKey' export * from './Service' export * from './ServicePrices' export * from './PurgatoryData' +export * from './Credentials' diff --git a/src/ocean/Assets.ts b/src/ocean/Assets.ts index a2fc55f8..bf50853b 100644 --- a/src/ocean/Assets.ts +++ b/src/ocean/Assets.ts @@ -13,6 +13,12 @@ import { Provider } from '../provider/Provider' import { isAddress } from 'web3-utils' import { MetadataMain } from '../ddo/interfaces' import { TransactionReceipt } from 'web3-core' +import { + CredentialType, + CredentialAction, + Credentials +} from '../ddo/interfaces/Credentials' +import { updateCredentialDetail, removeCredentialDetail } from './AssetsCredential' import { Consumable } from '../ddo/interfaces/Consumable' export enum CreateProgressStep { @@ -285,6 +291,63 @@ export class Assets extends Instantiable { return ddo } + /** + * Update Credentials attribute in DDO + * @param {ddo} DDO + * @param {credentialType} CredentialType e.g. address / credentail3Box + * @param {allowList} string[] List of allow credential + * @param {denyList} string[] List of deny credential + * @return {Promise} Updated DDO + */ + public async updateCredentials( + ddo: DDO, + credentialType: CredentialType, + allowList: string[], + denyList: string[] + ): Promise { + if (allowList && allowList.length > 0) { + ddo = updateCredentialDetail(ddo, credentialType, allowList, 'allow') + } else { + ddo = removeCredentialDetail(ddo, credentialType, 'allow') + } + + if (denyList && denyList.length > 0) { + ddo = updateCredentialDetail(ddo, credentialType, denyList, 'deny') + } else { + ddo = removeCredentialDetail(ddo, credentialType, 'deny') + } + return ddo + } + + /** + * check if a credential can consume a dataset + * @param {ddo} DDO + * @param {credentialType} CredentialType e.g. address / credentail3Box + * @param {value} string credential + * @return {boolean} allowed ? + */ + public checkCredential( + ddo: DDO, + credentialType: CredentialType, + value: string + ): boolean { + let allowed = true + if (!ddo.credentials) return allowed + if (ddo.credentials.allow && ddo.credentials.allow.length > 0) { + const allowList = ddo.credentials.allow.find( + (credentail) => credentail.type === credentialType + ) + if (allowList && !allowList.value.includes(value)) allowed = false + } + if (ddo.credentials.deny && ddo.credentials.deny.length > 0) { + const denyList = ddo.credentials.deny.find( + (credentail) => credentail.type === credentialType + ) + if (denyList && denyList.value.includes(value)) allowed = false + } + return allowed + } + /** * Publish DDO on chain. * @param {ddo} DDO diff --git a/src/ocean/AssetsCredential.ts b/src/ocean/AssetsCredential.ts new file mode 100644 index 00000000..fdf5a34d --- /dev/null +++ b/src/ocean/AssetsCredential.ts @@ -0,0 +1,169 @@ +import { DDO } from '../ddo/DDO' +import { + Credentials, + Credential, + CredentialType, + CredentialAction +} from '../ddo/interfaces/Credentials' + +/** + * checks if a credential list exists for a specific action + * @param {credentials} Credentials list of crentials from ddo + * @param {credentialType} CredentialType e.g. address / credential3Box + * @param {credentialAction} CredentialAction allow or deny + * @return {boolean} + */ +export function checkCredentialExist( + credentials: Credentials, + credentialType: CredentialType, + credentialAction: CredentialAction +): boolean { + let isExist = false + if (credentialAction === 'allow') { + if (credentials && credentials.allow) { + const allowList = credentials.allow.find( + (credential) => credential.type === credentialType + ) + isExist = allowList && allowList.value.length > 0 + } + return isExist + } else { + if (credentials && credentials.deny) { + const dennyList = credentials.deny.find( + (credential) => credential.type === credentialType + ) + isExist = dennyList && dennyList.value.length > 0 + } + return isExist + } +} + +/** + * Removes all credentials of a certain type for a specific action + * @param {ddo} DDO + * @param {credentialType} CredentialType e.g. address / credential3Box + * @param {credentialAction} CredentialAction allow or deny + * @return {DDO} + */ +export function removeCredentialDetail( + ddo: DDO, + credentialType: CredentialType, + credentialAction: CredentialAction +): DDO { + const exists = this.checkCredentialExist( + ddo.credentials, + credentialType, + credentialAction + ) + if (credentialAction === 'allow') { + if (exists) { + ddo.credentials.allow = ddo.credentials.allow.filter( + (credential) => credential.type !== credentialType + ) + } + if (!ddo.credentials.allow) { + ddo.credentials = { + deny: ddo.credentials.deny + } + } + } else { + if (exists) { + ddo.credentials.deny = ddo.credentials.deny.filter( + (credential) => credential.type !== credentialType + ) + } + if (!ddo.credentials.deny) { + ddo.credentials = { + allow: ddo.credentials.allow + } + } + } + return ddo +} + +/** + * Updates credentials of a certain type for a specific action + * @param {ddo} DDO + * @param {credentialType} CredentialType e.g. address / credential3Box + * @param {list} string[] list of values + * @param {credentialAction} CredentialAction allow or deny + * @return {DDO} + */ + +export function updateCredentialDetail( + ddo: DDO, + credentialType: CredentialType, + list: string[], + credentialAction: CredentialAction +): DDO { + const exists = this.checkCredentialExist( + ddo.credentials, + credentialType, + credentialAction + ) + if (credentialAction === 'allow') { + if (exists) { + ddo.credentials.allow.find((credential) => { + if (credential.type === credentialType) { + credential.value = list + } + }) + } else { + return this.addCredentialDetail(ddo, credentialType, list, credentialAction) + } + } else { + if (exists) { + ddo.credentials.deny.find((credential) => { + if (credential.type === credentialType) { + credential.value = list + } + }) + } else { + return this.addCredentialDetail(ddo, credentialType, list, credentialAction) + } + } + return ddo +} + +/** + * Adds values to credentials of a certain type for a specific action + * @param {ddo} DDO + * @param {credentialType} CredentialType e.g. address / credential3Box + * @param {list} string[] list of values + * @param {credentialAction} CredentialAction allow or deny + * @return {DDO} + */ + +export function addCredentialDetail( + ddo: DDO, + credentialType: CredentialType, + list: string[], + credentialAction: CredentialAction +) { + const newCredentialDetail: Credential = { + type: credentialType, + value: list + } + if (credentialAction === 'allow') { + if (ddo.credentials && ddo.credentials.allow) { + ddo.credentials.allow.push(newCredentialDetail) + } else { + const newCredentials: Credentials = { + allow: [newCredentialDetail], + deny: ddo.credentials && ddo.credentials.deny + } + ddo.credentials = newCredentials + } + } else { + if (ddo.credentials && ddo.credentials.deny) { + ddo.credentials.deny.push(newCredentialDetail) + } else { + const newCredential: Credentials = { + allow: ddo.credentials && ddo.credentials.allow, + deny: [newCredentialDetail] + } + ddo.credentials = newCredential + } + } + return ddo +} diff --git a/test/integration/Marketplaceflow.test.ts b/test/integration/Marketplaceflow.test.ts index be2302d5..080c9911 100644 --- a/test/integration/Marketplaceflow.test.ts +++ b/test/integration/Marketplaceflow.test.ts @@ -5,7 +5,14 @@ import spies from 'chai-spies' import Web3 from 'web3' import { AbiItem } from 'web3-utils/types' import { DataTokens } from '../../src/datatokens/Datatokens' -import { Account, EditableMetadata, Service, ServiceAccess, DID } from '../../src/lib' +import { + Account, + EditableMetadata, + Service, + ServiceAccess, + DID, + CredentialType +} from '../../src/lib' import { noDidPrefixed } from '../../src/utils/' import { Ocean } from '../../src/ocean/Ocean' import { ConfigHelper } from '../../src/utils/ConfigHelper' diff --git a/test/unit/ocean/Assets.test.ts b/test/unit/ocean/Assets.test.ts index 332c144a..99e70a61 100644 --- a/test/unit/ocean/Assets.test.ts +++ b/test/unit/ocean/Assets.test.ts @@ -3,19 +3,40 @@ import spies from 'chai-spies' import { SearchQuery, MetadataCache } from '../../../src/metadatacache/MetadataCache' import { Ocean } from '../../../src/ocean/Ocean' -import config from '../config' -import { DDO } from '../../../src/lib' +import Web3 from 'web3' +import { Account, DDO, CredentialType, ConfigHelper } from '../../../src/lib' import { responsify, getSearchResults } from '../helpers' - +const web3 = new Web3('http://127.0.0.1:8545') use(spies) describe('Assets', () => { let ocean: Ocean let metadataCache: MetadataCache - + let asset: any + let owner: Account + let alice: Account + let bob: Account + let charlie: Account + let ddo: DDO + let ddoWithAddressAnd3Box: DDO + const addressType = CredentialType.address + const threeBoxType = CredentialType.credential3Box + let walletA: string + let walletB: string + let walletC: string + const threeBoxValue = 'did:3:bafyre' beforeEach(async () => { + const config = new ConfigHelper().getConfig('development') + config.web3Provider = web3 ocean = await Ocean.getInstance(config) metadataCache = ocean.metadataCache // eslint-disable-line prefer-destructuring + owner = (await ocean.accounts.list())[0] + alice = (await ocean.accounts.list())[1] + walletA = alice.getId() + bob = (await ocean.accounts.list())[2] + walletB = bob.getId() + charlie = (await ocean.accounts.list())[3] + walletC = charlie.getId() }) afterEach(() => { @@ -57,4 +78,125 @@ describe('Assets', () => { assert.isDefined(assets.results[0].findServiceById) }) }) + it('Generates metadata', async () => { + asset = { + main: { + type: 'dataset', + name: 'test-dataset', + dateCreated: new Date(Date.now()).toISOString().split('.')[0] + 'Z', // remove milliseconds + author: 'oceanprotocol-team', + license: 'MIT', + files: [ + { + url: 'https://s3.amazonaws.com/testfiles.oceanprotocol.com/info.0.json', + checksum: 'efb2c764274b745f5fc37f97c6b0e761', + contentLength: '4535431', + contentType: 'text/csv', + encoding: 'UTF-8', + compression: 'zip' + } + ] + } + } + }) + + it('Alice creates a DDO', async () => { + const price = '10' // in datatoken + const publishedDate = new Date(Date.now()).toISOString().split('.')[0] + 'Z' + const timeout = 0 + const service1 = await ocean.assets.createAccessServiceAttributes( + alice, + price, + publishedDate, + timeout + ) + ddo = await ocean.assets.create(asset, alice, [service1], null) + }) + + it('should add allow credential', async () => { + assert(ocean.assets.checkCredential(ddo, addressType, walletA) === true) + assert(ocean.assets.checkCredential(ddo, addressType, walletC) === true) + const allowWalletAddressList = [walletA, walletB] + console.error(JSON.stringify(ddo.credentials)) + const newDdo = await ocean.assets.updateCredentials( + ddo, + addressType, + allowWalletAddressList, + [] + ) + assert(newDdo.credentials.allow.length === 1) + assert(ocean.assets.checkCredential(ddo, addressType, walletA) === true) + assert(ocean.assets.checkCredential(ddo, addressType, walletC) === false) + }) + + it('should append allow credential', async () => { + const allowWalletAddressList = [walletA, walletB] + const allow3BoxList = [threeBoxValue] + ddoWithAddressAnd3Box = await ocean.assets.updateCredentials( + ddo, + addressType, + allowWalletAddressList, + [] + ) + ddoWithAddressAnd3Box = await ocean.assets.updateCredentials( + ddo, + threeBoxType, + allow3BoxList, + [] + ) + assert(ddoWithAddressAnd3Box.credentials.allow.length === 2) + }) + + it('should add deny credential', async () => { + const denyWalletAddressList = [walletC] + const newDdo = await ocean.assets.updateCredentials( + ddo, + addressType, + [], + denyWalletAddressList + ) + assert(newDdo.credentials.deny.length === 1) + assert(ocean.assets.checkCredential(ddo, addressType, walletA) === true) + assert(ocean.assets.checkCredential(ddo, addressType, walletC) === false) + }) + + it('should append deny credential', async () => { + const denyWalletAddressList = [walletC] + const deny3BoxList = [threeBoxValue] + let newDdo = await ocean.assets.updateCredentials( + ddo, + addressType, + [], + denyWalletAddressList + ) + newDdo = await ocean.assets.updateCredentials(ddo, threeBoxType, [], deny3BoxList) + assert(newDdo.credentials.deny.length === 2) + }) + + it('should only remove allow credential by credential type', async () => { + const allowWalletAddressList = [walletA, walletB] + const allow3BoxList = [threeBoxValue] + let newDdo = await ocean.assets.updateCredentials( + ddo, + addressType, + allowWalletAddressList, + [] + ) + newDdo = await ocean.assets.updateCredentials( + ddoWithAddressAnd3Box, + threeBoxType, + allow3BoxList, + [] + ) + assert(newDdo.credentials.allow.length === 2) + newDdo = await ocean.assets.updateCredentials( + ddoWithAddressAnd3Box, + threeBoxType, + [], + [] + ) + assert(newDdo.credentials.allow.length === 1) + assert(ocean.assets.checkCredential(ddo, addressType, walletA) === true) + assert(ocean.assets.checkCredential(ddo, addressType, walletC) === false) + }) }) From 5555b2a73ad9b4f97ee0006aefd6400e285e294d Mon Sep 17 00:00:00 2001 From: Alex Coseru Date: Thu, 3 Jun 2021 14:14:01 +0300 Subject: [PATCH 03/10] Add order checks for credentials (#827) * Add order checks for credentials --- src/ocean/Assets.ts | 81 ++++++++------- src/ocean/AssetsCredential.ts | 24 ++--- test/integration/Marketplaceflow.test.ts | 124 +++++++++++++++++++++-- test/unit/ocean/Assets.test.ts | 16 +-- 4 files changed, 178 insertions(+), 67 deletions(-) diff --git a/src/ocean/Assets.ts b/src/ocean/Assets.ts index bf50853b..cde88af7 100644 --- a/src/ocean/Assets.ts +++ b/src/ocean/Assets.ts @@ -305,18 +305,18 @@ export class Assets extends Instantiable { allowList: string[], denyList: string[] ): Promise { + let newDDo if (allowList && allowList.length > 0) { - ddo = updateCredentialDetail(ddo, credentialType, allowList, 'allow') + newDDo = updateCredentialDetail(ddo, credentialType, allowList, 'allow') } else { - ddo = removeCredentialDetail(ddo, credentialType, 'allow') + newDDo = removeCredentialDetail(ddo, credentialType, 'allow') } - if (denyList && denyList.length > 0) { - ddo = updateCredentialDetail(ddo, credentialType, denyList, 'deny') + newDDo = updateCredentialDetail(ddo, credentialType, denyList, 'deny') } else { - ddo = removeCredentialDetail(ddo, credentialType, 'deny') + newDDo = removeCredentialDetail(ddo, credentialType, 'deny') } - return ddo + return newDDo } /** @@ -324,28 +324,36 @@ export class Assets extends Instantiable { * @param {ddo} DDO * @param {credentialType} CredentialType e.g. address / credentail3Box * @param {value} string credential - * @return {boolean} allowed ? + * @return {Consumable} allowed 0 = OK , 2 - Credential not in allow list, 3 - Credential in deny list */ public checkCredential( ddo: DDO, credentialType: CredentialType, value: string - ): boolean { - let allowed = true - if (!ddo.credentials) return allowed - if (ddo.credentials.allow && ddo.credentials.allow.length > 0) { - const allowList = ddo.credentials.allow.find( - (credentail) => credentail.type === credentialType - ) - if (allowList && !allowList.value.includes(value)) allowed = false + ): Consumable { + let status = 0 + let message = 'All good' + if (ddo.credentials) { + if (ddo.credentials.allow && ddo.credentials.allow.length > 0) { + const allowList = ddo.credentials.allow.find( + (credentail) => credentail.type === credentialType + ) + if (allowList && !allowList.value.includes(value)) { + status = 2 + message = 'Credential missing from allow list' + } + } + if (ddo.credentials.deny && ddo.credentials.deny.length > 0) { + const denyList = ddo.credentials.deny.find( + (credentail) => credentail.type === credentialType + ) + if (denyList && denyList.value.includes(value)) { + status = 3 + message = 'Credential found on deny list' + } + } } - if (ddo.credentials.deny && ddo.credentials.deny.length > 0) { - const denyList = ddo.credentials.deny.find( - (credentail) => credentail.type === credentialType - ) - if (denyList && denyList.value.includes(value)) allowed = false - } - return allowed + return { status, message } } /** @@ -547,8 +555,10 @@ export class Assets extends Instantiable { let service: Service const ddo = await this.resolve(did) - const consumable = await this.isConsumable(ddo) - if (consumable.status > 0) return null + const consumable = await this.isConsumable(ddo, consumerAddress) + if (consumable.status > 0) { + throw new Error(`Order asset failed, ` + consumable.message) + } if (!consumerAddress) consumerAddress = payerAddress if (serviceIndex === -1) { @@ -728,10 +738,13 @@ export class Assets extends Instantiable { /** * * @param {DDO} ddo + * @param {consumer} string * @return {Promise} */ - public async isConsumable(ddo: DDO): Promise { - if (!ddo) return null + public async isConsumable(ddo: DDO, consumer?: string): Promise { + let status = 0 + let message = 'All good' + if (!ddo) return { status, message } const metadata = ddo.findServiceByType('metadata') if (metadata.attributes.status?.isOrderDisabled) @@ -739,15 +752,13 @@ export class Assets extends Instantiable { status: 1, message: 'Ordering this asset has been temporarily disabled by the publisher.' } - - /* - // To do: call helper method check credential - // return: 4, Credential missing from allow list - // return: 5, Credential found on deny list - */ - return { - status: 0, - message: 'All good' + if (consumer) { + ;({ status, message } = this.checkCredential(ddo, CredentialType.address, consumer)) } + /* + // return: 2, Credential missing from allow list + // return: 3, Credential found on deny list + */ + return { status, message } } } diff --git a/src/ocean/AssetsCredential.ts b/src/ocean/AssetsCredential.ts index fdf5a34d..625212f0 100644 --- a/src/ocean/AssetsCredential.ts +++ b/src/ocean/AssetsCredential.ts @@ -50,20 +50,16 @@ export function removeCredentialDetail( credentialType: CredentialType, credentialAction: CredentialAction ): DDO { - const exists = this.checkCredentialExist( - ddo.credentials, - credentialType, - credentialAction - ) + const exists = checkCredentialExist(ddo.credentials, credentialType, credentialAction) if (credentialAction === 'allow') { if (exists) { ddo.credentials.allow = ddo.credentials.allow.filter( (credential) => credential.type !== credentialType ) } - if (!ddo.credentials.allow) { + if (ddo.credentials && !ddo.credentials.allow) { ddo.credentials = { - deny: ddo.credentials.deny + deny: ddo.credentials && ddo.credentials.deny } } } else { @@ -72,9 +68,9 @@ export function removeCredentialDetail( (credential) => credential.type !== credentialType ) } - if (!ddo.credentials.deny) { + if (ddo.credentials && !ddo.credentials.deny) { ddo.credentials = { - allow: ddo.credentials.allow + allow: ddo.credentials && ddo.credentials.allow } } } @@ -96,11 +92,7 @@ export function updateCredentialDetail( list: string[], credentialAction: CredentialAction ): DDO { - const exists = this.checkCredentialExist( - ddo.credentials, - credentialType, - credentialAction - ) + const exists = checkCredentialExist(ddo.credentials, credentialType, credentialAction) if (credentialAction === 'allow') { if (exists) { ddo.credentials.allow.find((credential) => { @@ -109,7 +101,7 @@ export function updateCredentialDetail( } }) } else { - return this.addCredentialDetail(ddo, credentialType, list, credentialAction) + ddo = addCredentialDetail(ddo, credentialType, list, credentialAction) } } else { if (exists) { @@ -119,7 +111,7 @@ export function updateCredentialDetail( } }) } else { - return this.addCredentialDetail(ddo, credentialType, list, credentialAction) + ddo = addCredentialDetail(ddo, credentialType, list, credentialAction) } } return ddo diff --git a/test/integration/Marketplaceflow.test.ts b/test/integration/Marketplaceflow.test.ts index 080c9911..fdaf59dc 100644 --- a/test/integration/Marketplaceflow.test.ts +++ b/test/integration/Marketplaceflow.test.ts @@ -46,12 +46,16 @@ use(spies) describe('Marketplace flow', () => { let owner: Account + let alice: Account let bob: Account + let charlie: Account let ddo let ddoWithPool let ddoWithBadUrl let ddoEncrypted - let alice: Account + let ddoWithCredentialsAllowList + let ddoWithCredentialsDenyList + let ddoWithCredentials let asset let assetWithPool let assetWithBadUrl @@ -70,6 +74,8 @@ describe('Marketplace flow', () => { let data let blob let poolLastPrice + let allowList: any + let denyList: any const marketplaceAllowance = '20' const tokenAmount = '10000' @@ -90,9 +96,12 @@ describe('Marketplace flow', () => { alice = (await ocean.accounts.list())[1] bob = (await ocean.accounts.list())[2] marketplace = (await ocean.accounts.list())[3] + charlie = (await ocean.accounts.list())[4] data = { t: 1, url: config.metadataCacheUri } blob = JSON.stringify(data) await contracts.deployContracts(owner.getId()) + allowList = [alice.getId(), bob.getId()] + denyList = [charlie.getId()] }) it('Alice publishes a datatoken contract', async () => { @@ -229,7 +238,7 @@ describe('Marketplace flow', () => { assert(ddo.dataToken === tokenAddress) const storeTx = await ocean.onChainMetadata.publish(ddo.id, ddo, alice.getId()) assert(storeTx) - await waitForAqua(ocean, ddo.id) + ddoWithBadUrl = await ocean.assets.create( assetWithBadUrl, alice, @@ -243,7 +252,7 @@ describe('Marketplace flow', () => { alice.getId() ) assert(storeTxWithBadUrl) - await waitForAqua(ocean, ddoWithBadUrl.id) + ddoWithPool = await ocean.assets.create( assetWithPool, alice, @@ -257,10 +266,8 @@ describe('Marketplace flow', () => { alice.getId() ) assert(storeTxWithPool) - await waitForAqua(ocean, ddoWithPool.id) - }) - it('Alice publishes an encrypted dataset', async () => { + // publish an encrypted dataset ddoEncrypted = await ocean.assets.create( assetWithEncrypt, alice, @@ -268,15 +275,62 @@ describe('Marketplace flow', () => { tokenAddressEncrypted ) assert(ddoEncrypted.dataToken === tokenAddressEncrypted) - const storeTx = await ocean.onChainMetadata.publish( + const storeTxEncrypted = await ocean.onChainMetadata.publish( ddoEncrypted.id, ddoEncrypted, alice.getId(), true ) - assert(storeTx) + assert(storeTxEncrypted) + + // create assets with credentials allow & deny list + ddoWithCredentialsAllowList = await ocean.assets.create( + asset, + alice, + [service1], + null + ) + const storeTxWithCredentialsAllowList = await ocean.onChainMetadata.publish( + ddoWithCredentialsAllowList.id, + ddoWithCredentialsAllowList, + alice.getId(), + false + ) + assert(storeTxWithCredentialsAllowList) + + ddoWithCredentialsDenyList = await ocean.assets.create(asset, alice, [service1], null) + const storeTxWithCredentialsDenyList = await ocean.onChainMetadata.publish( + ddoWithCredentialsDenyList.id, + ddoWithCredentialsDenyList, + alice.getId(), + false + ) + assert(storeTxWithCredentialsDenyList) + + ddoWithCredentials = await ocean.assets.create(asset, alice, [service1], null) + ddoWithCredentials = await ocean.assets.updateCredentials( + ddoWithCredentials, + CredentialType.address, + allowList, + denyList + ) + const storeTxWithCredentials = await ocean.onChainMetadata.publish( + ddoWithCredentials.id, + ddoWithCredentials, + alice.getId(), + false + ) + assert(storeTxWithCredentials) + // wait for all this assets to be published + await waitForAqua(ocean, ddo.id) + await waitForAqua(ocean, ddoWithBadUrl.id) + await waitForAqua(ocean, ddoWithPool.id) await waitForAqua(ocean, ddoEncrypted.id) + await waitForAqua(ocean, ddoWithCredentialsAllowList.id) + await waitForAqua(ocean, ddoWithCredentialsDenyList.id) + await waitForAqua(ocean, ddoWithCredentials.id) }) + it('Marketplace should resolve asset using DID', async () => { await ocean.assets.resolve(ddo.id).then((newDDO) => { assert(newDDO.id === ddo.id) @@ -388,6 +442,30 @@ describe('Marketplace flow', () => { assert(assets.results.length > 0) }) + it('Alice adds allow credentials for a dataset and deny credentials for another', async () => { + const resolvedDDO = await ocean.assets.resolve(ddoWithCredentialsAllowList.id) + const newDdo = await ocean.assets.updateCredentials( + resolvedDDO, + CredentialType.address, + allowList, + [] + ) + const txid = await ocean.onChainMetadata.update(newDdo.id, newDdo, alice.getId()) + assert(txid !== null) + }) + + it('Alice adds deny credentials for a dataset', async () => { + const resolvedDDO = await ocean.assets.resolve(ddoWithCredentialsDenyList.id) + const newDdo = await ocean.assets.updateCredentials( + resolvedDDO, + CredentialType.address, + [], + denyList + ) + const txid = await ocean.onChainMetadata.update(newDdo.id, newDdo, alice.getId()) + assert(txid !== null) + }) + it('Alice updates metadata and removes sample links', async () => { const newMetaData: EditableMetadata = { description: 'new description no links', @@ -593,4 +671,34 @@ describe('Marketplace flow', () => { ) assert(balance.toString() === balanceAfterOrder.toString()) }) + + it('Bob should be able to consume an asset with allow list, because he is on that list', async () => { + const ddoWithAllowList = await ocean.assets.resolve(ddoWithCredentialsAllowList.id) + let consumable = await ocean.assets.isConsumable(ddoWithAllowList, bob.getId()) + assert(consumable.status === 0) + consumable = await ocean.assets.isConsumable(ddoWithCredentials, bob.getId()) + assert(consumable.status === 0) + }) + + it('Bob should be able to consume an asset with deny list, because he is not on that list', async () => { + const ddoWithDenyList = await ocean.assets.resolve(ddoWithCredentialsDenyList.id) + let consumable = await ocean.assets.isConsumable(ddoWithDenyList, bob.getId()) + assert(consumable.status === 0) + consumable = await ocean.assets.isConsumable(ddoWithCredentials, bob.getId()) + assert(consumable.status === 0) + }) + it('Charlie should not be able to consume an asset with allow list, because he is not on that list', async () => { + const ddoWithAllowList = await ocean.assets.resolve(ddoWithCredentialsAllowList.id) + let consumable = await ocean.assets.isConsumable(ddoWithAllowList, charlie.getId()) + assert(consumable.status === 2) + consumable = await ocean.assets.isConsumable(ddoWithCredentials, charlie.getId()) + assert(consumable.status === 3) + }) + it('Charlie should not be able to consume an asset with deny list, because he is on that list', async () => { + const ddoWithDenyList = await ocean.assets.resolve(ddoWithCredentialsDenyList.id) + let consumable = await ocean.assets.isConsumable(ddoWithDenyList, charlie.getId()) + assert(consumable.status === 3) + consumable = await ocean.assets.isConsumable(ddoWithCredentials, charlie.getId()) + assert(consumable.status === 3) + }) }) diff --git a/test/unit/ocean/Assets.test.ts b/test/unit/ocean/Assets.test.ts index 99e70a61..8fc0a53d 100644 --- a/test/unit/ocean/Assets.test.ts +++ b/test/unit/ocean/Assets.test.ts @@ -114,8 +114,8 @@ describe('Assets', () => { }) it('should add allow credential', async () => { - assert(ocean.assets.checkCredential(ddo, addressType, walletA) === true) - assert(ocean.assets.checkCredential(ddo, addressType, walletC) === true) + assert(ocean.assets.checkCredential(ddo, addressType, walletA).status === 0) + assert(ocean.assets.checkCredential(ddo, addressType, walletC).status === 0) const allowWalletAddressList = [walletA, walletB] console.error(JSON.stringify(ddo.credentials)) const newDdo = await ocean.assets.updateCredentials( @@ -125,8 +125,8 @@ describe('Assets', () => { [] ) assert(newDdo.credentials.allow.length === 1) - assert(ocean.assets.checkCredential(ddo, addressType, walletA) === true) - assert(ocean.assets.checkCredential(ddo, addressType, walletC) === false) + assert(ocean.assets.checkCredential(ddo, addressType, walletA).status === 0) + assert(ocean.assets.checkCredential(ddo, addressType, walletC).status === 2) }) it('should append allow credential', async () => { @@ -156,8 +156,8 @@ describe('Assets', () => { denyWalletAddressList ) assert(newDdo.credentials.deny.length === 1) - assert(ocean.assets.checkCredential(ddo, addressType, walletA) === true) - assert(ocean.assets.checkCredential(ddo, addressType, walletC) === false) + assert(ocean.assets.checkCredential(ddo, addressType, walletA).status === 0) + assert(ocean.assets.checkCredential(ddo, addressType, walletC).status === 3) }) it('should append deny credential', async () => { @@ -196,7 +196,7 @@ describe('Assets', () => { [] ) assert(newDdo.credentials.allow.length === 1) - assert(ocean.assets.checkCredential(ddo, addressType, walletA) === true) - assert(ocean.assets.checkCredential(ddo, addressType, walletC) === false) + assert(ocean.assets.checkCredential(ddo, addressType, walletA).status === 0) + assert(ocean.assets.checkCredential(ddo, addressType, walletC).status === 2) }) }) From 89d73af02c2726a2eb4b422c64a64635db1d8362 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Jun 2021 14:18:07 +0300 Subject: [PATCH 04/10] Bump @types/node from 15.6.1 to 15.9.0 (#826) Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 15.6.1 to 15.9.0. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index ce8c044f..6d7245d8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3553,9 +3553,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "15.6.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.6.1.tgz", - "integrity": "sha512-7EIraBEyRHEe7CH+Fm1XvgqU6uwZN8Q7jppJGcqjROMT29qhAuuOxYB1uEY5UMYQKEmA5D+5tBnhdaPXSsLONA==" + "version": "15.9.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-15.9.0.tgz", + "integrity": "sha512-AR1Vq1Ei1GaA5FjKL5PBqblTZsL5M+monvGSZwe6sSIdGiuu7Xr/pNwWJY+0ZQuN8AapD/XMB5IzBAyYRFbocA==" }, "node_modules/@types/node-fetch": { "version": "2.5.10", @@ -22153,9 +22153,9 @@ "dev": true }, "@types/node": { - "version": "15.6.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.6.1.tgz", - "integrity": "sha512-7EIraBEyRHEe7CH+Fm1XvgqU6uwZN8Q7jppJGcqjROMT29qhAuuOxYB1uEY5UMYQKEmA5D+5tBnhdaPXSsLONA==" + "version": "15.9.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-15.9.0.tgz", + "integrity": "sha512-AR1Vq1Ei1GaA5FjKL5PBqblTZsL5M+monvGSZwe6sSIdGiuu7Xr/pNwWJY+0ZQuN8AapD/XMB5IzBAyYRFbocA==" }, "@types/node-fetch": { "version": "2.5.10", From 1d21d761bf9b12a63d85fb0e4025d3e900976c15 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Jun 2021 17:50:15 +0300 Subject: [PATCH 05/10] Bump @typescript-eslint/parser from 4.25.0 to 4.26.0 (#823) Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.25.0 to 4.26.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.26.0/packages/parser) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 231 ++++++++++++++++++++++++++++++++++++---------- 1 file changed, 180 insertions(+), 51 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6d7245d8..d875f047 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3713,15 +3713,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.25.0.tgz", - "integrity": "sha512-OZFa1SKyEJpAhDx8FcbWyX+vLwh7OEtzoo2iQaeWwxucyfbi0mT4DijbOSsTgPKzGHr6GrF2V5p/CEpUH/VBxg==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.26.0.tgz", + "integrity": "sha512-b4jekVJG9FfmjUfmM4VoOItQhPlnt6MPOBUL0AQbiTmm+SSpSdhHYlwayOm4IW9KLI/4/cRKtQCmDl1oE2OlPg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "4.25.0", - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/typescript-estree": "4.25.0", - "debug": "^4.1.1" + "@typescript-eslint/scope-manager": "4.26.0", + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/typescript-estree": "4.26.0", + "debug": "^4.3.1" }, "engines": { "node": "^10.12.0 || >=12.0.0" @@ -3739,6 +3739,80 @@ } } }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.26.0.tgz", + "integrity": "sha512-G6xB6mMo4xVxwMt5lEsNTz3x4qGDt0NSGmTBNBPJxNsrTXJSm21c6raeYroS2OwQsOyIXqKZv266L/Gln1BWqg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/visitor-keys": "4.26.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.26.0.tgz", + "integrity": "sha512-rADNgXl1kS/EKnDr3G+m7fB9yeJNnR9kF7xMiXL6mSIWpr3Wg5MhxyfEXy/IlYthsqwBqHOr22boFbf/u6O88A==", + "dev": true, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.26.0.tgz", + "integrity": "sha512-GHUgahPcm9GfBuy3TzdsizCcPjKOAauG9xkz9TR8kOdssz2Iz9jRCSQm6+aVFa23d5NcSpo1GdHGSQKe0tlcbg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/visitor-keys": "4.26.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.26.0.tgz", + "integrity": "sha512-cw4j8lH38V1ycGBbF+aFiLUls9Z0Bw8QschP3mkth50BbWzgFS33ISIgBzUMuQ2IdahoEv/rXstr8Zhlz4B1Zg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.26.0", + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, "node_modules/@typescript-eslint/parser/node_modules/debug": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", @@ -3756,12 +3830,36 @@ } } }, + "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/@typescript-eslint/parser/node_modules/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 }, + "node_modules/@typescript-eslint/parser/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@typescript-eslint/scope-manager": { "version": "4.25.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.25.0.tgz", @@ -9065,9 +9163,10 @@ "license": "MIT" }, "node_modules/globby": { - "version": "11.0.1", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz", + "integrity": "sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==", "dev": true, - "license": "MIT", "dependencies": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -16289,25 +16388,6 @@ "node": ">= 6" } }, - "node_modules/release-it/node_modules/globby": { - "version": "11.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/release-it/node_modules/inquirer": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.1.0.tgz", @@ -18192,9 +18272,10 @@ "license": "0BSD" }, "node_modules/tsutils": { - "version": "3.17.1", + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dev": true, - "license": "MIT", "dependencies": { "tslib": "^1.8.1" }, @@ -22263,17 +22344,58 @@ } }, "@typescript-eslint/parser": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.25.0.tgz", - "integrity": "sha512-OZFa1SKyEJpAhDx8FcbWyX+vLwh7OEtzoo2iQaeWwxucyfbi0mT4DijbOSsTgPKzGHr6GrF2V5p/CEpUH/VBxg==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.26.0.tgz", + "integrity": "sha512-b4jekVJG9FfmjUfmM4VoOItQhPlnt6MPOBUL0AQbiTmm+SSpSdhHYlwayOm4IW9KLI/4/cRKtQCmDl1oE2OlPg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "4.25.0", - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/typescript-estree": "4.25.0", - "debug": "^4.1.1" + "@typescript-eslint/scope-manager": "4.26.0", + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/typescript-estree": "4.26.0", + "debug": "^4.3.1" }, "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.26.0.tgz", + "integrity": "sha512-G6xB6mMo4xVxwMt5lEsNTz3x4qGDt0NSGmTBNBPJxNsrTXJSm21c6raeYroS2OwQsOyIXqKZv266L/Gln1BWqg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/visitor-keys": "4.26.0" + } + }, + "@typescript-eslint/types": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.26.0.tgz", + "integrity": "sha512-rADNgXl1kS/EKnDr3G+m7fB9yeJNnR9kF7xMiXL6mSIWpr3Wg5MhxyfEXy/IlYthsqwBqHOr22boFbf/u6O88A==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.26.0.tgz", + "integrity": "sha512-GHUgahPcm9GfBuy3TzdsizCcPjKOAauG9xkz9TR8kOdssz2Iz9jRCSQm6+aVFa23d5NcSpo1GdHGSQKe0tlcbg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/visitor-keys": "4.26.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.26.0.tgz", + "integrity": "sha512-cw4j8lH38V1ycGBbF+aFiLUls9Z0Bw8QschP3mkth50BbWzgFS33ISIgBzUMuQ2IdahoEv/rXstr8Zhlz4B1Zg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.26.0", + "eslint-visitor-keys": "^2.0.0" + } + }, "debug": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", @@ -22283,11 +22405,26 @@ "ms": "2.1.2" } }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "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.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } } } }, @@ -26034,7 +26171,9 @@ "dev": true }, "globby": { - "version": "11.0.1", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz", + "integrity": "sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==", "dev": true, "requires": { "array-union": "^2.1.0", @@ -30930,18 +31069,6 @@ "mime-types": "^2.1.12" } }, - "globby": { - "version": "11.0.3", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - } - }, "inquirer": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.1.0.tgz", @@ -32252,7 +32379,9 @@ "dev": true }, "tsutils": { - "version": "3.17.1", + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dev": true, "requires": { "tslib": "^1.8.1" From 5f88d5a9256b2b249d74f15d3709d2ec82a7e3fa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Jun 2021 17:50:28 +0300 Subject: [PATCH 06/10] Bump @typescript-eslint/eslint-plugin from 4.25.0 to 4.26.0 (#824) Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.25.0 to 4.26.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.26.0/packages/eslint-plugin) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 480 ++++++++++++++++++++++++++++++++++++---------- 1 file changed, 380 insertions(+), 100 deletions(-) diff --git a/package-lock.json b/package-lock.json index d875f047..9ebb5c3a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3622,19 +3622,19 @@ } }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.25.0.tgz", - "integrity": "sha512-Qfs3dWkTMKkKwt78xp2O/KZQB8MPS1UQ5D3YW2s6LQWBE1074BE+Rym+b1pXZIX3M3fSvPUDaCvZLKV2ylVYYQ==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.26.0.tgz", + "integrity": "sha512-yA7IWp+5Qqf+TLbd8b35ySFOFzUfL7i+4If50EqvjT6w35X8Lv0eBHb6rATeWmucks37w+zV+tWnOXI9JlG6Eg==", "dev": true, "dependencies": { - "@typescript-eslint/experimental-utils": "4.25.0", - "@typescript-eslint/scope-manager": "4.25.0", - "debug": "^4.1.1", + "@typescript-eslint/experimental-utils": "4.26.0", + "@typescript-eslint/scope-manager": "4.26.0", + "debug": "^4.3.1", "functional-red-black-tree": "^1.0.1", - "lodash": "^4.17.15", - "regexpp": "^3.0.0", - "semver": "^7.3.2", - "tsutils": "^3.17.1" + "lodash": "^4.17.21", + "regexpp": "^3.1.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" }, "engines": { "node": "^10.12.0 || >=12.0.0" @@ -3653,6 +3653,53 @@ } } }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.26.0.tgz", + "integrity": "sha512-G6xB6mMo4xVxwMt5lEsNTz3x4qGDt0NSGmTBNBPJxNsrTXJSm21c6raeYroS2OwQsOyIXqKZv266L/Gln1BWqg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/visitor-keys": "4.26.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.26.0.tgz", + "integrity": "sha512-rADNgXl1kS/EKnDr3G+m7fB9yeJNnR9kF7xMiXL6mSIWpr3Wg5MhxyfEXy/IlYthsqwBqHOr22boFbf/u6O88A==", + "dev": true, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.26.0.tgz", + "integrity": "sha512-cw4j8lH38V1ycGBbF+aFiLUls9Z0Bw8QschP3mkth50BbWzgFS33ISIgBzUMuQ2IdahoEv/rXstr8Zhlz4B1Zg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.26.0", + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/debug": { "version": "4.3.1", "dev": true, @@ -3669,6 +3716,15 @@ } } }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/ms": { "version": "2.1.2", "dev": true, @@ -3689,17 +3745,17 @@ } }, "node_modules/@typescript-eslint/experimental-utils": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.25.0.tgz", - "integrity": "sha512-f0doRE76vq7NEEU0tw+ajv6CrmPelw5wLoaghEHkA2dNLFb3T/zJQqGPQ0OYt5XlZaS13MtnN+GTPCuUVg338w==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.26.0.tgz", + "integrity": "sha512-TH2FO2rdDm7AWfAVRB5RSlbUhWxGVuxPNzGT7W65zVfl8H/WeXTk1e69IrcEVsBslrQSTDKQSaJD89hwKrhdkw==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.25.0", - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/typescript-estree": "4.25.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^2.0.0" + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.26.0", + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/typescript-estree": "4.26.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" }, "engines": { "node": "^10.12.0 || >=12.0.0" @@ -3712,6 +3768,145 @@ "eslint": "*" } }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/scope-manager": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.26.0.tgz", + "integrity": "sha512-G6xB6mMo4xVxwMt5lEsNTz3x4qGDt0NSGmTBNBPJxNsrTXJSm21c6raeYroS2OwQsOyIXqKZv266L/Gln1BWqg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/visitor-keys": "4.26.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/types": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.26.0.tgz", + "integrity": "sha512-rADNgXl1kS/EKnDr3G+m7fB9yeJNnR9kF7xMiXL6mSIWpr3Wg5MhxyfEXy/IlYthsqwBqHOr22boFbf/u6O88A==", + "dev": true, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.26.0.tgz", + "integrity": "sha512-GHUgahPcm9GfBuy3TzdsizCcPjKOAauG9xkz9TR8kOdssz2Iz9jRCSQm6+aVFa23d5NcSpo1GdHGSQKe0tlcbg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/visitor-keys": "4.26.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.26.0.tgz", + "integrity": "sha512-cw4j8lH38V1ycGBbF+aFiLUls9Z0Bw8QschP3mkth50BbWzgFS33ISIgBzUMuQ2IdahoEv/rXstr8Zhlz4B1Zg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.26.0", + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/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 + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@typescript-eslint/parser": { "version": "4.26.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.26.0.tgz", @@ -7517,11 +7712,12 @@ } }, "node_modules/eslint-scope": { - "version": "5.1.0", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { - "esrecurse": "^4.1.0", + "esrecurse": "^4.3.0", "estraverse": "^4.1.1" }, "engines": { @@ -7608,18 +7804,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "5.1.1", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, "node_modules/eslint/node_modules/eslint-visitor-keys": { "version": "2.0.0", "dev": true, @@ -7647,25 +7831,6 @@ "node": ">=4.0" } }, - "node_modules/eslint/node_modules/esrecurse": { - "version": "4.3.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint/node_modules/esrecurse/node_modules/estraverse": { - "version": "5.2.0", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, "node_modules/eslint/node_modules/file-entry-cache": { "version": "6.0.1", "dev": true, @@ -7911,16 +8076,26 @@ } }, "node_modules/esrecurse": { - "version": "4.2.1", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { - "estraverse": "^4.1.0" + "estraverse": "^5.2.0" }, "engines": { "node": ">=4.0" } }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, "node_modules/estraverse": { "version": "4.3.0", "dev": true, @@ -22294,21 +22469,47 @@ } }, "@typescript-eslint/eslint-plugin": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.25.0.tgz", - "integrity": "sha512-Qfs3dWkTMKkKwt78xp2O/KZQB8MPS1UQ5D3YW2s6LQWBE1074BE+Rym+b1pXZIX3M3fSvPUDaCvZLKV2ylVYYQ==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.26.0.tgz", + "integrity": "sha512-yA7IWp+5Qqf+TLbd8b35ySFOFzUfL7i+4If50EqvjT6w35X8Lv0eBHb6rATeWmucks37w+zV+tWnOXI9JlG6Eg==", "dev": true, "requires": { - "@typescript-eslint/experimental-utils": "4.25.0", - "@typescript-eslint/scope-manager": "4.25.0", - "debug": "^4.1.1", + "@typescript-eslint/experimental-utils": "4.26.0", + "@typescript-eslint/scope-manager": "4.26.0", + "debug": "^4.3.1", "functional-red-black-tree": "^1.0.1", - "lodash": "^4.17.15", - "regexpp": "^3.0.0", - "semver": "^7.3.2", - "tsutils": "^3.17.1" + "lodash": "^4.17.21", + "regexpp": "^3.1.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" }, "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.26.0.tgz", + "integrity": "sha512-G6xB6mMo4xVxwMt5lEsNTz3x4qGDt0NSGmTBNBPJxNsrTXJSm21c6raeYroS2OwQsOyIXqKZv266L/Gln1BWqg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/visitor-keys": "4.26.0" + } + }, + "@typescript-eslint/types": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.26.0.tgz", + "integrity": "sha512-rADNgXl1kS/EKnDr3G+m7fB9yeJNnR9kF7xMiXL6mSIWpr3Wg5MhxyfEXy/IlYthsqwBqHOr22boFbf/u6O88A==", + "dev": true + }, + "@typescript-eslint/visitor-keys": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.26.0.tgz", + "integrity": "sha512-cw4j8lH38V1ycGBbF+aFiLUls9Z0Bw8QschP3mkth50BbWzgFS33ISIgBzUMuQ2IdahoEv/rXstr8Zhlz4B1Zg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.26.0", + "eslint-visitor-keys": "^2.0.0" + } + }, "debug": { "version": "4.3.1", "dev": true, @@ -22316,6 +22517,12 @@ "ms": "2.1.2" } }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, "ms": { "version": "2.1.2", "dev": true @@ -22330,17 +22537,99 @@ } }, "@typescript-eslint/experimental-utils": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.25.0.tgz", - "integrity": "sha512-f0doRE76vq7NEEU0tw+ajv6CrmPelw5wLoaghEHkA2dNLFb3T/zJQqGPQ0OYt5XlZaS13MtnN+GTPCuUVg338w==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.26.0.tgz", + "integrity": "sha512-TH2FO2rdDm7AWfAVRB5RSlbUhWxGVuxPNzGT7W65zVfl8H/WeXTk1e69IrcEVsBslrQSTDKQSaJD89hwKrhdkw==", "dev": true, "requires": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.25.0", - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/typescript-estree": "4.25.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^2.0.0" + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.26.0", + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/typescript-estree": "4.26.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + }, + "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.26.0.tgz", + "integrity": "sha512-G6xB6mMo4xVxwMt5lEsNTz3x4qGDt0NSGmTBNBPJxNsrTXJSm21c6raeYroS2OwQsOyIXqKZv266L/Gln1BWqg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/visitor-keys": "4.26.0" + } + }, + "@typescript-eslint/types": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.26.0.tgz", + "integrity": "sha512-rADNgXl1kS/EKnDr3G+m7fB9yeJNnR9kF7xMiXL6mSIWpr3Wg5MhxyfEXy/IlYthsqwBqHOr22boFbf/u6O88A==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.26.0.tgz", + "integrity": "sha512-GHUgahPcm9GfBuy3TzdsizCcPjKOAauG9xkz9TR8kOdssz2Iz9jRCSQm6+aVFa23d5NcSpo1GdHGSQKe0tlcbg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.26.0", + "@typescript-eslint/visitor-keys": "4.26.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.26.0.tgz", + "integrity": "sha512-cw4j8lH38V1ycGBbF+aFiLUls9Z0Bw8QschP3mkth50BbWzgFS33ISIgBzUMuQ2IdahoEv/rXstr8Zhlz4B1Zg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.26.0", + "eslint-visitor-keys": "^2.0.0" + } + }, + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^2.0.0" + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "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.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } } }, "@typescript-eslint/parser": { @@ -24669,14 +24958,6 @@ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true }, - "eslint-scope": { - "version": "5.1.1", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, "eslint-visitor-keys": { "version": "2.0.0", "dev": true @@ -24694,19 +24975,6 @@ } } }, - "esrecurse": { - "version": "4.3.0", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "dev": true - } - } - }, "file-entry-cache": { "version": "6.0.1", "dev": true, @@ -25169,10 +25437,12 @@ "requires": {} }, "eslint-scope": { - "version": "5.1.0", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "requires": { - "esrecurse": "^4.1.0", + "esrecurse": "^4.3.0", "estraverse": "^4.1.1" } }, @@ -25218,10 +25488,20 @@ } }, "esrecurse": { - "version": "4.2.1", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "requires": { - "estraverse": "^4.1.0" + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } } }, "estraverse": { From a4ab65d9b211bff7d935314be18417cb3b10f195 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 4 Jun 2021 09:13:36 +0300 Subject: [PATCH 07/10] Bump @types/node from 15.9.0 to 15.12.0 (#829) Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 15.9.0 to 15.12.0. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 208 ++-------------------------------------------- 1 file changed, 6 insertions(+), 202 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9ebb5c3a..32b1b53e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3553,9 +3553,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "15.9.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.9.0.tgz", - "integrity": "sha512-AR1Vq1Ei1GaA5FjKL5PBqblTZsL5M+monvGSZwe6sSIdGiuu7Xr/pNwWJY+0ZQuN8AapD/XMB5IzBAyYRFbocA==" + "version": "15.12.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-15.12.0.tgz", + "integrity": "sha512-+aHJvoCsVhO2ZCuT4o5JtcPrCPyDE3+1nvbDprYes+pPkEsbjH7AGUCNtjMOXS0fqH14t+B7yLzaqSz92FPWyw==" }, "node_modules/@types/node-fetch": { "version": "2.5.10", @@ -4055,127 +4055,6 @@ "node": ">=10" } }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.25.0.tgz", - "integrity": "sha512-2NElKxMb/0rya+NJG1U71BuNnp1TBd1JgzYsldsdA83h/20Tvnf/HrwhiSlNmuq6Vqa0EzidsvkTArwoq+tH6w==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/visitor-keys": "4.25.0" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/types": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.25.0.tgz", - "integrity": "sha512-+CNINNvl00OkW6wEsi32wU5MhHti2J25TJsJJqgQmJu3B3dYDBcmOxcE5w9cgoM13TrdE/5ND2HoEnBohasxRQ==", - "dev": true, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.25.0.tgz", - "integrity": "sha512-1B8U07TGNAFMxZbSpF6jqiDs1cVGO0izVkf18Q/SPcUAc9LhHxzvSowXDTvkHMWUVuPpagupaW63gB6ahTXVlg==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/visitor-keys": "4.25.0", - "debug": "^4.1.1", - "globby": "^11.0.1", - "is-glob": "^4.0.1", - "semver": "^7.3.2", - "tsutils": "^3.17.1" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/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 - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.25.0.tgz", - "integrity": "sha512-AmkqV9dDJVKP/TcZrbf6s6i1zYXt5Hl8qOLrRDTFfRNae4+LB8A4N3i+FLZPW85zIxRy39BgeWOfMS3HoH5ngg==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "4.25.0", - "eslint-visitor-keys": "^2.0.0" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, "node_modules/@ungap/promise-all-settled": { "version": "1.1.2", "dev": true, @@ -22409,9 +22288,9 @@ "dev": true }, "@types/node": { - "version": "15.9.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.9.0.tgz", - "integrity": "sha512-AR1Vq1Ei1GaA5FjKL5PBqblTZsL5M+monvGSZwe6sSIdGiuu7Xr/pNwWJY+0ZQuN8AapD/XMB5IzBAyYRFbocA==" + "version": "15.12.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-15.12.0.tgz", + "integrity": "sha512-+aHJvoCsVhO2ZCuT4o5JtcPrCPyDE3+1nvbDprYes+pPkEsbjH7AGUCNtjMOXS0fqH14t+B7yLzaqSz92FPWyw==" }, "@types/node-fetch": { "version": "2.5.10", @@ -22717,81 +22596,6 @@ } } }, - "@typescript-eslint/scope-manager": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.25.0.tgz", - "integrity": "sha512-2NElKxMb/0rya+NJG1U71BuNnp1TBd1JgzYsldsdA83h/20Tvnf/HrwhiSlNmuq6Vqa0EzidsvkTArwoq+tH6w==", - "dev": true, - "requires": { - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/visitor-keys": "4.25.0" - } - }, - "@typescript-eslint/types": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.25.0.tgz", - "integrity": "sha512-+CNINNvl00OkW6wEsi32wU5MhHti2J25TJsJJqgQmJu3B3dYDBcmOxcE5w9cgoM13TrdE/5ND2HoEnBohasxRQ==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.25.0.tgz", - "integrity": "sha512-1B8U07TGNAFMxZbSpF6jqiDs1cVGO0izVkf18Q/SPcUAc9LhHxzvSowXDTvkHMWUVuPpagupaW63gB6ahTXVlg==", - "dev": true, - "requires": { - "@typescript-eslint/types": "4.25.0", - "@typescript-eslint/visitor-keys": "4.25.0", - "debug": "^4.1.1", - "globby": "^11.0.1", - "is-glob": "^4.0.1", - "semver": "^7.3.2", - "tsutils": "^3.17.1" - }, - "dependencies": { - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "@typescript-eslint/visitor-keys": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.25.0.tgz", - "integrity": "sha512-AmkqV9dDJVKP/TcZrbf6s6i1zYXt5Hl8qOLrRDTFfRNae4+LB8A4N3i+FLZPW85zIxRy39BgeWOfMS3HoH5ngg==", - "dev": true, - "requires": { - "@typescript-eslint/types": "4.25.0", - "eslint-visitor-keys": "^2.0.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true - } - } - }, "@ungap/promise-all-settled": { "version": "1.1.2", "dev": true From c50a6271b5360c826357602cb7c97a6611628d93 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 4 Jun 2021 09:14:09 +0300 Subject: [PATCH 08/10] Bump microbundle from 0.13.0 to 0.13.1 (#820) Bumps [microbundle](https://github.com/developit/microbundle) from 0.13.0 to 0.13.1. - [Release notes](https://github.com/developit/microbundle/releases) - [Changelog](https://github.com/developit/microbundle/blob/master/CHANGELOG.md) - [Commits](https://github.com/developit/microbundle/compare/v0.13.0...v0.13.1) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 32b1b53e..9860520b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11320,9 +11320,10 @@ } }, "node_modules/microbundle": { - "version": "0.13.0", + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/microbundle/-/microbundle-0.13.1.tgz", + "integrity": "sha512-dwwSJp5WjQ3eRievTItnZtqa2blufQJgeExUWCwvKFYKB3L4xOAZ6bPdRVgzq1rKmi8RybNo6eukJU3Zcx+1JA==", "dev": true, - "license": "MIT", "dependencies": { "@babel/core": "^7.12.10", "@babel/plugin-proposal-class-properties": "7.12.1", @@ -27653,7 +27654,9 @@ "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" }, "microbundle": { - "version": "0.13.0", + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/microbundle/-/microbundle-0.13.1.tgz", + "integrity": "sha512-dwwSJp5WjQ3eRievTItnZtqa2blufQJgeExUWCwvKFYKB3L4xOAZ6bPdRVgzq1rKmi8RybNo6eukJU3Zcx+1JA==", "dev": true, "requires": { "@babel/core": "^7.12.10", From 6735e8a33f8a6e2fb513d5412a0a1db70d8b59ff Mon Sep 17 00:00:00 2001 From: alexcos20 Date: Thu, 3 Jun 2021 23:42:43 -0700 Subject: [PATCH 09/10] fix version --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 96aa7428..71f548a3 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@oceanprotocol/lib", "source": "./src/index.ts", - "version": "0.14.9", + "version": "0.15.0", "description": "JavaScript client library for Ocean Protocol", "main": "./dist/node/lib.js", "exports": "./dist/node/lib.js", @@ -56,7 +56,7 @@ "node-abort-controller": "^2.0.0", "save-file": "^2.3.1", "uuid": "^8.3.2", - "web3": "^1.3.6", + "web3": "^1.3.5", "web3-eth-contract": "^1.3.6" }, "devDependencies": { From 727a55046c44c1841360f6aa2a4f94befe157860 Mon Sep 17 00:00:00 2001 From: alexcos20 Date: Thu, 3 Jun 2021 23:45:05 -0700 Subject: [PATCH 10/10] Release 0.15.1 --- CHANGELOG.md | 52 ++++++++++++++++++++++++++++++++++++++++++++--- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 52 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ba7b1aa7..56db94e4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,8 +4,54 @@ All notable changes to this project will be documented in this file. Dates are d Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). +#### [v0.15.1](https://github.com/oceanprotocol/ocean.js/compare/v0.15.0...v0.15.1) + +- Bump microbundle from 0.13.0 to 0.13.1 [`#820`](https://github.com/oceanprotocol/ocean.js/pull/820) +- Bump @types/node from 15.9.0 to 15.12.0 [`#829`](https://github.com/oceanprotocol/ocean.js/pull/829) +- Bump @typescript-eslint/eslint-plugin from 4.25.0 to 4.26.0 [`#824`](https://github.com/oceanprotocol/ocean.js/pull/824) +- Bump @typescript-eslint/parser from 4.25.0 to 4.26.0 [`#823`](https://github.com/oceanprotocol/ocean.js/pull/823) +- Bump @types/node from 15.6.1 to 15.9.0 [`#826`](https://github.com/oceanprotocol/ocean.js/pull/826) +- Add order checks for credentials [`#827`](https://github.com/oceanprotocol/ocean.js/pull/827) +- Feature/credentials support in asset [`#787`](https://github.com/oceanprotocol/ocean.js/pull/787) +- add "valid" boolean in File.ts [`#825`](https://github.com/oceanprotocol/ocean.js/pull/825) +- Add ocean.assets.isConsumable function [`#786`](https://github.com/oceanprotocol/ocean.js/pull/786) +- fix ddo encrypt for browsers [`#822`](https://github.com/oceanprotocol/ocean.js/pull/822) +- add type 'free' to BestPrice [`#821`](https://github.com/oceanprotocol/ocean.js/pull/821) +- fix version [`6735e8a`](https://github.com/oceanprotocol/ocean.js/commit/6735e8a33f8a6e2fb513d5412a0a1db70d8b59ff) + +#### [v0.15.0](https://github.com/oceanprotocol/ocean.js/compare/v0.14.9...v0.15.0) + +> 28 May 2021 + +- Bump typescript from 4.2.4 to 4.3.2 [`#819`](https://github.com/oceanprotocol/ocean.js/pull/819) +- Bump @truffle/hdwallet-provider from 1.3.0 to 1.4.0 [`#816`](https://github.com/oceanprotocol/ocean.js/pull/816) +- Bump mocha from 8.3.2 to 8.4.0 [`#817`](https://github.com/oceanprotocol/ocean.js/pull/817) +- Fix/ Order method should throw error messages [`#803`](https://github.com/oceanprotocol/ocean.js/pull/803) +- Bump @oceanprotocol/contracts from 0.6.2 to 0.6.3 [`#814`](https://github.com/oceanprotocol/ocean.js/pull/814) +- Bump release-it from 14.6.1 to 14.7.0 [`#815`](https://github.com/oceanprotocol/ocean.js/pull/815) +- Bump auto-changelog from 2.2.1 to 2.3.0 [`#813`](https://github.com/oceanprotocol/ocean.js/pull/813) +- Bump @types/node from 15.0.2 to 15.6.1 [`#810`](https://github.com/oceanprotocol/ocean.js/pull/810) +- remove all doo price tests [`#805`](https://github.com/oceanprotocol/ocean.js/pull/805) +- Bump ts-node from 9.1.1 to 10.0.0 [`#811`](https://github.com/oceanprotocol/ocean.js/pull/811) +- Bump @typescript-eslint/parser from 4.22.1 to 4.25.0 [`#812`](https://github.com/oceanprotocol/ocean.js/pull/812) +- Bump web3-eth-contract from 1.3.5 to 1.3.6 [`#802`](https://github.com/oceanprotocol/ocean.js/pull/802) +- Bump prettier from 2.2.1 to 2.3.0 [`#793`](https://github.com/oceanprotocol/ocean.js/pull/793) +- Bump @types/chai from 4.2.17 to 4.2.18 [`#797`](https://github.com/oceanprotocol/ocean.js/pull/797) +- Bump @typescript-eslint/eslint-plugin from 4.22.1 to 4.25.0 [`#809`](https://github.com/oceanprotocol/ocean.js/pull/809) +- Bump eslint from 7.25.0 to 7.27.0 [`#808`](https://github.com/oceanprotocol/ocean.js/pull/808) +- building package-lock.json with npm v7 [`#804`](https://github.com/oceanprotocol/ocean.js/pull/804) +- Bump mocha from 8.3.2 to 8.4.0 [`#801`](https://github.com/oceanprotocol/ocean.js/pull/801) +- Bump release-it from 14.6.1 to 14.6.2 [`#795`](https://github.com/oceanprotocol/ocean.js/pull/795) +- Bump lodash from 4.17.19 to 4.17.21 [`#799`](https://github.com/oceanprotocol/ocean.js/pull/799) +- Bump @truffle/hdwallet-provider from 1.3.0 to 1.4.0 [`#800`](https://github.com/oceanprotocol/ocean.js/pull/800) +- building package.json with npm v7 [`5aa8d7d`](https://github.com/oceanprotocol/ocean.js/commit/5aa8d7d10113a829f5c6a62bc21bf46d6e03e2ac) +- Release 0.15.0 [`ffcdfb2`](https://github.com/oceanprotocol/ocean.js/commit/ffcdfb299da05a8b2ecd3e449a0aeeaf5f1cc875) +- fix ddo encrypt for browsers [`b85d85b`](https://github.com/oceanprotocol/ocean.js/commit/b85d85b569731a3b68d7b2c4913a15e5bf1395db) + #### [v0.14.9](https://github.com/oceanprotocol/ocean.js/compare/v0.14.8...v0.14.9) +> 11 May 2021 + - Feature/dispenser [`#790`](https://github.com/oceanprotocol/ocean.js/pull/790) - Bump handlebars from 4.7.6 to 4.7.7 [`#791`](https://github.com/oceanprotocol/ocean.js/pull/791) - Bump @types/node from 15.0.1 to 15.0.2 [`#785`](https://github.com/oceanprotocol/ocean.js/pull/785) @@ -13,7 +59,7 @@ Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). - Bump @typescript-eslint/eslint-plugin from 4.22.0 to 4.22.1 [`#783`](https://github.com/oceanprotocol/ocean.js/pull/783) - Revert "creating interface for the dispenser contract" [`53b401d`](https://github.com/oceanprotocol/ocean.js/commit/53b401dcd059234197e0119e7eca2fecc8d19109) - creating interface for the dispenser contract [`413b17e`](https://github.com/oceanprotocol/ocean.js/commit/413b17e668a4d92e2ab9d43092b604bc2b2f2914) -- Revert "instantiate Dispenser" [`603e512`](https://github.com/oceanprotocol/ocean.js/commit/603e512f8ac085f630555016fcb4095b766c6136) +- Release 0.14.9 [`804a6a6`](https://github.com/oceanprotocol/ocean.js/commit/804a6a62facbe9f6b110d4d864cd63424555316b) #### [v0.14.8](https://github.com/oceanprotocol/ocean.js/compare/v0.14.7...v0.14.8) @@ -828,8 +874,8 @@ Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). > 30 September 2020 - add stats/history [`#289`](https://github.com/oceanprotocol/ocean.js/pull/289) -- add stats [`b815fbf`](https://github.com/oceanprotocol/ocean.js/commit/b815fbf0a135e0825674b45b64f1d911c03e6a59) - add stats [`c6a9f7d`](https://github.com/oceanprotocol/ocean.js/commit/c6a9f7d69b8ac60f349e62a3dbc161b835b4fb41) +- add stats [`b815fbf`](https://github.com/oceanprotocol/ocean.js/commit/b815fbf0a135e0825674b45b64f1d911c03e6a59) - small refactor [`6f645d6`](https://github.com/oceanprotocol/ocean.js/commit/6f645d6e8fd134a69b56e862e9652a830308df12) #### [v0.3.2](https://github.com/oceanprotocol/ocean.js/compare/v0.3.1...v0.3.2) @@ -1202,4 +1248,4 @@ Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). - minor rendering fix [`#11`](https://github.com/oceanprotocol/ocean.js/pull/11) - cleaning [`cd9f629`](https://github.com/oceanprotocol/ocean.js/commit/cd9f6295ed08110936f9a092527bae5d0a974bbb) - remove test output files [`28d1775`](https://github.com/oceanprotocol/ocean.js/commit/28d1775593ab78bf404708244c49af8f912f3117) -- first cut, highly WIP [`67af4d1`](https://github.com/oceanprotocol/ocean.js/commit/67af4d1d595fc105cc544ff019199c6cef9f76e5) +- add ownerAssets [`d8dadf5`](https://github.com/oceanprotocol/ocean.js/commit/d8dadf5495d77e2f73d45454347c13e185bed7d4) diff --git a/package-lock.json b/package-lock.json index 9860520b..3ca2d258 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@oceanprotocol/lib", - "version": "0.14.9", + "version": "0.15.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@oceanprotocol/lib", - "version": "0.14.9", + "version": "0.15.1", "license": "Apache-2.0", "dependencies": { "@ethereum-navigator/navigator": "^0.5.2", diff --git a/package.json b/package.json index 71f548a3..aebc9486 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@oceanprotocol/lib", "source": "./src/index.ts", - "version": "0.15.0", + "version": "0.15.1", "description": "JavaScript client library for Ocean Protocol", "main": "./dist/node/lib.js", "exports": "./dist/node/lib.js",