From c6a3b82f9eb89ca46f026349e2c944e5de157ad8 Mon Sep 17 00:00:00 2001 From: Greg Swindle Date: Sun, 7 Jul 2019 23:01:23 -0500 Subject: [PATCH] test(product): add spec stubs --- README.md | 12 +- ...rchetypes-product-module-specification.png | Bin 0 -> 111879 bytes lib/mixin-effective-dates.js | 36 + lib/product/__tests__/arbitrary-price.test.js | 7 + lib/product/__tests__/batch.test.js | 7 + lib/product/__tests__/catalog-entry.test.js | 7 + .../measured-product-instance.test.js | 7 + .../__tests__/measured-product-type.test.js | 7 + .../__tests__/package-instance.test.js | 7 + lib/product/__tests__/package-type.test.js | 7 + lib/product/__tests__/package.test.js | 7 + lib/product/__tests__/price-options.test.js | 7 + lib/product/__tests__/price.test.js | 38 + .../__tests__/pricing-strategy.test.js | 7 + lib/product/__tests__/product-catalog.test.js | 7 + .../product-feature-instance.test.js | 7 + .../__tests__/product-feature-type.test.js | 7 + .../__tests__/product-identifier.test.js | 7 + .../__tests__/product-instance.test.js | 7 + .../__tests__/product-relationship.test.js | 7 + lib/product/__tests__/product-set.test.js | 7 + lib/product/__tests__/product-type.test.js | 7 + lib/product/__tests__/product.test.js | 7 + .../proposition-of-inclusion.test.js | 7 + lib/product/__tests__/serial-number.test.js | 7 + .../__tests__/service-delivery-status.test.js | 7 + .../__tests__/service-instance.test.js | 7 + lib/product/__tests__/service-type.test.js | 7 + lib/product/__tests__/service.test.js | 7 + lib/product/arbitrary-price.js | 17 + lib/product/batch.js | 5 + lib/product/catalog-entry.js | 5 + lib/product/measured-product-instance.js | 5 + lib/product/measured-product-type.js | 5 + lib/product/package-instance.js | 5 + lib/product/package-type.js | 5 + lib/product/package.js | 5 + lib/product/price-options.js | 9 + lib/product/price.js | 60 + lib/product/pricing-strategy.js | 5 + lib/product/product-catalog.js | 5 + lib/product/product-feature-instance.js | 0 lib/product/product-feature-type.js | 0 lib/product/product-identifier.js | 0 lib/product/product-instance.js | 3 + lib/product/product-relationship.js | 0 lib/product/product-set.js | 0 lib/product/product-type.js | 21 + lib/product/product.js | 0 lib/product/proposition-of-inclusion.js | 0 lib/product/serial-number.js | 0 lib/product/service-delivery-status.js | 0 lib/product/service-instance.js | 0 lib/product/service-type.js | 0 lib/product/service.js | 0 npm-shrinkwrap.json | 3829 ++++++++++++++--- package.json | 58 +- 57 files changed, 3641 insertions(+), 662 deletions(-) create mode 100644 docs/assets/archetypes-product-module-specification.png create mode 100644 lib/mixin-effective-dates.js create mode 100644 lib/product/__tests__/arbitrary-price.test.js create mode 100644 lib/product/__tests__/batch.test.js create mode 100644 lib/product/__tests__/catalog-entry.test.js create mode 100644 lib/product/__tests__/measured-product-instance.test.js create mode 100644 lib/product/__tests__/measured-product-type.test.js create mode 100644 lib/product/__tests__/package-instance.test.js create mode 100644 lib/product/__tests__/package-type.test.js create mode 100644 lib/product/__tests__/package.test.js create mode 100644 lib/product/__tests__/price-options.test.js create mode 100644 lib/product/__tests__/price.test.js create mode 100644 lib/product/__tests__/pricing-strategy.test.js create mode 100644 lib/product/__tests__/product-catalog.test.js create mode 100644 lib/product/__tests__/product-feature-instance.test.js create mode 100644 lib/product/__tests__/product-feature-type.test.js create mode 100644 lib/product/__tests__/product-identifier.test.js create mode 100644 lib/product/__tests__/product-instance.test.js create mode 100644 lib/product/__tests__/product-relationship.test.js create mode 100644 lib/product/__tests__/product-set.test.js create mode 100644 lib/product/__tests__/product-type.test.js create mode 100644 lib/product/__tests__/product.test.js create mode 100644 lib/product/__tests__/proposition-of-inclusion.test.js create mode 100644 lib/product/__tests__/serial-number.test.js create mode 100644 lib/product/__tests__/service-delivery-status.test.js create mode 100644 lib/product/__tests__/service-instance.test.js create mode 100644 lib/product/__tests__/service-type.test.js create mode 100644 lib/product/__tests__/service.test.js create mode 100644 lib/product/arbitrary-price.js create mode 100644 lib/product/batch.js create mode 100644 lib/product/catalog-entry.js create mode 100644 lib/product/measured-product-instance.js create mode 100644 lib/product/measured-product-type.js create mode 100644 lib/product/package-instance.js create mode 100644 lib/product/package-type.js create mode 100644 lib/product/package.js create mode 100644 lib/product/price-options.js create mode 100644 lib/product/price.js create mode 100644 lib/product/pricing-strategy.js create mode 100644 lib/product/product-catalog.js create mode 100644 lib/product/product-feature-instance.js create mode 100644 lib/product/product-feature-type.js create mode 100644 lib/product/product-identifier.js create mode 100644 lib/product/product-instance.js create mode 100644 lib/product/product-relationship.js create mode 100644 lib/product/product-set.js create mode 100644 lib/product/product-type.js create mode 100644 lib/product/product.js create mode 100644 lib/product/proposition-of-inclusion.js create mode 100644 lib/product/serial-number.js create mode 100644 lib/product/service-delivery-status.js create mode 100644 lib/product/service-instance.js create mode 100644 lib/product/service-type.js create mode 100644 lib/product/service.js diff --git a/README.md b/README.md index 18b1988..d77167f 100644 --- a/README.md +++ b/README.md @@ -75,9 +75,11 @@ _Table 1.1_ | [ISO 2108][iso-2108-url] | International Standard Book Number (ISBN) | | [ISO 10957][iso-10957-url] | International Standard Music Number (ISMN) | -### 1.2. **@archetypes/product** Model +### 1.2. **@archetypes/product** Specification -[See the API section]() for model summaries. +_Figure 1: **@archetypes/product** module UML class diagram._ [^1] + +![@archetypes/product module UML class diagram][archetypes-products-specification] ## 2. Installation @@ -263,6 +265,10 @@ Before submitting a Pull Request, please read our: [![Back to Table of contents][octicon-triangle-up] \[toc\]][toc-anchor] +## 8. Citations and References + +[^1]: Arlow, J., & Neustadt, I. (2004). _Enterprise Patterns and MDA_ (p. 205). Boston: Addison-Wesley. + @@ -271,7 +277,7 @@ Before submitting a Pull Request, please read our: [appveyor-url]: https://ci.appveyor.com/project/gregswindle/archetypes-products -[archetypes-products-overview]: ./docs/assets/archetypes.rules-overview.png +[archetypes-products-specification]: ./docs/assets/archetypes-product-module-specification.png [codacy-coverage-image]: https://img.shields. diff --git a/docs/assets/archetypes-product-module-specification.png b/docs/assets/archetypes-product-module-specification.png new file mode 100644 index 0000000000000000000000000000000000000000..5001044b136e217eed23dc85fbf672a954311e8e GIT binary patch literal 111879 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 h{r`Ul1-x@mOll2Nbl(}P842YpUswGr` { + /* eslint-disable accessor-pairs */ + Object.defineProperties(object, { + validFrom: { + enumerable: true, + get () { + return this.validFromValue + }, + set (val = null) { + ow(val, ow.any(ow.date, ow.null)) + this.validFromValue = val + } + }, + validFromValue: { + value: null + }, + validTo: { + enumerable: true, + get () { + return this.validToValue + }, + set (val = null) { + ow(val, ow.any(ow.date, ow.null)) + this.validToValue = val + } + }, + validToValue: { + value: null + } + }) + /* eslint-enable accessor-pairs */ +} + +module.exports = mixinEffectiveDates diff --git a/lib/product/__tests__/arbitrary-price.test.js b/lib/product/__tests__/arbitrary-price.test.js new file mode 100644 index 0000000..ac22999 --- /dev/null +++ b/lib/product/__tests__/arbitrary-price.test.js @@ -0,0 +1,7 @@ +const ArbitraryPrice = require('../arbitrary-price.js'); + +describe('ArbitraryPrice', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/batch.test.js b/lib/product/__tests__/batch.test.js new file mode 100644 index 0000000..5f082cf --- /dev/null +++ b/lib/product/__tests__/batch.test.js @@ -0,0 +1,7 @@ +const Batch = require('../batch.js'); + +describe('Batch', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/catalog-entry.test.js b/lib/product/__tests__/catalog-entry.test.js new file mode 100644 index 0000000..c6bb052 --- /dev/null +++ b/lib/product/__tests__/catalog-entry.test.js @@ -0,0 +1,7 @@ +const CatalogEntry = require('../catalog-entry.js'); + +describe('CatalogEntry', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/measured-product-instance.test.js b/lib/product/__tests__/measured-product-instance.test.js new file mode 100644 index 0000000..85b6e83 --- /dev/null +++ b/lib/product/__tests__/measured-product-instance.test.js @@ -0,0 +1,7 @@ +const MeasuredProductInstance = require('../measured-product-instance.js'); + +describe('MeasuredProductInstance', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/measured-product-type.test.js b/lib/product/__tests__/measured-product-type.test.js new file mode 100644 index 0000000..1c77881 --- /dev/null +++ b/lib/product/__tests__/measured-product-type.test.js @@ -0,0 +1,7 @@ +const MeasuredProductType = require('../measured-product-type.js'); + +describe('MeasuredProductType', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/package-instance.test.js b/lib/product/__tests__/package-instance.test.js new file mode 100644 index 0000000..79ca859 --- /dev/null +++ b/lib/product/__tests__/package-instance.test.js @@ -0,0 +1,7 @@ +const PackageInstance = require('../package-instance.js'); + +describe('PackageInstance', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/package-type.test.js b/lib/product/__tests__/package-type.test.js new file mode 100644 index 0000000..0ee2429 --- /dev/null +++ b/lib/product/__tests__/package-type.test.js @@ -0,0 +1,7 @@ +const PackageType = require('../package-type.js'); + +describe('PackageType', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/package.test.js b/lib/product/__tests__/package.test.js new file mode 100644 index 0000000..13fb26f --- /dev/null +++ b/lib/product/__tests__/package.test.js @@ -0,0 +1,7 @@ +const Package = require('../package.js'); + +describe('Package', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/price-options.test.js b/lib/product/__tests__/price-options.test.js new file mode 100644 index 0000000..5b8effe --- /dev/null +++ b/lib/product/__tests__/price-options.test.js @@ -0,0 +1,7 @@ +const PriceOptions = require('../price-options.js'); + +describe('PriceOptions', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/price.test.js b/lib/product/__tests__/price.test.js new file mode 100644 index 0000000..504366c --- /dev/null +++ b/lib/product/__tests__/price.test.js @@ -0,0 +1,38 @@ +const Price = require('../price.js'); + +describe('Price', () => { + let price = null + + afterEach(() => { + price = null + }) + + describe('represents the amount of money that must be paid in order to purchase a good or service', () => { + + describe('amount', () => { + it('is monetary value', () => { + price = new Price(9.98) + expect(price.amount).toBe(9.98) + + const DEFAULT_AMOUNT = 0 + price = new Price() + expect(price.amount).toBe(DEFAULT_AMOUNT) + }) + + describe('when assigned a value other than a number', () => { + it('throws an ArgumentError', () => { + expect(() => { + price = new Price('free!') + }).toThrow() + + expect(() => { + price = new Price(null) + }).toThrow() + }) + }) + + }) + + }) + +}); diff --git a/lib/product/__tests__/pricing-strategy.test.js b/lib/product/__tests__/pricing-strategy.test.js new file mode 100644 index 0000000..ff511ca --- /dev/null +++ b/lib/product/__tests__/pricing-strategy.test.js @@ -0,0 +1,7 @@ +const PricingStrategy = require('../pricing-strategy.js'); + +describe('PricingStrategy', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/product-catalog.test.js b/lib/product/__tests__/product-catalog.test.js new file mode 100644 index 0000000..1b463bd --- /dev/null +++ b/lib/product/__tests__/product-catalog.test.js @@ -0,0 +1,7 @@ +const ProductCatalog = require('../product-catalog.js'); + +describe('ProductCatalog', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/product-feature-instance.test.js b/lib/product/__tests__/product-feature-instance.test.js new file mode 100644 index 0000000..828ae2e --- /dev/null +++ b/lib/product/__tests__/product-feature-instance.test.js @@ -0,0 +1,7 @@ +const ProductFeatureInstance = require('../product-feature-instance.js'); + +describe('ProductFeatureInstance', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/product-feature-type.test.js b/lib/product/__tests__/product-feature-type.test.js new file mode 100644 index 0000000..561fa34 --- /dev/null +++ b/lib/product/__tests__/product-feature-type.test.js @@ -0,0 +1,7 @@ +const ProductFeatureType = require('../product-feature-type.js'); + +describe('ProductFeatureType', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/product-identifier.test.js b/lib/product/__tests__/product-identifier.test.js new file mode 100644 index 0000000..dca9afc --- /dev/null +++ b/lib/product/__tests__/product-identifier.test.js @@ -0,0 +1,7 @@ +const ProductIdentifier = require('../product-identifier.js'); + +describe('ProductIdentifier', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/product-instance.test.js b/lib/product/__tests__/product-instance.test.js new file mode 100644 index 0000000..09b988c --- /dev/null +++ b/lib/product/__tests__/product-instance.test.js @@ -0,0 +1,7 @@ +const ProductInstance = require('../product-instance.js'); + +describe('ProductInstance', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/product-relationship.test.js b/lib/product/__tests__/product-relationship.test.js new file mode 100644 index 0000000..44e477c --- /dev/null +++ b/lib/product/__tests__/product-relationship.test.js @@ -0,0 +1,7 @@ +const ProductRelationship = require('../product-relationship.js'); + +describe('ProductRelationship', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/product-set.test.js b/lib/product/__tests__/product-set.test.js new file mode 100644 index 0000000..44a666e --- /dev/null +++ b/lib/product/__tests__/product-set.test.js @@ -0,0 +1,7 @@ +const ProductSet = require('../product-set.js'); + +describe('ProductSet', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/product-type.test.js b/lib/product/__tests__/product-type.test.js new file mode 100644 index 0000000..d5f9549 --- /dev/null +++ b/lib/product/__tests__/product-type.test.js @@ -0,0 +1,7 @@ +const ProductType = require('../product-type.js'); + +describe('ProductType', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/product.test.js b/lib/product/__tests__/product.test.js new file mode 100644 index 0000000..3afa8f6 --- /dev/null +++ b/lib/product/__tests__/product.test.js @@ -0,0 +1,7 @@ +const Product = require('../product.js'); + +describe('Product', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/proposition-of-inclusion.test.js b/lib/product/__tests__/proposition-of-inclusion.test.js new file mode 100644 index 0000000..add4293 --- /dev/null +++ b/lib/product/__tests__/proposition-of-inclusion.test.js @@ -0,0 +1,7 @@ +const PropositionOfInclusion = require('../proposition-of-inclusion.js'); + +describe('PropositionOfInclusion', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/serial-number.test.js b/lib/product/__tests__/serial-number.test.js new file mode 100644 index 0000000..f18ffd3 --- /dev/null +++ b/lib/product/__tests__/serial-number.test.js @@ -0,0 +1,7 @@ +const SerialNumber = require('../serial-number.js'); + +describe('SerialNumber', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/service-delivery-status.test.js b/lib/product/__tests__/service-delivery-status.test.js new file mode 100644 index 0000000..a8d5454 --- /dev/null +++ b/lib/product/__tests__/service-delivery-status.test.js @@ -0,0 +1,7 @@ +const ServiceDeliveryStatus = require('../service-delivery-status.js'); + +describe('ServiceDeliveryStatus', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/service-instance.test.js b/lib/product/__tests__/service-instance.test.js new file mode 100644 index 0000000..8f1a1db --- /dev/null +++ b/lib/product/__tests__/service-instance.test.js @@ -0,0 +1,7 @@ +const ServiceInstance = require('../service-instance.js'); + +describe('ServiceInstance', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/service-type.test.js b/lib/product/__tests__/service-type.test.js new file mode 100644 index 0000000..8fe8061 --- /dev/null +++ b/lib/product/__tests__/service-type.test.js @@ -0,0 +1,7 @@ +const ServiceType = require('../service-type.js'); + +describe('ServiceType', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/__tests__/service.test.js b/lib/product/__tests__/service.test.js new file mode 100644 index 0000000..216d564 --- /dev/null +++ b/lib/product/__tests__/service.test.js @@ -0,0 +1,7 @@ +const Service = require('../service.js'); + +describe('Service', () => { + it('has a test', () => { + + }); +}); diff --git a/lib/product/arbitrary-price.js b/lib/product/arbitrary-price.js new file mode 100644 index 0000000..585e58e --- /dev/null +++ b/lib/product/arbitrary-price.js @@ -0,0 +1,17 @@ +const Price = require('./price') + +/** + * @classdesc + * Represents an ad hoc Price applied to a specific ProductInstance. + * + * • Rules-based pricing: a walk-through of a pricing process that is driven + * by business rules + * • Package pricing: how to represent the Price of a package + * + * @class ArbitraryPrice + * @extends {Price} + */ + +class ArbitraryPrice extends Price {} + +module.exports = ArbitraryPrice diff --git a/lib/product/batch.js b/lib/product/batch.js new file mode 100644 index 0000000..8f9a3c1 --- /dev/null +++ b/lib/product/batch.js @@ -0,0 +1,5 @@ +class Batch { + +} + +module.exports = Batch diff --git a/lib/product/catalog-entry.js b/lib/product/catalog-entry.js new file mode 100644 index 0000000..34ebc2a --- /dev/null +++ b/lib/product/catalog-entry.js @@ -0,0 +1,5 @@ +class CatalogEntry { + +} + +module.exports = CatalogEntry diff --git a/lib/product/measured-product-instance.js b/lib/product/measured-product-instance.js new file mode 100644 index 0000000..91736e1 --- /dev/null +++ b/lib/product/measured-product-instance.js @@ -0,0 +1,5 @@ +class MeasuredProductInstance { + +} + +module.exports = MeasuredProductInstance diff --git a/lib/product/measured-product-type.js b/lib/product/measured-product-type.js new file mode 100644 index 0000000..311e10a --- /dev/null +++ b/lib/product/measured-product-type.js @@ -0,0 +1,5 @@ +class MeasuredProductType { + +} + +module.exports = MeasuredProductType diff --git a/lib/product/package-instance.js b/lib/product/package-instance.js new file mode 100644 index 0000000..d3c25a1 --- /dev/null +++ b/lib/product/package-instance.js @@ -0,0 +1,5 @@ +class PackageInstance { + +} + +module.exports = PackageInstance diff --git a/lib/product/package-type.js b/lib/product/package-type.js new file mode 100644 index 0000000..83bd395 --- /dev/null +++ b/lib/product/package-type.js @@ -0,0 +1,5 @@ +class PackageType { + +} + +module.exports = PackageType diff --git a/lib/product/package.js b/lib/product/package.js new file mode 100644 index 0000000..eee5005 --- /dev/null +++ b/lib/product/package.js @@ -0,0 +1,5 @@ +class Package { + +} + +module.exports = Package diff --git a/lib/product/price-options.js b/lib/product/price-options.js new file mode 100644 index 0000000..71939bf --- /dev/null +++ b/lib/product/price-options.js @@ -0,0 +1,9 @@ +const mixinEffectiveDates = require('../mixin-effective-dates') + +const priceOptions = { + 'preconditions': null +} + +mixinEffectiveDates(priceOptions) + +module.exports = priceOptions diff --git a/lib/product/price.js b/lib/product/price.js new file mode 100644 index 0000000..0bfcbf8 --- /dev/null +++ b/lib/product/price.js @@ -0,0 +1,60 @@ +const mixinEffectiveDates = require('../mixin-effective-dates') +const ow = require('ow') +const priceOptions = require('./price-options') + +const DEFAULT_AMOUNT = 0 + +/** + * @classdesc + * Represents the amount of money that must be paid in order to purchase a + * good or service. + * + * • Pricing approaches + * • Price reductions: how to represent different types of price reduction + * + * @class Price + */ + +class Price { + /** + * Creates an instance of Price. + * @param {Money} amount - The amount of Money in a currency. + * @param {Object} [options=priceOptions] + * @param {RuleSet} [options.preconditions = null] - A RuleSet that determines + * or constrains pricing. + * @param {Date|null} [options.validFrom = Date.now()] - The date on which + * this price became effective. + * @param {Date|null} [options.validTo = null] - The date on which this price + * is no longer in-effect. + * @memberof Price + */ + + constructor (amount = DEFAULT_AMOUNT, options = priceOptions) { + ow(amount, ow.number) + this.amount = amount + this.preconditions = options.preconditions + mixinEffectiveDates(this) + this.validFrom = options.validFrom + this.validTo = options.validTo + } + + /** + * + * + * @param {RuleContext} ruleContext - The facts applied to a RuleSet. + * @param {Array.} ruleOverrides - Zero or more exceptions + * applied to the RuleSet that determines the amount. + * @returns {Boolean} - Whether or not a Price instance is valid for + * a given customer's context. + * @memberof Price + */ + + isValid (ruleContext, ruleOverrides) { + if (this.preconditions) { + return this.preconditions.evaluate(ruleContext, ruleOverrides) + } + return true + } +} + +module.exports = Price diff --git a/lib/product/pricing-strategy.js b/lib/product/pricing-strategy.js new file mode 100644 index 0000000..9d7f4ff --- /dev/null +++ b/lib/product/pricing-strategy.js @@ -0,0 +1,5 @@ +class PricingStrategy { + +} + +module.exports = PricingStrategy diff --git a/lib/product/product-catalog.js b/lib/product/product-catalog.js new file mode 100644 index 0000000..c246648 --- /dev/null +++ b/lib/product/product-catalog.js @@ -0,0 +1,5 @@ +class ProductCatalog { + +} + +module.exports = ProductCatalog diff --git a/lib/product/product-feature-instance.js b/lib/product/product-feature-instance.js new file mode 100644 index 0000000..e69de29 diff --git a/lib/product/product-feature-type.js b/lib/product/product-feature-type.js new file mode 100644 index 0000000..e69de29 diff --git a/lib/product/product-identifier.js b/lib/product/product-identifier.js new file mode 100644 index 0000000..e69de29 diff --git a/lib/product/product-instance.js b/lib/product/product-instance.js new file mode 100644 index 0000000..b8910e6 --- /dev/null +++ b/lib/product/product-instance.js @@ -0,0 +1,3 @@ +class ProductInstance {} + +module.exports = ProductInstance diff --git a/lib/product/product-relationship.js b/lib/product/product-relationship.js new file mode 100644 index 0000000..e69de29 diff --git a/lib/product/product-set.js b/lib/product/product-set.js new file mode 100644 index 0000000..e69de29 diff --git a/lib/product/product-type.js b/lib/product/product-type.js new file mode 100644 index 0000000..1832253 --- /dev/null +++ b/lib/product/product-type.js @@ -0,0 +1,21 @@ +const ow = require('ow') +const Price = require('./price') + +class ProductType { + constructor () { + // This.possiblePrices = [] + + Object.defineProperty(this, 'possiblePrices', { + enumerable: true, + get () { + return this.possiblePrices + }, + set (prices) { + ow(prices, ow.array.ofType(Price)) + this.possiblePrices = [...prices] + } + }) + } +} + +module.exports = ProductType diff --git a/lib/product/product.js b/lib/product/product.js new file mode 100644 index 0000000..e69de29 diff --git a/lib/product/proposition-of-inclusion.js b/lib/product/proposition-of-inclusion.js new file mode 100644 index 0000000..e69de29 diff --git a/lib/product/serial-number.js b/lib/product/serial-number.js new file mode 100644 index 0000000..e69de29 diff --git a/lib/product/service-delivery-status.js b/lib/product/service-delivery-status.js new file mode 100644 index 0000000..e69de29 diff --git a/lib/product/service-instance.js b/lib/product/service-instance.js new file mode 100644 index 0000000..e69de29 diff --git a/lib/product/service-type.js b/lib/product/service-type.js new file mode 100644 index 0000000..e69de29 diff --git a/lib/product/service.js b/lib/product/service.js new file mode 100644 index 0000000..e69de29 diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index 617f7bb..a93aaa2 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -368,31 +368,49 @@ "@types/yargs": "^12.0.9" } }, - "@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", - "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "@nodelib/fs.scandir": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.1.tgz", + "integrity": "sha512-NT/skIZjgotDSiXs0WqYhgcuBKhUMgfekCmCGtkUAiLqZdOnrdjmZr9wRl3ll64J9NF79uZ4fk16Dx0yMc/Xbg==", "dev": true, "requires": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" + "@nodelib/fs.stat": "2.0.1", + "run-parallel": "^1.1.9" + }, + "dependencies": { + "@nodelib/fs.stat": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", + "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==", + "dev": true + } } }, "@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", + "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==", "dev": true }, + "@nodelib/fs.walk": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.2.tgz", + "integrity": "sha512-J/DR3+W12uCzAJkw7niXDcqcKBg6+5G5Q/ZpThpGNzAUz70eOR6RV4XnnSN01qHZiVl0eavoxJsBypQoKsV2QQ==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.1", + "fastq": "^1.6.0" + } + }, "@octokit/endpoint": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.1.1.tgz", - "integrity": "sha512-kCv3ZyqFTWGYmvuU0TETzC4jPGzyLCJrjXp65kRe9DHyQULZak+dpwmEbT7M2rpdr/O2im8ivrPGT6J+2WsKNg==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.2.0.tgz", + "integrity": "sha512-g4r1MKr8GJ8qubJQp3HP3JrxDY+ZeVqjYBTgtu1lPEDLhfQDY6rOhyZOoHKOw+gaIF6aAcmuvPPNZUro2OwmOg==", "dev": true, "requires": { - "deepmerge": "3.2.0", + "deepmerge": "3.3.0", "is-plain-object": "^3.0.0", - "universal-user-agent": "^2.0.1", + "universal-user-agent": "^2.1.0", "url-template": "^2.0.8" }, "dependencies": { @@ -414,17 +432,18 @@ } }, "@octokit/request": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-3.0.2.tgz", - "integrity": "sha512-lBH2hf2Yuh9XlmP3MSpn3jL9DyCGG+cuPXDRQiJMK42BwW6xFhwWmG1k6xWykcLM4GwZG/5fuwcqnQXYG0ZTSg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-4.1.1.tgz", + "integrity": "sha512-LOyL0i3oxRo418EXRSJNk/3Q4I0/NKawTn6H/CQp+wnrG1UFLGu080gSsgnWobhPo5BpUNgSQ5BRk5FOOJhD1Q==", "dev": true, "requires": { "@octokit/endpoint": "^5.1.0", - "deprecation": "^1.0.1", + "@octokit/request-error": "^1.0.1", + "deprecation": "^2.0.0", "is-plain-object": "^3.0.0", "node-fetch": "^2.3.0", "once": "^1.4.0", - "universal-user-agent": "^2.0.1" + "universal-user-agent": "^2.1.0" }, "dependencies": { "is-plain-object": { @@ -444,17 +463,28 @@ } } }, + "@octokit/request-error": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.0.4.tgz", + "integrity": "sha512-L4JaJDXn8SGT+5G0uX79rZLv0MNJmfGa4vb4vy1NnpjSnWDLJRy6m90udGwvMmavwsStgbv2QNkPzzTCMmL+ig==", + "dev": true, + "requires": { + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, "@octokit/rest": { - "version": "16.25.3", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-16.25.3.tgz", - "integrity": "sha512-/6/Isn9pNoKUQwuWUaskxMC6kFxtXTHhzsgYbyirEQ3UvcLciHvPgtRTbuV3bbVf0x4+4WEfKaI9UzxmPQ3W3A==", + "version": "16.28.2", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-16.28.2.tgz", + "integrity": "sha512-csuYiHvJ1P/GFDadVn0QhwO83R1+YREjcwCY7ZIezB6aJTRIEidJZj+R7gAkUhT687cqYb4cXTZsDVu9F+Fmug==", "dev": true, "requires": { - "@octokit/request": "3.0.2", + "@octokit/request": "^4.0.1", + "@octokit/request-error": "^1.0.2", "atob-lite": "^2.0.0", "before-after-hook": "^1.4.0", "btoa-lite": "^1.0.0", - "deprecation": "^1.0.1", + "deprecation": "^2.0.0", "lodash.get": "^4.4.2", "lodash.set": "^4.3.2", "lodash.uniq": "^4.5.0", @@ -474,29 +504,75 @@ } }, "@semantic-release/changelog": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@semantic-release/changelog/-/changelog-3.0.2.tgz", - "integrity": "sha512-pDUaBNAuPAqQ+ArHwvR160RG2LbfyIVz9EJXgxH0V547rlx/hCs0Sp7L4Rtzi5Z+d6CHcv9g2ynxplE1xAzp2g==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@semantic-release/changelog/-/changelog-3.0.4.tgz", + "integrity": "sha512-UqEPahcZSW0IKtzOglyjeEZCN99ku6Wb/yH/iOKEBJ7Vkw0/+Fc3VRiGoXTkMfHSFUJk+4UkoQKTlYuwf61C2w==", "dev": true, "requires": { "@semantic-release/error": "^2.1.0", - "aggregate-error": "^2.0.0", - "fs-extra": "^7.0.0", + "aggregate-error": "^3.0.0", + "fs-extra": "^8.0.0", "lodash": "^4.17.4" + }, + "dependencies": { + "aggregate-error": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.0.tgz", + "integrity": "sha512-yKD9kEoJIR+2IFqhMwayIBgheLYbB3PS2OBhWae1L/ODTd/JF/30cW0bc9TqzRL3k4U41Dieu3BF4I29p8xesA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^3.2.0" + } + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "graceful-fs": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.0.tgz", + "integrity": "sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==", + "dev": true + } } }, "@semantic-release/commit-analyzer": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@semantic-release/commit-analyzer/-/commit-analyzer-6.1.0.tgz", - "integrity": "sha512-2lb+t6muGenI86mYGpZYOgITx9L3oZYF697tJoqXeQEk0uw0fm+OkkOuDTBA3Oax9ftoNIrCKv9bwgYvxrbM6w==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@semantic-release/commit-analyzer/-/commit-analyzer-6.2.0.tgz", + "integrity": "sha512-oUtPydYcbtJsEY6WCPi4wynTgRecK5zCkKaGmHi+9Xl7d6jGf7LomnJCg++6dNF1tyavrbGMSdXTCPH6Dx9LbA==", "dev": true, "requires": { "conventional-changelog-angular": "^5.0.0", "conventional-commits-filter": "^2.0.0", "conventional-commits-parser": "^3.0.0", "debug": "^4.0.0", - "import-from": "^2.1.0", + "import-from": "^3.0.0", "lodash": "^4.17.4" + }, + "dependencies": { + "import-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-3.0.0.tgz", + "integrity": "sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==", + "dev": true, + "requires": { + "resolve-from": "^5.0.0" + } + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + } } }, "@semantic-release/error": { @@ -506,77 +582,259 @@ "dev": true }, "@semantic-release/git": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/@semantic-release/git/-/git-7.0.8.tgz", - "integrity": "sha512-sA+XoPU6GrV+A4YswO0b5JWL1KbzmyyaqUK6Y2poDkIVPlj+oQdi/stpKz/bKF5z9ChMGP87OVPMeUyXGaNFtw==", + "version": "7.0.16", + "resolved": "https://registry.npmjs.org/@semantic-release/git/-/git-7.0.16.tgz", + "integrity": "sha512-Bw/npxTVTeFPnQZmuczWRGRdxqJpWOOFZENx38ykyp42InwDFm4n72bfcCwmP/J4WqkPmMR4p+IracWruz/RUw==", "dev": true, "requires": { "@semantic-release/error": "^2.1.0", - "aggregate-error": "^2.0.0", + "aggregate-error": "^3.0.0", "debug": "^4.0.0", - "dir-glob": "^2.0.0", + "dir-glob": "^3.0.0", "execa": "^1.0.0", - "fs-extra": "^7.0.0", - "globby": "^9.0.0", + "fs-extra": "^8.0.0", + "globby": "^10.0.0", "lodash": "^4.17.4", - "micromatch": "^3.1.4", - "p-reduce": "^1.0.0" + "micromatch": "^4.0.0", + "p-reduce": "^2.0.0" + }, + "dependencies": { + "@nodelib/fs.stat": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", + "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==", + "dev": true + }, + "aggregate-error": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.0.tgz", + "integrity": "sha512-yKD9kEoJIR+2IFqhMwayIBgheLYbB3PS2OBhWae1L/ODTd/JF/30cW0bc9TqzRL3k4U41Dieu3BF4I29p8xesA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^3.2.0" + } + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "requires": { + "path-type": "^4.0.0" + } + }, + "fast-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.0.4.tgz", + "integrity": "sha512-wkIbV6qg37xTJwqSsdnIphL1e+LaGz4AIQqr00mIubMaEhv1/HEmJ0uuCGZRNRUkZZmOB5mJKO0ZUTVq+SxMQg==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.1", + "@nodelib/fs.walk": "^1.2.1", + "glob-parent": "^5.0.0", + "is-glob": "^4.0.1", + "merge2": "^1.2.3", + "micromatch": "^4.0.2" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "glob-parent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", + "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "globby": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.1.tgz", + "integrity": "sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" + } + }, + "graceful-fs": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.0.tgz", + "integrity": "sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==", + "dev": true + }, + "ignore": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.2.tgz", + "integrity": "sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "p-reduce": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz", + "integrity": "sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==", + "dev": true + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } } }, "@semantic-release/github": { - "version": "5.2.10", - "resolved": "https://registry.npmjs.org/@semantic-release/github/-/github-5.2.10.tgz", - "integrity": "sha512-z/UwIxKb+EMiJDIy/57MBzJ80ar5H9GJQRyML/ILQ8dlrPwXs7cTyTvC7AesrF7t1mJZtg3ht9Qf9RdtR/LGzw==", + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/@semantic-release/github/-/github-5.4.2.tgz", + "integrity": "sha512-8gkOa5tED/+sjAPwZRYsLaGr6VuAGLZinSvLsuF9/l4qLeYV8gvj7fhjFJepGu6y31t7PR2J9SWzmsqsBAyyKQ==", "dev": true, "requires": { - "@octokit/rest": "^16.13.1", + "@octokit/rest": "^16.27.0", "@semantic-release/error": "^2.2.0", - "aggregate-error": "^2.0.0", - "bottleneck": "^2.0.1", + "aggregate-error": "^3.0.0", + "bottleneck": "^2.18.1", "debug": "^4.0.0", - "dir-glob": "^2.0.0", - "fs-extra": "^7.0.0", - "globby": "^9.0.0", + "dir-glob": "^3.0.0", + "fs-extra": "^8.0.0", + "globby": "^10.0.0", "http-proxy-agent": "^2.1.0", "https-proxy-agent": "^2.2.1", - "issue-parser": "^3.0.0", + "issue-parser": "^4.0.0", "lodash": "^4.17.4", - "mime": "^2.0.3", - "p-filter": "^1.0.0", - "p-retry": "^3.0.0", + "mime": "^2.4.3", + "p-filter": "^2.0.0", + "p-retry": "^4.0.0", "parse-github-url": "^1.0.1", "url-join": "^4.0.0" + }, + "dependencies": { + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "graceful-fs": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.0.tgz", + "integrity": "sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==", + "dev": true + } } }, "@semantic-release/npm": { - "version": "5.1.7", - "resolved": "https://registry.npmjs.org/@semantic-release/npm/-/npm-5.1.7.tgz", - "integrity": "sha512-4THiFGp9APX1a+EJJsOYurJCR8TrRUgNCU9u46AkZekWfvtyzacfIBKCrmEljpYG8qDDnHLZwHSqyW4ID4iteA==", + "version": "5.1.13", + "resolved": "https://registry.npmjs.org/@semantic-release/npm/-/npm-5.1.13.tgz", + "integrity": "sha512-pONvpoEtGH1nd6Wj3SryACNJ/YXXsvSSekE9Pdk6mnaRv7lGhXdaeJJr6Lr4L8WK98oZv4aJOr68vTac2Oc+dA==", "dev": true, "requires": { "@semantic-release/error": "^2.2.0", "aggregate-error": "^3.0.0", "execa": "^1.0.0", - "fs-extra": "^7.0.0", + "fs-extra": "^8.0.0", "lodash": "^4.17.4", "nerf-dart": "^1.0.0", "normalize-url": "^4.0.0", "npm": "^6.8.0", "rc": "^1.2.8", "read-pkg": "^5.0.0", - "registry-auth-token": "^3.3.1" + "registry-auth-token": "^4.0.0" }, "dependencies": { - "aggregate-error": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.0.tgz", - "integrity": "sha512-yKD9kEoJIR+2IFqhMwayIBgheLYbB3PS2OBhWae1L/ODTd/JF/30cW0bc9TqzRL3k4U41Dieu3BF4I29p8xesA==", + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", "dev": true, "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^3.2.0" + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" } }, + "graceful-fs": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.0.tgz", + "integrity": "sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==", + "dev": true + }, "read-pkg": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.1.1.tgz", @@ -592,9 +850,9 @@ } }, "@semantic-release/release-notes-generator": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/@semantic-release/release-notes-generator/-/release-notes-generator-7.1.4.tgz", - "integrity": "sha512-pWPouZujddgb6t61t9iA9G3yIfp3TeQ7bPbV1ixYSeP6L7gI1+Du82fY/OHfEwyifpymLUQW0XnIKgKct5IMMw==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/@semantic-release/release-notes-generator/-/release-notes-generator-7.2.1.tgz", + "integrity": "sha512-TdlYgYH6amhE80i9L9HPcTwYzk4Rma7qM1g7XJEEfip7dNXWgmrBeibN4DJmTg/qrUFDd4GD86lFDcYXNZDNow==", "dev": true, "requires": { "conventional-changelog-angular": "^5.0.0", @@ -602,16 +860,114 @@ "conventional-commits-filter": "^2.0.0", "conventional-commits-parser": "^3.0.0", "debug": "^4.0.0", - "get-stream": "^4.0.0", - "import-from": "^2.1.0", - "into-stream": "^4.0.0", - "lodash": "^4.17.4" + "get-stream": "^5.0.0", + "import-from": "^3.0.0", + "into-stream": "^5.0.0", + "lodash": "^4.17.4", + "read-pkg-up": "^6.0.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "get-stream": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", + "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "read-pkg": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.1.1.tgz", + "integrity": "sha512-dFcTLQi6BZ+aFUaICg7er+/usEoqFdQxiEBsEMNGoipenihtxxtdrQuBXvyANCEI8VuUIVYFgeHGx9sLLvim4w==", + "dev": true, + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^4.0.0", + "type-fest": "^0.4.1" + }, + "dependencies": { + "type-fest": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.4.1.tgz", + "integrity": "sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw==", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-6.0.0.tgz", + "integrity": "sha512-odtTvLl+EXo1eTsMnoUHRmg/XmXdTkwXVxy4VFE9Kp6cCq7b3l7QMdBndND3eAFzrbSAXC/WCUOQQ9rLjifKZw==", + "dev": true, + "requires": { + "find-up": "^4.0.0", + "read-pkg": "^5.1.1", + "type-fest": "^0.5.0" + } + }, + "type-fest": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.5.2.tgz", + "integrity": "sha512-DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw==", + "dev": true + } } }, "@sindresorhus/is": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.16.0.tgz", - "integrity": "sha512-QjJQRRsPoIBbvI0IFiY1NehCRgyw7BNobGVO9FSuMoX7OocwUMbsjXYFneoYT8XJbiXAEJvPvrj9eEb4ZMa84A==" + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-1.0.0.tgz", + "integrity": "sha512-3rlOB53XCVO7LfjXFx4bCGrZPPjkgYD7pP0E/yo4d57H32aYqD/QNmeXcVnx7CM5SxGScwl2P0b1kCDYZgNWqw==" }, "@types/babel__core": { "version": "7.1.1", @@ -736,6 +1092,12 @@ "@types/node": "*" } }, + "@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, "@types/stack-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", @@ -775,6 +1137,194 @@ "integrity": "sha512-SOhuU4wNBxhhTHxYaiG5NY4HBhDIDnJF60GU+2LqHAdKKer86//e4yg69aENCtQ04n0ovz+tq2YPME5t5yp4pw==", "dev": true }, + "@webassemblyjs/ast": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", + "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", + "dev": true, + "requires": { + "@webassemblyjs/helper-module-context": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/wast-parser": "1.8.5" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", + "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", + "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", + "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==", + "dev": true + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", + "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.8.5" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", + "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==", + "dev": true + }, + "@webassemblyjs/helper-module-context": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", + "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "mamacro": "^0.0.3" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", + "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", + "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", + "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", + "dev": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", + "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", + "dev": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", + "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", + "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/helper-wasm-section": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5", + "@webassemblyjs/wasm-opt": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5", + "@webassemblyjs/wast-printer": "1.8.5" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", + "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/ieee754": "1.8.5", + "@webassemblyjs/leb128": "1.8.5", + "@webassemblyjs/utf8": "1.8.5" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", + "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", + "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-api-error": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/ieee754": "1.8.5", + "@webassemblyjs/leb128": "1.8.5", + "@webassemblyjs/utf8": "1.8.5" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", + "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/floating-point-hex-parser": "1.8.5", + "@webassemblyjs/helper-api-error": "1.8.5", + "@webassemblyjs/helper-code-frame": "1.8.5", + "@webassemblyjs/helper-fsm": "1.8.5", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", + "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/wast-parser": "1.8.5", + "@xtuc/long": "4.2.2" + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, "JSONStream": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", @@ -797,6 +1347,12 @@ "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", "dev": true }, + "acorn-dynamic-import": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz", + "integrity": "sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw==", + "dev": true + }, "acorn-globals": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.2.tgz", @@ -820,22 +1376,22 @@ "dev": true }, "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", "dev": true, "requires": { "es6-promisify": "^5.0.0" } }, "aggregate-error": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-2.2.0.tgz", - "integrity": "sha512-E5n+IZkhh22/pFdUvHUU/o9z752lc+7tgHt+FXS/g6BjlbE9249dGmuS/SxIWMPhTljZJkFN+7OXE0+O5+WT8w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.0.tgz", + "integrity": "sha512-yKD9kEoJIR+2IFqhMwayIBgheLYbB3PS2OBhWae1L/ODTd/JF/30cW0bc9TqzRL3k4U41Dieu3BF4I29p8xesA==", "dev": true, "requires": { "clean-stack": "^2.0.0", - "indent-string": "^3.0.0" + "indent-string": "^3.2.0" } }, "ajv": { @@ -850,6 +1406,12 @@ "uri-js": "^4.2.2" } }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "dev": true + }, "ajv-keywords": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", @@ -857,16 +1419,17 @@ "dev": true }, "all-contributors-cli": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/all-contributors-cli/-/all-contributors-cli-6.4.0.tgz", - "integrity": "sha512-VyRqp7GnINHrcJ37y+gT554xoKzjTQy7P/rEXXDEEjWsIcrEjqW7/zI9KhzfG/sTKr5aDFo7qvXg/UiMhTYgIA==", + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/all-contributors-cli/-/all-contributors-cli-6.7.0.tgz", + "integrity": "sha512-MjlXxNkHPy/ZUNgJhRf0p4HSfrigsvmlHVafVHDPk0Uzk69PZRP2T4uFgBYLFXJen+qfpZkMc9S0CZaYIzmwoQ==", "dev": true, "requires": { "@babel/runtime": "^7.2.0", - "async": "^2.0.0-rc.1", + "async": "^3.0.1", "chalk": "^2.3.0", "didyoumean": "^1.2.1", "inquirer": "^6.2.1", + "json-fixer": "^1.3.1-0", "lodash": "^4.11.2", "pify": "^4.0.1", "request": "^2.72.0", @@ -939,6 +1502,12 @@ "normalize-path": "^2.1.1" } }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -954,6 +1523,16 @@ "integrity": "sha1-oMoMvCmltz6Dbuvhy/bF4OTrgvk=", "dev": true }, + "aria-query": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-3.0.0.tgz", + "integrity": "sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=", + "dev": true, + "requires": { + "ast-types-flow": "0.0.7", + "commander": "^2.11.0" + } + }, "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", @@ -984,6 +1563,12 @@ "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", "dev": true }, + "array-find": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-find/-/array-find-1.0.0.tgz", + "integrity": "sha1-bI4obRHtdoMn+OYuzuhzU8o+eLg=", + "dev": true + }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -1048,6 +1633,44 @@ "safer-buffer": "~2.1.0" } }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dev": true, + "requires": { + "object-assign": "^4.1.1", + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", @@ -1060,6 +1683,12 @@ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", "dev": true }, + "ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=", + "dev": true + }, "astral-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", @@ -1067,13 +1696,16 @@ "dev": true }, "async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", - "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", - "dev": true, - "requires": { - "lodash": "^4.17.11" - } + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/async/-/async-3.1.0.tgz", + "integrity": "sha512-4vx/aaY6j/j3Lw3fbCHNWP0pPaTCew3F6F3hYyl/tHs/ndmV1q7NW9T5yuJ2XAGwdQrP+6Wu20x06U4APo/iQQ==", + "dev": true + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true }, "async-limiter": { "version": "1.0.0", @@ -1119,6 +1751,15 @@ "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", "dev": true }, + "axobject-query": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.0.2.tgz", + "integrity": "sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww==", + "dev": true, + "requires": { + "ast-types-flow": "0.0.7" + } + }, "babel-code-frame": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", @@ -1388,6 +2029,18 @@ "integrity": "sha512-2mSRSThIIIM/RLatcrFRfTJ6tKNGV8vzSLmM/2hWOwDZWtsyG9WttrQpzmA/izCcqxL0o8DpKfjlAxq8fuaHSw==", "dev": true }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, "bl": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", @@ -1404,10 +2057,16 @@ "integrity": "sha512-FG+nFEZChJrbQ9tIccIfZJBz3J7mLrAhxakAbnrJWn8d7aKOC+LWifa0G+p4ZqKp4y13T7juYvdhq9NzKdsrjw==", "dev": true }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, "bottleneck": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.18.0.tgz", - "integrity": "sha512-U1xiBRaokw4yEguzikOl0VrnZp6uekjpmfrh6rKtr1D+/jFjYCL6J83ZXlGtlBDwVdTmJJ+4Lg5FpB3xmLSiyA==", + "version": "2.19.2", + "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.2.tgz", + "integrity": "sha512-19LN3Gz1m26S/M4aFyaGfMLIUoVsVDSW3H2anKvR/ijh2c6/3lRzhXn3xUPnPlqVsEwfvhMbMoqz9BpawJcXsg==", "dev": true }, "brace-expansion": { @@ -1449,6 +2108,12 @@ } } }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, "browser-process-hrtime": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", @@ -1478,6 +2143,77 @@ "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", "dev": true }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "dev": true, + "requires": { + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "requires": { + "pako": "~1.0.5" + } + }, "bser": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/bser/-/bser-2.0.0.tgz", @@ -1537,12 +2273,69 @@ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "dev": true }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, "builtin-modules": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz", "integrity": "sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw==", "dev": true }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "cacache": { + "version": "11.3.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.3.tgz", + "integrity": "sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA==", + "dev": true, + "requires": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + }, + "dependencies": { + "bluebird": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", + "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==", + "dev": true + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "yallist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true + } + } + }, "cache-base": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", @@ -1615,12 +2408,6 @@ "integrity": "sha512-xGBpPqoBvn3unBW7oxgb8aJn42K0m9m1/wyjmazah10Fq7bROGG3kRAE6OIyr3U3PIJUqGuebhCEdMk9OKJG0A==", "dev": true }, - "call-me-maybe": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", - "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", - "dev": true - }, "caller-callsite": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", @@ -1778,12 +2565,86 @@ "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", "dev": true }, + "chokidar": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.6.tgz", + "integrity": "sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "dependencies": { + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + } + } + }, + "chownr": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.2.tgz", + "integrity": "sha512-GkfeAQh+QNy3wquu9oIZr6SS5x7wGdSgNQvD10X3r+AZr1Oys22HW8kAmDMvNg2+Dm0TeGaEuO8gFwdBXxwO8A==", + "dev": true + }, + "chrome-trace-event": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", + "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, "ci-info": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", "dev": true }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "circular-json": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", @@ -2046,6 +2907,17 @@ "strip-json-comments": "2.0.1" }, "dependencies": { + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, "glob": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", @@ -2146,6 +3018,12 @@ } } }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, "compare-func": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-1.3.2.tgz", @@ -2190,6 +3068,21 @@ "proto-list": "~1.2.1" } }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "requires": { + "date-now": "^0.1.4" + } + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, "contains-path": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", @@ -2273,6 +3166,20 @@ "safe-buffer": "~5.1.1" } }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", @@ -2286,14 +3193,14 @@ "dev": true }, "cosmiconfig": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.0.tgz", - "integrity": "sha512-nxt+Nfc3JAqf4WIWd0jXLjTJZmsPLrA9DDc4nRw2KFJQJK7DNooqSXrNI7tzLG50CF8axczly5UV929tBmh/7g==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", "dev": true, "requires": { "import-fresh": "^2.0.0", "is-directory": "^0.3.1", - "js-yaml": "^3.13.0", + "js-yaml": "^3.13.1", "parse-json": "^4.0.0" }, "dependencies": { @@ -2319,9 +3226,9 @@ } }, "coveralls": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.3.tgz", - "integrity": "sha512-viNfeGlda2zJr8Gj1zqXpDMRjw9uM54p7wzZdvLRyOgnAfCe974Dq4veZkjJdxQXbmdppu6flEajFYseHYaUhg==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.4.tgz", + "integrity": "sha512-eyqUWA/7RT0JagiL0tThVhjbIjoiEUyWCjtUJoOPcWoeofP5WK/jb2OJYoBFrR6DvplR+AxOyuBqk4JHkk5ykA==", "dev": true, "requires": { "growl": "~> 1.10.0", @@ -2340,6 +3247,43 @@ } } }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, "cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", @@ -2352,6 +3296,25 @@ "which": "^1.2.9" } }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, "cssom": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.6.tgz", @@ -2376,6 +3339,12 @@ "array-find-index": "^1.0.1" } }, + "cyclist": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", + "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", + "dev": true + }, "cz-conventional-changelog": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/cz-conventional-changelog/-/cz-conventional-changelog-2.1.0.tgz", @@ -2398,6 +3367,12 @@ "es5-ext": "^0.10.9" } }, + "damerau-levenshtein": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.5.tgz", + "integrity": "sha512-CBCRqFnpu715iPmw1KrdOrzRqbdFwQTwAWyyyYS42+iAgHCuXZ+/TdMgQkUENPomxEz9z1BEzuQU2Xw0kUuAgA==", + "dev": true + }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", @@ -2437,6 +3412,12 @@ "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==", "dev": true }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, "dateformat": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", @@ -2645,9 +3626,9 @@ "dev": true }, "deepmerge": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-3.2.0.tgz", - "integrity": "sha512-6+LuZGU7QCNUnAJyX8cIrlzoEgggTM6B7mm+znKOX4t5ltluT9KLjN6g61ECMS0LTsLW7yDpNoxhix5FZcrIow==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-3.3.0.tgz", + "integrity": "sha512-GRQOafGHwMHpjPx9iCvTgpu9NojZ49q794EEL94JVEw6VaeA8XTUyBKvAkOOjBX9oJNiV6G3P+T+tihFjo2TqA==", "dev": true }, "define-properties": { @@ -2701,17 +3682,18 @@ } }, "del": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", - "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", + "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", "dev": true, "requires": { + "@types/glob": "^7.1.1", "globby": "^6.1.0", - "is-path-cwd": "^1.0.0", - "is-path-in-cwd": "^1.0.0", - "p-map": "^1.1.1", - "pify": "^3.0.0", - "rimraf": "^2.2.8" + "is-path-cwd": "^2.0.0", + "is-path-in-cwd": "^2.0.0", + "p-map": "^2.0.0", + "pify": "^4.0.1", + "rimraf": "^2.6.3" }, "dependencies": { "globby": { @@ -2734,6 +3716,12 @@ "dev": true } } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true } } }, @@ -2744,11 +3732,21 @@ "dev": true }, "deprecation": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-1.0.1.tgz", - "integrity": "sha512-ccVHpE72+tcIKaGMql33x5MAjKQIZrk+3x2GbJ7TeraUCZWHoT+KSZpoC+JQFsUBlSTXUrBaGiF0j6zVTepPLg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", "dev": true }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, "detect-file": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", @@ -2791,13 +3789,32 @@ "integrity": "sha512-xLqpez+Zj9GKSnPWS0WZw1igGocZ+uua8+y+5dDNTT934N3QuY1sp2LkHzwiaYQGz60hMq0pjAshdeXm5VUOEw==", "dev": true }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, "dir-glob": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", - "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dev": true, "requires": { - "path-type": "^3.0.0" + "path-type": "^4.0.0" + }, + "dependencies": { + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + } } }, "doctrine": { @@ -2809,6 +3826,12 @@ "esutils": "^2.0.2" } }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, "domexception": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", @@ -2897,6 +3920,18 @@ "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", "dev": true }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, "ecc-jsbn": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", @@ -2913,12 +3948,33 @@ "integrity": "sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=", "dev": true }, + "elliptic": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.0.tgz", + "integrity": "sha512-eFOJTMyCYb7xtE/caJ6JJu+bhi67WCYNbkGSknu20pmM8Ke/bqOfdnZWxyoGN26JgfxTbXrsCkEw4KheCT/KGg==", + "dev": true, + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true + }, "end-of-stream": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", @@ -2928,6 +3984,17 @@ "once": "^1.4.0" } }, + "enhanced-resolve": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-0.9.1.tgz", + "integrity": "sha1-TW5omzcl+GCQknzMhs2fFjW4ni4=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.2.0", + "tapable": "^0.1.8" + } + }, "entities": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", @@ -2987,13 +4054,22 @@ } }, "env-ci": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/env-ci/-/env-ci-3.2.0.tgz", - "integrity": "sha512-TFjNiDlXrL8/pfHswdvJGEZzJcq3aBPb8Eka83hlGLwuNw9F9BC9S9ETlkfkItLRT9k5JgpGgeP+rL6/3cEbcw==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/env-ci/-/env-ci-4.1.1.tgz", + "integrity": "sha512-eTgpkALDeYRGNhYM2fO9LKsWDifoUgKL7hxpPZqFMP2IU7f+r89DtKqCmk3yQB/jxS8CmZTfKnWO5TiIDFs9Hw==", "dev": true, "requires": { "execa": "^1.0.0", - "java-properties": "^0.2.9" + "java-properties": "^1.0.0" + } + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "requires": { + "prr": "~1.0.1" } }, "error-ex": { @@ -3067,9 +4143,9 @@ } }, "es6-promise": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.6.tgz", - "integrity": "sha512-aRVgGdnmW2OiySVPUC9e6m+plolMAJKjZnQlCwNSuK5yQ0JN61DZSO1X1Ufd1foqWRAlig0rhduTCHe7sVtK5Q==", + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", "dev": true }, "es6-promisify": { @@ -3163,13 +4239,13 @@ } }, "eslint": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz", - "integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.0.1.tgz", + "integrity": "sha512-DyQRaMmORQ+JsWShYsSg4OPTjY56u1nCjAmICrE8vLWqyLKxhFXOthwMj1SA8xwfrv0CofLNVnqbfyhwCkaO0w==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "ajv": "^6.9.1", + "ajv": "^6.10.0", "chalk": "^2.1.0", "cross-spawn": "^6.0.5", "debug": "^4.0.1", @@ -3177,18 +4253,19 @@ "eslint-scope": "^4.0.3", "eslint-utils": "^1.3.1", "eslint-visitor-keys": "^1.0.0", - "espree": "^5.0.1", + "espree": "^6.0.0", "esquery": "^1.0.1", "esutils": "^2.0.2", "file-entry-cache": "^5.0.1", "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", + "glob-parent": "^3.1.0", "globals": "^11.7.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "inquirer": "^6.2.2", - "js-yaml": "^3.13.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.3.0", "lodash": "^4.17.11", @@ -3196,7 +4273,6 @@ "mkdirp": "^0.5.1", "natural-compare": "^1.4.0", "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", "progress": "^2.0.0", "regexpp": "^2.0.1", "semver": "^5.5.1", @@ -3206,6 +4282,27 @@ "text-table": "^0.2.0" }, "dependencies": { + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", @@ -3227,10 +4324,133 @@ "lodash.zip": "^4.2.0" } }, + "eslint-config-kentcdodds": { + "version": "14.3.3", + "resolved": "https://registry.npmjs.org/eslint-config-kentcdodds/-/eslint-config-kentcdodds-14.3.3.tgz", + "integrity": "sha512-EEvIWPePcGZB0+LmJT3kabzJ+30sWok14Bz2ODzRJvLsrqzP6pGi6U2BLlhiKF2C8VXvnlUh8zbmJSoIHewP2w==", + "dev": true, + "requires": { + "babel-eslint": "^10.0.1", + "eslint-config-prettier": "^4.3.0", + "eslint-import-resolver-webpack": "^0.11.1", + "eslint-plugin-babel": "^5.3.0", + "eslint-plugin-import": "^2.17.1", + "eslint-plugin-jest": "^22.4.1", + "eslint-plugin-jsx-a11y": "^6.2.1", + "eslint-plugin-react": "^7.13.0", + "eslint-plugin-react-hooks": "^1.6.0", + "read-pkg-up": "^6.0.0", + "semver": "^6.1.1", + "webpack": "^4.33.0" + }, + "dependencies": { + "eslint-config-prettier": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-4.3.0.tgz", + "integrity": "sha512-sZwhSTHVVz78+kYD3t5pCWSYEdVSBR0PXnwjDRsUs8ytIrK8PLXw+6FKp8r3Z7rx4ZszdetWlXYKOHoUrrwPlA==", + "dev": true, + "requires": { + "get-stdin": "^6.0.0" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "read-pkg": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.1.1.tgz", + "integrity": "sha512-dFcTLQi6BZ+aFUaICg7er+/usEoqFdQxiEBsEMNGoipenihtxxtdrQuBXvyANCEI8VuUIVYFgeHGx9sLLvim4w==", + "dev": true, + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^4.0.0", + "type-fest": "^0.4.1" + }, + "dependencies": { + "type-fest": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.4.1.tgz", + "integrity": "sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw==", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-6.0.0.tgz", + "integrity": "sha512-odtTvLl+EXo1eTsMnoUHRmg/XmXdTkwXVxy4VFE9Kp6cCq7b3l7QMdBndND3eAFzrbSAXC/WCUOQQ9rLjifKZw==", + "dev": true, + "requires": { + "find-up": "^4.0.0", + "read-pkg": "^5.1.1", + "type-fest": "^0.5.0" + } + }, + "semver": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.2.0.tgz", + "integrity": "sha512-jdFC1VdUGT/2Scgbimf7FSx9iJLXoqfglSF+gJeuNWVpiE37OIbc1jywR/GJyFdz3mnkz2/id0L0J/cr0izR5A==", + "dev": true + }, + "type-fest": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.5.2.tgz", + "integrity": "sha512-DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw==", + "dev": true + } + } + }, "eslint-config-prettier": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-4.2.0.tgz", - "integrity": "sha512-y0uWc/FRfrHhpPZCYflWC8aE0KRJRY04rdZVfl8cL3sEZmOYyaBdhdlQPjKZBnuRMyLVK+JUZr7HaZFClQiH4w==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.0.0.tgz", + "integrity": "sha512-vDrcCFE3+2ixNT5H83g28bO/uYAwibJxerXPj+E7op4qzBCsAV36QfvdAyVOoNxKAH2Os/e01T/2x++V0LPukA==", "dev": true, "requires": { "get-stdin": "^6.0.0" @@ -3548,6 +4768,41 @@ } } }, + "eslint-import-resolver-webpack": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-webpack/-/eslint-import-resolver-webpack-0.11.1.tgz", + "integrity": "sha512-eK3zR7xVQR/MaoBWwGuD+CULYVuqe5QFlDukman71aI6IboCGzggDUohHNfu1ZeBnbHcUHJc0ywWoXUBNB6qdg==", + "dev": true, + "requires": { + "array-find": "^1.0.0", + "debug": "^2.6.8", + "enhanced-resolve": "~0.9.0", + "find-root": "^1.1.0", + "has": "^1.0.1", + "interpret": "^1.0.0", + "lodash": "^4.17.4", + "node-libs-browser": "^1.0.0 || ^2.0.0", + "resolve": "^1.10.0", + "semver": "^5.3.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, "eslint-module-utils": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.4.0.tgz", @@ -3575,6 +4830,15 @@ } } }, + "eslint-plugin-babel": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-babel/-/eslint-plugin-babel-5.3.0.tgz", + "integrity": "sha512-HPuNzSPE75O+SnxHIafbW5QB45r2w78fxqwK3HmjqIUoPfPzVrq6rD+CINU3yzoDSzEhUkX07VUphbF73Lth/w==", + "dev": true, + "requires": { + "eslint-rule-composer": "^0.3.0" + } + }, "eslint-plugin-es": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-1.4.0.tgz", @@ -3586,9 +4850,9 @@ } }, "eslint-plugin-import": { - "version": "2.17.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.17.2.tgz", - "integrity": "sha512-m+cSVxM7oLsIpmwNn2WXTJoReOF9f/CtLMo7qOVmKd1KntBy0hEcuNZ3erTmWjx+DxRO0Zcrm5KwAvI9wHcV5g==", + "version": "2.18.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.18.0.tgz", + "integrity": "sha512-PZpAEC4gj/6DEMMoU2Df01C5c50r7zdGIN52Yfi7CvvWaYssG7Jt5R9nFG5gmqodxNOz9vQS87xk6Izdtpdrig==", "dev": true, "requires": { "array-includes": "^3.0.3", @@ -3601,7 +4865,7 @@ "lodash": "^4.17.11", "minimatch": "^3.0.4", "read-pkg-up": "^2.0.0", - "resolve": "^1.10.0" + "resolve": "^1.11.0" }, "dependencies": { "debug": { @@ -3685,9 +4949,24 @@ "find-up": "^2.0.0", "read-pkg": "^2.0.0" } + }, + "resolve": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.1.tgz", + "integrity": "sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } } } }, + "eslint-plugin-jest": { + "version": "22.7.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-22.7.2.tgz", + "integrity": "sha512-Aecqe3ulBVI7amgOycVI8ZPL8o0SnGHOf3zn2/Ciu8TXyXDHcjtwD3hOs3ss/Qh/VAwlW/DMcuiXg5btgF+XMA==", + "dev": true + }, "eslint-plugin-json": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/eslint-plugin-json/-/eslint-plugin-json-1.4.0.tgz", @@ -3697,6 +4976,34 @@ "vscode-json-languageservice": "^3.2.1" } }, + "eslint-plugin-jsx-a11y": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.2.3.tgz", + "integrity": "sha512-CawzfGt9w83tyuVekn0GDPU9ytYtxyxyFZ3aSWROmnRRFQFT2BiPJd7jvRdzNDi6oLWaS2asMeYSNMjWTV4eNg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.4.5", + "aria-query": "^3.0.0", + "array-includes": "^3.0.3", + "ast-types-flow": "^0.0.7", + "axobject-query": "^2.0.2", + "damerau-levenshtein": "^1.0.4", + "emoji-regex": "^7.0.2", + "has": "^1.0.3", + "jsx-ast-utils": "^2.2.1" + }, + "dependencies": { + "@babel/runtime": { + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.5.1.tgz", + "integrity": "sha512-g+hmPKs16iewFSmW57NkH9xpPkuYD1RV3UE2BCkXx9j+nhhRb9hsiSxPmEa67j35IecTQdn4iyMtHMbt5VoREg==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.2" + } + } + } + }, "eslint-plugin-no-unsafe-innerhtml": { "version": "1.0.16", "resolved": "https://registry.npmjs.org/eslint-plugin-no-unsafe-innerhtml/-/eslint-plugin-no-unsafe-innerhtml-1.0.16.tgz", @@ -4064,9 +5371,9 @@ "dev": true }, "eslint-plugin-node": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-9.0.1.tgz", - "integrity": "sha512-fljT5Uyy3lkJzuqhxrYanLSsvaILs9I7CmQ31atTtZ0DoIzRbbvInBh4cQ1CrthFHInHYBQxfPmPt6KLHXNXdw==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-9.1.0.tgz", + "integrity": "sha512-ZwQYGm6EoV2cfLpE1wxJWsfnKUIXfM/KM09/TlorkukgCAwmkgajEJnPCmyzoFPQQkmvo5DrW/nyKutNIw36Mw==", "dev": true, "requires": { "eslint-plugin-es": "^1.4.0", @@ -4074,36 +5381,70 @@ "ignore": "^5.1.1", "minimatch": "^3.0.4", "resolve": "^1.10.1", - "semver": "^6.0.0" + "semver": "^6.1.0" }, "dependencies": { "ignore": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.1.tgz", - "integrity": "sha512-DWjnQIFLenVrwyRCKZT+7a7/U4Cqgar4WG8V++K3hw+lrW1hc/SIwdiGmtxKCVACmHULTuGeBbHJmbwW7/sAvA==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.2.tgz", + "integrity": "sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ==", "dev": true }, "semver": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.0.0.tgz", - "integrity": "sha512-0UewU+9rFapKFnlbirLi3byoOuhrSsli/z/ihNnvM24vgF+8sNBiI1LZPBSH9wJKUwaUbw+s3hToDLCXkrghrQ==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.2.0.tgz", + "integrity": "sha512-jdFC1VdUGT/2Scgbimf7FSx9iJLXoqfglSF+gJeuNWVpiE37OIbc1jywR/GJyFdz3mnkz2/id0L0J/cr0izR5A==", "dev": true } } }, "eslint-plugin-prettier": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.0.1.tgz", - "integrity": "sha512-/PMttrarPAY78PLvV3xfWibMOdMDl57hmlQ2XqFeA37wd+CJ7WSxV7txqjVPHi/AAFKd2lX0ZqfsOc/i5yFCSQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.0.tgz", + "integrity": "sha512-XWX2yVuwVNLOUhQijAkXz+rMPPoCr7WFiAl8ig6I7Xn+pPVhDhzg4DxHpmbeb0iqjO9UronEA3Tb09ChnFVHHA==", "dev": true, "requires": { "prettier-linter-helpers": "^1.0.0" } }, "eslint-plugin-promise": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.1.1.tgz", - "integrity": "sha512-faAHw7uzlNPy7b45J1guyjazw28M+7gJokKUjC5JSFoYfUEyy6Gw/i7YQvmv2Yk00sUjWcmzXQLpU1Ki/C2IZQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz", + "integrity": "sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw==", + "dev": true + }, + "eslint-plugin-react": { + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.14.2.tgz", + "integrity": "sha512-jZdnKe3ip7FQOdjxks9XPN0pjUKZYq48OggNMd16Sk+8VXx6JOvXmlElxROCgp7tiUsTsze3jd78s/9AFJP2mA==", + "dev": true, + "requires": { + "array-includes": "^3.0.3", + "doctrine": "^2.1.0", + "has": "^1.0.3", + "jsx-ast-utils": "^2.1.0", + "object.entries": "^1.1.0", + "object.fromentries": "^2.0.0", + "object.values": "^1.1.0", + "prop-types": "^15.7.2", + "resolve": "^1.10.1" + }, + "dependencies": { + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + } + } + }, + "eslint-plugin-react-hooks": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-1.6.1.tgz", + "integrity": "sha512-wHhmGJyVuijnYIJXZJHDUF2WM+rJYTjulUTqF9k61d3BTk8etydz+M4dXUVH7M76ZRS85rqBTCx0Es/lLsrjnA==", "dev": true }, "eslint-plugin-scanjs-rules": { @@ -4126,9 +5467,9 @@ } }, "eslint-plugin-sonarjs": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-sonarjs/-/eslint-plugin-sonarjs-0.3.0.tgz", - "integrity": "sha512-75e/FgU04ySKVYsrMOioINMphJNtfXq/tJ6FOC/50H9osuM0E3pqAKckMja2zl+CHqhDroz0qJdcS3kFy5GYlQ==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-sonarjs/-/eslint-plugin-sonarjs-0.4.0.tgz", + "integrity": "sha512-l8E4ueMKVtEcocINHSNVH/YBSmDDXZlPEbud7bagRGyoCeB0otoyltoro5kdnIvVzS5usUwvjzMocHnPax2FEw==", "dev": true }, "eslint-plugin-standard": { @@ -4138,9 +5479,9 @@ "dev": true }, "eslint-plugin-unicorn": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-8.0.2.tgz", - "integrity": "sha512-Ik2/Bt/PvPnf1lZgUnNFK2310XoRn/4LYiP5gkEPVDa4w9HCoii7I6SeKh2X5Rdp2WLy4eUiLcYtiBUp+q2IRw==", + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-9.1.1.tgz", + "integrity": "sha512-SHh/N54pRu5KXlS4Boa1qbWM7yTNl6VpuYJ8Qc1O3TJDr+CDUwEEdUtVlVSV/dBUE97BC8Xk0+Y5zphn21qlCA==", "dev": true, "requires": { "clean-regexp": "^1.0.0", @@ -4152,6 +5493,7 @@ "lodash.snakecase": "^4.0.1", "lodash.topairs": "^4.3.0", "lodash.upperfirst": "^4.2.0", + "regexpp": "^2.0.1", "reserved-words": "^0.1.2", "safe-regex": "^2.0.1" }, @@ -4176,6 +5518,12 @@ "requireindex": "~1.1.0" } }, + "eslint-rule-composer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz", + "integrity": "sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==", + "dev": true + }, "eslint-rule-documentation": { "version": "1.0.23", "resolved": "https://registry.npmjs.org/eslint-rule-documentation/-/eslint-rule-documentation-1.0.23.tgz", @@ -4205,9 +5553,9 @@ "dev": true }, "espree": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", - "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.0.0.tgz", + "integrity": "sha512-lJvCS6YbCn3ImT3yKkPe0+tJ+mH6ljhGNjHQH9mRtiO6gjhVAOhVXW1yjnwqGwTkK3bGbye+hb00nFNmu0l/1Q==", "dev": true, "requires": { "acorn": "^6.0.7", @@ -4267,6 +5615,22 @@ "es5-ext": "~0.10.14" } }, + "events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", + "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", + "dev": true + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, "exec-sh": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.2.tgz", @@ -4525,17 +5889,62 @@ "dev": true }, "fast-glob": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.6.tgz", - "integrity": "sha512-0BvMaZc1k9F+MeWWMe8pL6YltFzZYcJsYU7D4JyDA6PAczaXvxqQQ/z+mDF7/4Mw01DeUc+i3CTKajnkANkV4w==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.0.4.tgz", + "integrity": "sha512-wkIbV6qg37xTJwqSsdnIphL1e+LaGz4AIQqr00mIubMaEhv1/HEmJ0uuCGZRNRUkZZmOB5mJKO0ZUTVq+SxMQg==", "dev": true, "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", + "@nodelib/fs.stat": "^2.0.1", + "@nodelib/fs.walk": "^1.2.1", + "glob-parent": "^5.0.0", + "is-glob": "^4.0.1", "merge2": "^1.2.3", - "micromatch": "^3.1.10" + "micromatch": "^4.0.2" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } } }, "fast-json-stable-stringify": { @@ -4550,6 +5959,15 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, + "fastq": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.6.0.tgz", + "integrity": "sha512-jmxqQ3Z/nXoeyDmWAzF9kH1aGZSis6e/SbfPmJpUnyZ0ogr6iscHQaml4wsEepEWSdtmpy+eVXmCRIMpxaXqOA==", + "dev": true, + "requires": { + "reusify": "^1.0.0" + } + }, "fault": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.3.tgz", @@ -4577,6 +5995,12 @@ "pend": "~1.2.0" } }, + "figgy-pudding": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", + "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", + "dev": true + }, "figures": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", @@ -4641,6 +6065,71 @@ } } }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + } + } + }, "find-node-modules": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/find-node-modules/-/find-node-modules-2.0.0.tgz", @@ -4651,12 +6140,6 @@ "merge": "^1.2.1" } }, - "find-parent-dir": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.0.tgz", - "integrity": "sha1-M8RLQpqysvBkYpnF+fcY83b/jVQ=", - "dev": true - }, "find-root": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", @@ -4714,17 +6197,21 @@ } }, "flatted": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", - "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", - "dev": true - }, - "fn-name": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", - "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", + "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", "dev": true }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -4780,13 +6267,32 @@ "dev": true }, "fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", "requires": { - "graceful-fs": "^4.1.2", + "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", "universalify": "^0.1.0" + }, + "dependencies": { + "graceful-fs": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.0.tgz", + "integrity": "sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==" + } + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" } }, "fs.realpath": { @@ -5363,17 +6869,6 @@ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, - "g-status": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/g-status/-/g-status-2.0.2.tgz", - "integrity": "sha512-kQoE9qH+T1AHKgSSD0Hkv98bobE90ILQcXAF4wvGgsr7uFqNvwmh8j+Lq3l0RVt3E3HjSbv2B9biEGcEtpHLCA==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "matcher": "^1.0.0", - "simple-git": "^1.85.0" - } - }, "generate-function": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", @@ -5498,32 +6993,14 @@ } }, "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", + "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", "dev": true, "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } + "is-glob": "^4.0.1" } }, - "glob-to-regexp": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", - "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", - "dev": true - }, "global-modules": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", @@ -5555,25 +7032,37 @@ "dev": true }, "globby": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", - "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.1.tgz", + "integrity": "sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A==", "dev": true, "requires": { "@types/glob": "^7.1.1", - "array-union": "^1.0.2", - "dir-glob": "^2.2.2", - "fast-glob": "^2.2.6", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", "glob": "^7.1.3", - "ignore": "^4.0.3", - "pify": "^4.0.1", - "slash": "^2.0.0" + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" }, "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "ignore": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.2.tgz", + "integrity": "sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true } } @@ -5783,12 +7272,43 @@ } } }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, "he": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", "dev": true }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, "hoek": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/hoek/-/hoek-5.0.4.tgz", @@ -5869,13 +7389,19 @@ "sshpk": "^1.7.0" } }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, "https-proxy-agent": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz", - "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.2.tgz", + "integrity": "sha512-c8Ndjc9Bkpfx/vCJueCPy0jlP4ccCCSNDp8xwCZzPjKJUm+B+u9WX2x98Qx4n1PiMNTWo3D7KK5ifNV/yJyRzg==", "dev": true, "requires": { - "agent-base": "^4.1.0", + "agent-base": "^4.3.0", "debug": "^3.1.0" }, "dependencies": { @@ -5891,30 +7417,52 @@ } }, "husky": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/husky/-/husky-2.2.0.tgz", - "integrity": "sha512-lG33E7zq6v//H/DQIojPEi1ZL9ebPFt3MxUMD8MR0lrS2ljEPiuUUxlziKIs/o9EafF0chL7bAtLQkcPvXmdnA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/husky/-/husky-3.0.0.tgz", + "integrity": "sha512-lKMEn7bRK+7f5eWPNGclDVciYNQt0GIkAQmhKl+uHP1qFzoN0h92kmH9HZ8PCwyVA2EQPD8KHf0FYWqnTxau+Q==", "dev": true, "requires": { - "cosmiconfig": "^5.2.0", + "cosmiconfig": "^5.2.1", "execa": "^1.0.0", - "find-up": "^3.0.0", "get-stdin": "^7.0.0", "is-ci": "^2.0.0", - "pkg-dir": "^4.1.0", + "opencollective-postinstall": "^2.0.2", + "pkg-dir": "^4.2.0", "please-upgrade-node": "^3.1.1", - "read-pkg": "^5.0.0", + "read-pkg": "^5.1.1", "run-node": "^1.0.0", - "slash": "^2.0.0" + "slash": "^3.0.0" }, "dependencies": { + "caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "dev": true, + "requires": { + "caller-callsite": "^2.0.0" + } + }, + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dev": true, + "requires": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + } + }, "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, "get-stdin": { @@ -5923,14 +7471,23 @@ "integrity": "sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==", "dev": true }, + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + } + }, "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" } }, "p-limit": { @@ -5943,12 +7500,12 @@ } }, "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "requires": { - "p-limit": "^2.0.0" + "p-limit": "^2.2.0" } }, "p-try": { @@ -5957,13 +7514,19 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, "pkg-dir": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.1.0.tgz", - "integrity": "sha512-55k9QN4saZ8q518lE6EFgYiu95u3BWkSajCifhdQjvLvmr8IpnRbhI+UGpWJQfa0KzDguHeeWT1ccO1PmkOi3A==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "requires": { - "find-up": "^3.0.0" + "find-up": "^4.0.0" } }, "read-pkg": { @@ -5977,6 +7540,12 @@ "parse-json": "^4.0.0", "type-fest": "^0.4.1" } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true } } }, @@ -5995,6 +7564,12 @@ "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", "dev": true }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -6002,9 +7577,9 @@ "dev": true }, "import-fresh": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", - "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.1.0.tgz", + "integrity": "sha512-PpuksHKGt8rXfWEr9m9EHIpgyyaltBy8+eF6GJM0QCAxMgxCfucMF3mjecK2QsJr0amJW7gTqh5/wht0z2UhEQ==", "dev": true, "requires": { "parent-module": "^1.0.0", @@ -6020,12 +7595,20 @@ } }, "import-from": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", - "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-3.0.0.tgz", + "integrity": "sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==", "dev": true, "requires": { - "resolve-from": "^3.0.0" + "resolve-from": "^5.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + } } }, "import-local": { @@ -6159,12 +7742,12 @@ "dev": true }, "into-stream": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-4.0.0.tgz", - "integrity": "sha512-i29KNyE5r0Y/UQzcQ0IbZO1MYJ53Jn0EcFRZPj5FzWKYH17kDFEOwuA+3jroymOI06SW1dEDnly9A1CAreC5dg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-5.1.0.tgz", + "integrity": "sha512-cbDhb8qlxKMxPBk/QxTtYg1DQ4CwXmadu7quG3B7nrJsgSncEreF2kwWKZFdnjc/lSNNIkFPsjI7SM0Cx/QXPw==", "dev": true, "requires": { - "from2": "^2.1.1", + "from2": "^2.3.0", "p-is-promise": "^2.0.0" } }, @@ -6243,6 +7826,15 @@ "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, "is-buffer": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz", @@ -6445,27 +8037,27 @@ } }, "is-path-cwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", "dev": true }, "is-path-in-cwd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", - "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", + "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", "dev": true, "requires": { - "is-path-inside": "^1.0.0" + "is-path-inside": "^2.1.0" } }, "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", + "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", "dev": true, "requires": { - "path-is-inside": "^1.0.1" + "path-is-inside": "^1.0.2" } }, "is-plain-obj": { @@ -6494,6 +8086,15 @@ "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", "dev": true }, + "is-reference": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.1.3.tgz", + "integrity": "sha512-W1iHHv/oyBb2pPxkBxtaewxa1BC58Pn5J0hogyCdefwUIvb6R+TGbAcIa4qPNYLqLhb3EnOgUf2MQkkF76BcKw==", + "dev": true, + "requires": { + "@types/estree": "0.0.39" + } + }, "is-regex": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", @@ -6619,9 +8220,9 @@ "dev": true }, "issue-parser": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/issue-parser/-/issue-parser-3.0.1.tgz", - "integrity": "sha512-5wdT3EE8Kq38x/hJD8QZCJ9scGoOZ5QnzwXyClkviSWTS+xOCE6hJ0qco3H5n5jCsFqpbofZCcMWqlXJzF72VQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/issue-parser/-/issue-parser-4.0.0.tgz", + "integrity": "sha512-1RmmAXHl5+cqTZ9dRr861xWy0Gkc9TWTEklgjKv+nhlB1dY1NmGBV8b20jTWRL5cPGpOIXkz84kEcDBM8Nc0cw==", "dev": true, "requires": { "lodash.capitalize": "^4.2.1", @@ -6733,9 +8334,9 @@ } }, "java-properties": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/java-properties/-/java-properties-0.2.10.tgz", - "integrity": "sha512-CpKJh9VRNhS+XqZtg1UMejETGEiqwCGDC/uwPEEQwc2nfdbSm73SIE29TplG2gLYuBOOTNDqxzG6A9NtEPLt0w==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/java-properties/-/java-properties-1.0.1.tgz", + "integrity": "sha512-HbTaaXlIHoDVNXjmp4flOBWOfYBkrVN8dD1tp4m+95M/ADSDW/BxWbiwyVIhw/2+5d0cof4PHZCbE7+S1ukTQw==", "dev": true }, "jest": { @@ -7417,9 +9018,9 @@ "dev": true }, "jsdoc": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.1.tgz", - "integrity": "sha512-mMMsst31b8c7/Z6ewnO6ORIdVMwsobg1enX9b/2XAzW8mM3KuMANRWcMD1KMBq91IAUMOIhC5NsXu7xvNQrRyQ==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.2.tgz", + "integrity": "sha512-S2vzg99C5+gb7FWlrK4TVdyzVPGGkdvpDkCEJH1JABi2PKzPeLu5/zZffcJUifgWUJqXWl41Hoc+MmuM2GukIg==", "dev": true, "requires": { "@babel/parser": "^7.4.4", @@ -7526,6 +9127,29 @@ "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", "dev": true }, + "json-fixer": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/json-fixer/-/json-fixer-1.3.1.tgz", + "integrity": "sha512-cXDbm60QRRn/3h+uPmVdgt2rBP4VPTQo4OZO+ptw4iZIpT9REfgj/I7/0YVplpEFWph/WGNjto7TPgou2uyfOw==", + "dev": true, + "requires": { + "@babel/runtime": "^7.4.5", + "chalk": "^2.4.2", + "eslint-config-kentcdodds": "^14.3.2", + "pegjs": "^0.10.0" + }, + "dependencies": { + "@babel/runtime": { + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.5.1.tgz", + "integrity": "sha512-g+hmPKs16iewFSmW57NkH9xpPkuYD1RV3UE2BCkXx9j+nhhRb9hsiSxPmEa67j35IecTQdn4iyMtHMbt5VoREg==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.2" + } + } + } + }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", @@ -7618,6 +9242,16 @@ "verror": "1.10.0" } }, + "jsx-ast-utils": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.2.1.tgz", + "integrity": "sha512-v3FxCcAf20DayI+uxnCuw795+oOIkVu6EnJ1+kSzhqqTZHNkTZ7B66ZgLp4oLJ/gbA64cI0B7WRoHZMSRdyVRQ==", + "dev": true, + "requires": { + "array-includes": "^3.0.3", + "object.assign": "^4.1.0" + } + }, "keyv": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", @@ -7695,45 +9329,172 @@ } }, "lint-staged": { - "version": "8.1.6", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-8.1.6.tgz", - "integrity": "sha512-QT13AniHN6swAtTjsrzxOfE4TVCiQ39xESwLmjGVNCMMZ/PK5aopwvbxLrzw+Zf9OxM3cQG6WCx9lceLzETOnQ==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-9.1.0.tgz", + "integrity": "sha512-jI+oj159MHVlsGxMFkzTPrin0Jt8ltVJWSfCPn/xM+qiIPwCimjuhq9//IiNMaNj8VIFZ8QlaAF4qecWTbUOPQ==", "dev": true, "requires": { - "chalk": "^2.3.1", - "commander": "^2.14.1", - "cosmiconfig": "^5.0.2", - "debug": "^3.1.0", + "chalk": "^2.4.2", + "commander": "^2.20.0", + "cosmiconfig": "^5.2.1", + "debug": "^4.1.1", "dedent": "^0.7.0", - "del": "^3.0.0", - "execa": "^1.0.0", - "find-parent-dir": "^0.3.0", - "g-status": "^2.0.2", - "is-glob": "^4.0.0", - "is-windows": "^1.0.2", - "listr": "^0.14.2", - "listr-update-renderer": "^0.5.0", - "lodash": "^4.17.11", - "log-symbols": "^2.2.0", - "micromatch": "^3.1.8", - "npm-which": "^3.0.1", - "p-map": "^1.1.1", - "path-is-inside": "^1.0.2", - "pify": "^3.0.0", - "please-upgrade-node": "^3.0.2", - "staged-git-files": "1.1.2", - "string-argv": "^0.0.2", - "stringify-object": "^3.2.2", - "yup": "^0.27.0" + "del": "^4.1.1", + "execa": "^2.0.1", + "listr": "^0.14.3", + "log-symbols": "^3.0.0", + "micromatch": "^4.0.2", + "please-upgrade-node": "^3.1.1", + "string-argv": "^0.3.0", + "stringify-object": "^3.3.0" }, "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, "requires": { - "ms": "^2.1.1" + "fill-range": "^7.0.1" + } + }, + "caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "dev": true, + "requires": { + "caller-callsite": "^2.0.0" + } + }, + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dev": true, + "requires": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + } + }, + "execa": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/execa/-/execa-2.0.3.tgz", + "integrity": "sha512-iM124nlyGSrXmuyZF1EMe83ESY2chIYVyDRZKgmcDynid2Q2v/+GuE7gNMl6Sy9Niwf4MC0DDxagOxeMPjuLsw==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.5", + "get-stream": "^5.0.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^3.0.0", + "onetime": "^5.1.0", + "p-finally": "^2.0.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "get-stream": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", + "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "npm-run-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-3.1.0.tgz", + "integrity": "sha512-Dbl4A/VfiVGLgQv29URL9xshU8XDY1GeLy+fsaZ1AA8JDSfjvr5P5+pzRbWqRSBxk6/DW7MIh8lTM/PaGnP2kg==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, + "onetime": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", + "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "p-finally": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz", + "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==", + "dev": true + }, + "path-key": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.0.tgz", + "integrity": "sha512-8cChqz0RP6SHJkMt48FW0A7+qUOn+OsnOsVtzI59tZ8m+5bCSk7hzwET0pulwOM2YMn9J1efb07KB9l9f30SGg==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" } } } @@ -7753,14 +9514,6 @@ "listr-verbose-renderer": "^0.5.0", "p-map": "^2.0.0", "rxjs": "^6.3.3" - }, - "dependencies": { - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true - } } }, "listr-silent-renderer": { @@ -7870,6 +9623,34 @@ "strip-bom": "^3.0.0" } }, + "loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "dev": true + }, + "loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + } + } + }, "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", @@ -8027,12 +9808,12 @@ "dev": true }, "log-symbols": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", + "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", "dev": true, "requires": { - "chalk": "^2.0.1" + "chalk": "^2.4.2" } }, "log-update": { @@ -8115,15 +9896,15 @@ } }, "macos-release": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-2.2.0.tgz", - "integrity": "sha512-iV2IDxZaX8dIcM7fG6cI46uNmHUxHE4yN+Z8tKHAW1TBPMZDIKHf/3L+YnOuj/FK9il14UaVdHmiQ1tsi90ltA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-2.3.0.tgz", + "integrity": "sha512-OHhSbtcviqMPt7yfw5ef5aghS2jzFVKEFyCJndQt2YpSQ9qRVSEv2axSJI1paVThEu+FFGs584h/1YhxjVqajA==", "dev": true }, "magic-string": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.2.tgz", - "integrity": "sha512-iLs9mPjh9IuTtRsqqhNGYcZXGei0Nh/A4xirrsqW7c+QhKVFL2vm7U09ru6cHRD22azaP/wMDgI+HCqbETMTtg==", + "version": "0.25.3", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.3.tgz", + "integrity": "sha512-6QK0OpF/phMz0Q2AxILkX2mFhi7m+WMwTRg0LQKq/WBB0cDP4rYH3Wp4/d3OTXlrPLVJT/RFqj8tFeAR4nk8AA==", "dev": true, "requires": { "sourcemap-codec": "^1.4.4" @@ -8156,6 +9937,12 @@ "tmpl": "1.0.x" } }, + "mamacro": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", + "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", + "dev": true + }, "map-age-cleaner": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", @@ -8206,9 +9993,9 @@ } }, "markdown-it-anchor": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.0.2.tgz", - "integrity": "sha512-AFM/woBI8QDJMS/9+MmsBMT5/AR+ImfOsunQZTZhzcTmna3rIzAzbOh5E0l6mlFM/i9666BpUtkqQ9bS7WApCg==", + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.4.tgz", + "integrity": "sha512-n8zCGjxA3T+Mx1pG8HEgbJbkB8JFUuRkeTZQuIM8iPY6oQ8sWOPRZJDFC9a/pNg2QkHEjjGkhBEl/RSyzaDZ3A==", "dev": true }, "markdown-table": { @@ -8237,13 +10024,15 @@ "supports-hyperlinks": "^1.0.1" } }, - "matcher": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", - "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dev": true, "requires": { - "escape-string-regexp": "^1.0.4" + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" } }, "mdast-comment-marker": { @@ -8310,6 +10099,12 @@ } } }, + "memory-fs": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.2.0.tgz", + "integrity": "sha1-8rslNovBIeORwlIN6Slpyu4KApA=", + "dev": true + }, "meow": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", @@ -8369,10 +10164,20 @@ "to-regex": "^3.0.2" } }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, "mime": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.2.tgz", - "integrity": "sha512-zJBfZDkwRu+j3Pdd2aHsR5GfH2jIWhmL1ZzBoc+X+3JEti2hbArWcyJ+1laC1D2/U/W1a/+Cegj0/OnEU2ybjg==", + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", + "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", "dev": true }, "mime-db": { @@ -8402,6 +10207,18 @@ "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", "dev": true }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -8427,6 +10244,24 @@ "is-plain-obj": "^1.1.0" } }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, "mixin-deep": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", @@ -8536,6 +10371,20 @@ "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", "dev": true }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, "ms": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", @@ -8647,9 +10496,9 @@ } }, "node-fetch": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.5.0.tgz", - "integrity": "sha512-YuZKluhWGJwCcUu4RlZstdAxr8bFfOVHakc1mplwHkk8J+tqM1Y5yraYvIUpeX8aY7+crCwiELJq7Vl0o0LWXw==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz", + "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==", "dev": true }, "node-int64": { @@ -8658,6 +10507,56 @@ "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", "dev": true }, + "node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "dev": true, + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + }, + "dependencies": { + "buffer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, "node-modules-regexp": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", @@ -8710,9 +10609,9 @@ "dev": true }, "npm": { - "version": "6.9.0", - "resolved": "https://registry.npmjs.org/npm/-/npm-6.9.0.tgz", - "integrity": "sha512-91V+zB5hDxO+Jyp2sUKS7juHlIM95dGQxTeQtmZI1nAI/7kjWXFipPrtwwKjhyKmV4GsS2LzJhrxRjGWsU9z/w==", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/npm/-/npm-6.10.0.tgz", + "integrity": "sha512-pOMc81mT4fHXv/iMbw4T4GQVZzlzx/Vf5bta+JgMWVR+qqBeNI0mAbKrQ15vZf3eMJ+DaJj6+XgD7650JQs+rg==", "dev": true, "requires": { "JSONStream": "^1.3.5", @@ -8722,9 +10621,9 @@ "aproba": "^2.0.0", "archy": "~1.0.0", "bin-links": "^1.1.2", - "bluebird": "^3.5.3", + "bluebird": "^3.5.5", "byte-size": "^5.0.1", - "cacache": "^11.3.2", + "cacache": "^11.3.3", "call-limit": "~1.1.0", "chownr": "^1.1.1", "ci-info": "^2.0.0", @@ -8744,7 +10643,7 @@ "fs-write-stream-atomic": "~1.0.10", "gentle-fs": "^2.0.1", "glob": "^7.1.3", - "graceful-fs": "^4.1.15", + "graceful-fs": "^4.2.0", "has-unicode": "~2.0.1", "hosted-git-info": "^2.7.1", "iferr": "^1.0.2", @@ -8790,7 +10689,7 @@ "npm-install-checks": "~3.0.0", "npm-lifecycle": "^2.1.0", "npm-package-arg": "^6.1.0", - "npm-packlist": "^1.4.1", + "npm-packlist": "^1.4.4", "npm-pick-manifest": "^2.2.3", "npm-profile": "*", "npm-registry-fetch": "^3.9.0", @@ -8799,31 +10698,31 @@ "once": "~1.4.0", "opener": "^1.5.1", "osenv": "^0.1.5", - "pacote": "^9.5.0", + "pacote": "^9.5.1", "path-is-inside": "~1.0.2", "promise-inflight": "~1.0.1", "qrcode-terminal": "^0.12.0", - "query-string": "^6.2.0", + "query-string": "^6.4.0", "qw": "~1.0.1", "read": "~1.0.7", "read-cmd-shim": "~1.0.1", "read-installed": "~4.0.3", "read-package-json": "^2.0.13", - "read-package-tree": "^5.2.2", - "readable-stream": "^3.1.1", - "readdir-scoped-modules": "*", + "read-package-tree": "^5.3.1", + "readable-stream": "^3.3.0", + "readdir-scoped-modules": "^1.1.0", "request": "^2.88.0", "retry": "^0.12.0", "rimraf": "^2.6.3", "safe-buffer": "^5.1.2", "semver": "^5.6.0", - "sha": "~2.0.1", + "sha": "^3.0.0", "slide": "~1.1.6", "sorted-object": "~2.0.1", "sorted-union-stream": "~2.1.3", "ssri": "^6.0.1", "stringify-package": "^1.0.0", - "tar": "^4.4.8", + "tar": "^4.4.10", "text-table": "~0.2.0", "tiny-relative-date": "^1.3.0", "uid-number": "0.0.6", @@ -8836,7 +10735,7 @@ "validate-npm-package-name": "~3.0.0", "which": "^1.3.1", "worker-farm": "^1.6.0", - "write-file-atomic": "^2.4.2" + "write-file-atomic": "^2.4.3" }, "dependencies": { "JSONStream": { @@ -9022,7 +10921,7 @@ } }, "bluebird": { - "version": "3.5.3", + "version": "3.5.5", "bundled": true, "dev": true }, @@ -9070,45 +10969,45 @@ "dev": true }, "cacache": { - "version": "11.3.2", + "version": "11.3.3", "bundled": true, "dev": true, "requires": { - "bluebird": "^3.5.3", + "bluebird": "^3.5.5", "chownr": "^1.1.1", "figgy-pudding": "^3.5.1", - "glob": "^7.1.3", + "glob": "^7.1.4", "graceful-fs": "^4.1.15", "lru-cache": "^5.1.1", "mississippi": "^3.0.0", "mkdirp": "^0.5.1", "move-concurrently": "^1.0.1", "promise-inflight": "^1.0.1", - "rimraf": "^2.6.2", + "rimraf": "^2.6.3", "ssri": "^6.0.1", "unique-filename": "^1.1.1", "y18n": "^4.0.0" }, "dependencies": { - "chownr": { - "version": "1.1.1", - "bundled": true, - "dev": true - }, - "lru-cache": { - "version": "5.1.1", + "glob": { + "version": "7.1.4", "bundled": true, "dev": true, "requires": { - "yallist": "^3.0.2" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "unique-filename": { - "version": "1.1.1", + "lru-cache": { + "version": "5.1.1", "bundled": true, "dev": true, "requires": { - "unique-slug": "^2.0.0" + "yallist": "^3.0.2" } }, "yallist": { @@ -9451,6 +11350,14 @@ "clone": "^1.0.2" } }, + "define-properties": { + "version": "1.1.3", + "bundled": true, + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, "delayed-stream": { "version": "1.0.0", "bundled": true, @@ -9577,6 +11484,28 @@ "prr": "~1.0.1" } }, + "es-abstract": { + "version": "1.12.0", + "bundled": true, + "dev": true, + "requires": { + "es-to-primitive": "^1.1.1", + "function-bind": "^1.1.1", + "has": "^1.0.1", + "is-callable": "^1.1.3", + "is-regex": "^1.0.4" + } + }, + "es-to-primitive": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, "es6-promise": { "version": "4.2.6", "bundled": true, @@ -9736,7 +11665,7 @@ } }, "fs-minipass": { - "version": "1.2.5", + "version": "1.2.6", "bundled": true, "dev": true, "requires": { @@ -9799,7 +11728,7 @@ "dev": true }, "fstream": { - "version": "1.0.11", + "version": "1.0.12", "bundled": true, "dev": true, "requires": { @@ -9809,6 +11738,11 @@ "rimraf": "2" } }, + "function-bind": { + "version": "1.1.1", + "bundled": true, + "dev": true + }, "gauge": { "version": "2.7.4", "bundled": true, @@ -9941,7 +11875,7 @@ } }, "graceful-fs": { - "version": "4.1.15", + "version": "4.2.0", "bundled": true, "dev": true }, @@ -9959,11 +11893,24 @@ "har-schema": "^2.0.0" } }, + "has": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, "has-flag": { "version": "3.0.0", "bundled": true, "dev": true }, + "has-symbols": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, "has-unicode": { "version": "2.0.1", "bundled": true, @@ -10095,6 +12042,11 @@ "bundled": true, "dev": true }, + "is-callable": { + "version": "1.1.4", + "bundled": true, + "dev": true + }, "is-ci": { "version": "1.1.0", "bundled": true, @@ -10118,6 +12070,11 @@ "cidr-regex": "^2.0.10" } }, + "is-date-object": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, "is-fullwidth-code-point": { "version": "1.0.0", "bundled": true, @@ -10158,6 +12115,14 @@ "bundled": true, "dev": true }, + "is-regex": { + "version": "1.0.4", + "bundled": true, + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, "is-retry-allowed": { "version": "1.1.0", "bundled": true, @@ -10168,6 +12133,14 @@ "bundled": true, "dev": true }, + "is-symbol": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "has-symbols": "^1.0.0" + } + }, "is-typedarray": { "version": "1.0.0", "bundled": true, @@ -10655,7 +12628,7 @@ } }, "minizlib": { - "version": "1.1.1", + "version": "1.2.1", "bundled": true, "dev": true, "requires": { @@ -10760,12 +12733,12 @@ "dev": true }, "tar": { - "version": "2.2.1", + "version": "2.2.2", "bundled": true, "dev": true, "requires": { "block-stream": "*", - "fstream": "^1.0.2", + "fstream": "^1.0.12", "inherits": "2" } } @@ -10860,7 +12833,7 @@ } }, "npm-packlist": { - "version": "1.4.1", + "version": "1.4.4", "bundled": true, "dev": true, "requires": { @@ -10940,6 +12913,20 @@ "bundled": true, "dev": true }, + "object-keys": { + "version": "1.0.12", + "bundled": true, + "dev": true + }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "bundled": true, + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + } + }, "once": { "version": "1.4.0", "bundled": true, @@ -11020,7 +13007,7 @@ } }, "pacote": { - "version": "9.5.0", + "version": "9.5.1", "bundled": true, "dev": true, "requires": { @@ -11259,7 +13246,7 @@ "dev": true }, "query-string": { - "version": "6.2.0", + "version": "6.4.0", "bundled": true, "dev": true, "requires": { @@ -11333,19 +13320,17 @@ } }, "read-package-tree": { - "version": "5.2.2", + "version": "5.3.1", "bundled": true, "dev": true, "requires": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "once": "^1.3.0", "read-package-json": "^2.0.0", - "readdir-scoped-modules": "^1.0.0" + "readdir-scoped-modules": "^1.0.0", + "util-promisify": "^2.1.0" } }, "readable-stream": { - "version": "3.1.1", + "version": "3.3.0", "bundled": true, "dev": true, "requires": { @@ -11355,7 +13340,7 @@ } }, "readdir-scoped-modules": { - "version": "1.0.2", + "version": "1.1.0", "bundled": true, "dev": true, "requires": { @@ -11481,36 +13466,11 @@ "dev": true }, "sha": { - "version": "2.0.1", + "version": "3.0.0", "bundled": true, "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "readable-stream": "^2.0.2" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } + "graceful-fs": "^4.1.2" } }, "shebang-command": { @@ -11783,24 +13743,19 @@ } }, "tar": { - "version": "4.4.8", + "version": "4.4.10", "bundled": true, "dev": true, "requires": { "chownr": "^1.1.1", "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", + "minipass": "^2.3.5", + "minizlib": "^1.2.1", "mkdirp": "^0.5.0", "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" + "yallist": "^3.0.3" }, "dependencies": { - "chownr": { - "version": "1.1.1", - "bundled": true, - "dev": true - }, "minipass": { "version": "2.3.5", "bundled": true, @@ -11985,6 +13940,14 @@ "bundled": true, "dev": true }, + "util-promisify": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "object.getownpropertydescriptors": "^2.0.3" + } + }, "uuid": { "version": "3.3.2", "bundled": true, @@ -12101,7 +14064,7 @@ "dev": true }, "write-file-atomic": { - "version": "2.4.2", + "version": "2.4.3", "bundled": true, "dev": true, "requires": { @@ -12176,15 +14139,6 @@ "pify": "^3.0.0" } }, - "npm-path": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/npm-path/-/npm-path-2.0.4.tgz", - "integrity": "sha512-IFsj0R9C7ZdR5cP+ET342q77uSRdtWOlWpih5eC+lu29tIDbNEgDbzgVJ5UFvYHWhxDZ5TFkJafFioO0pPQjCw==", - "dev": true, - "requires": { - "which": "^1.2.10" - } - }, "npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", @@ -12194,17 +14148,6 @@ "path-key": "^2.0.0" } }, - "npm-which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-which/-/npm-which-3.0.1.tgz", - "integrity": "sha1-kiXybsOihcIJyuZ8OxGmtKtxQKo=", - "dev": true, - "requires": { - "commander": "^2.9.0", - "npm-path": "^2.0.2", - "which": "^1.2.10" - } - }, "nspell": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/nspell/-/nspell-2.1.2.tgz", @@ -12289,6 +14232,42 @@ "isobject": "^3.0.0" } }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, + "object.entries": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.0.tgz", + "integrity": "sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.12.0", + "function-bind": "^1.1.1", + "has": "^1.0.3" + } + }, + "object.fromentries": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.0.tgz", + "integrity": "sha512-9iLiI6H083uiqUuvzyY6qrlmc/Gz8hLQFOcb/Ri/0xXFkSNS3ctV+CbE6yM2+AnkYfOB3dGjdzC0wrMLIhQICA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.11.0", + "function-bind": "^1.1.1", + "has": "^1.0.1" + } + }, "object.getownpropertydescriptors": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", @@ -12308,6 +14287,18 @@ "isobject": "^3.0.1" } }, + "object.values": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.0.tgz", + "integrity": "sha512-8mf0nKLAoFX6VlNVdhGj31SVYpaNFtUnuoOXWyFEstsWRgU837AK+JYM0iAxwkSzGRbwn8cbFmgbyxj1j4VbXg==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.12.0", + "function-bind": "^1.1.1", + "has": "^1.0.3" + } + }, "octokit-pagination-methods": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz", @@ -12332,6 +14323,12 @@ "mimic-fn": "^1.0.0" } }, + "opencollective-postinstall": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz", + "integrity": "sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw==", + "dev": true + }, "optimist": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", @@ -12372,6 +14369,12 @@ } } }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", @@ -12406,9 +14409,19 @@ "dev": true }, "ow": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/ow/-/ow-0.12.0.tgz", - "integrity": "sha512-GWAoq5RiK3HpMbwvM/aszyYYm7UvZzNfx5QPDbCXd52lROiDVBn6x6M06DhsL/Y8BTl42djQAPWhu6adaWwZyQ==" + "version": "0.13.2", + "resolved": "https://registry.npmjs.org/ow/-/ow-0.13.2.tgz", + "integrity": "sha512-9wvr+q+ZTDRvXDjL6eDOdFe5WUl/wa5sntf9kAolxqSpkBqaIObwLgFCGXSJASFw+YciXnOVtDWpxXa9cqV94A==", + "requires": { + "type-fest": "^0.5.1" + }, + "dependencies": { + "type-fest": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.5.2.tgz", + "integrity": "sha512-DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw==" + } + } }, "p-cancelable": { "version": "0.4.1", @@ -12452,12 +14465,20 @@ } }, "p-filter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-1.0.0.tgz", - "integrity": "sha1-Yp0xcVAgnI/VCLoTdxPvS7kg6ds=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-2.1.0.tgz", + "integrity": "sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==", "dev": true, "requires": { - "p-map": "^1.0.0" + "p-map": "^2.0.0" + }, + "dependencies": { + "p-map": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "dev": true + } } }, "p-finally": { @@ -12491,9 +14512,9 @@ } }, "p-map": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", - "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", "dev": true }, "p-reduce": { @@ -12503,11 +14524,12 @@ "dev": true }, "p-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz", - "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.1.0.tgz", + "integrity": "sha512-oepllyG9gX1qH4Sm20YAKxg1GA7L7puhvGnTfimi31P07zSIj7SDV6YtuAx9nbJF51DES+2CIIRkXs8GKqWJxA==", "dev": true, "requires": { + "@types/retry": "^0.12.0", "retry": "^0.12.0" } }, @@ -12526,6 +14548,23 @@ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, + "pako": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", + "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", + "dev": true + }, + "parallel-transform": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", + "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "dev": true, + "requires": { + "cyclist": "~0.2.2", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -12535,6 +14574,20 @@ "callsites": "^3.0.0" } }, + "parse-asn1": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", + "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", + "dev": true, + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, "parse-english": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/parse-english/-/parse-english-4.1.1.tgz", @@ -12637,6 +14690,12 @@ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", "dev": true }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "dev": true + }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", @@ -12681,6 +14740,25 @@ "pify": "^3.0.0" } }, + "pbkdf2": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "pegjs": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz", + "integrity": "sha1-z4uvrm7d/0tafvsYUmnqr0YQ3b0=", + "dev": true + }, "pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", @@ -12693,6 +14771,12 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", "dev": true }, + "picomatch": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.0.7.tgz", + "integrity": "sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA==", + "dev": true + }, "pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", @@ -12791,9 +14875,9 @@ "dev": true }, "prettier": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.17.0.tgz", - "integrity": "sha512-sXe5lSt2WQlCbydGETgfm1YBShgOX4HxQkFPvbxkcwgDvGDeqVau8h+12+lmSVlP3rHPz0oavfddSZg/q+Szjw==", + "version": "1.18.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.18.2.tgz", + "integrity": "sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==", "dev": true }, "prettier-linter-helpers": { @@ -12825,6 +14909,12 @@ } } }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, "process-nextick-args": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", @@ -12837,6 +14927,12 @@ "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, "prompts": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.0.4.tgz", @@ -12847,11 +14943,16 @@ "sisteransi": "^1.0.0" } }, - "property-expr": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/property-expr/-/property-expr-1.5.1.tgz", - "integrity": "sha512-CGuc0VUTGthpJXL36ydB6jnbyOf/rAHFvmVrJlH+Rg0DqqLFQGAP6hIaxD/G0OAmBJPhXDHuEJigrp0e0wFV6g==", - "dev": true + "prop-types": { + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "dev": true, + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" + } }, "proto-list": { "version": "1.2.4", @@ -12859,6 +14960,12 @@ "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", "dev": true }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, "pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", @@ -12871,6 +14978,20 @@ "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==", "dev": true }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, "pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -12881,6 +15002,29 @@ "once": "^1.3.1" } }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + }, + "dependencies": { + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -12910,6 +15054,18 @@ "strict-uri-encode": "^1.0.0" } }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, "quick-lru": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", @@ -12922,6 +15078,25 @@ "integrity": "sha512-bjz7kEsfg6D3uMeed+VbeypnooGlX7enMnDbx0KLYEEM8J1k24jk2pc+1nyQ1sExnERz8xKXRSZ0EYNIwLM83g==", "optional": true }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, "rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -12976,6 +15151,17 @@ "util-deprecate": "~1.0.1" } }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, "readline2": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz", @@ -13058,9 +15244,9 @@ } }, "regexp-tree": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.6.tgz", - "integrity": "sha512-LFrA98Dw/heXqDojz7qKFdygZmFoiVlvE1Zp7Cq2cvF+ZA+03Gmhy0k0PQlsC1jvHPiTUSs+pDHEuSWv6+6D7w==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.11.tgz", + "integrity": "sha512-7/l/DgapVVDzZobwMCCgMlqiqyLFJ0cduo/j+3BcDJIB+yJdsYCfKuI3l/04NV+H/rfNRdPIDbXNZHM9XvQatg==", "dev": true }, "regexpp": { @@ -13070,12 +15256,12 @@ "dev": true }, "registry-auth-token": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", - "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.0.0.tgz", + "integrity": "sha512-lpQkHxd9UL6tb3k/aHAVfnVtn+Bcs9ob5InuFLLEDqSqeq+AljB8GZW9xY0x7F+xYwEcjKe07nyoxzEYz6yvkw==", "dev": true, "requires": { - "rc": "^1.1.6", + "rc": "^1.2.8", "safe-buffer": "^5.0.1" } }, @@ -14175,6 +16361,12 @@ "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", "dev": true }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, "right-pad": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/right-pad/-/right-pad-1.0.1.tgz", @@ -14190,35 +16382,72 @@ "glob": "^7.1.3" } }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, "rollup": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-1.11.3.tgz", - "integrity": "sha512-81MR7alHcFKxgWzGfG7jSdv+JQxSOIOD/Fa3iNUmpzbd7p+V19e1l9uffqT8/7YAHgGOzmoPGN3Fx3L2ptOf5g==", + "version": "1.16.6", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-1.16.6.tgz", + "integrity": "sha512-oM3iKkzPCq9Da95wCnNfS8YlNZjgCD5c/TceKnJIthI9FOeJqnO3PUr/C5Suv9Kjzh0iphKL02PLeja3A5AMIA==", "dev": true, "requires": { "@types/estree": "0.0.39", - "@types/node": "^11.13.9", + "@types/node": "^12.0.10", "acorn": "^6.1.1" }, "dependencies": { "@types/node": { - "version": "11.13.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-11.13.10.tgz", - "integrity": "sha512-leUNzbFTMX94TWaIKz8N15Chu55F9QSH+INKayQr5xpkasBQBRF3qQXfo3/dOnMU/dEIit+Y/SU8HyOjq++GwA==", + "version": "12.0.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.12.tgz", + "integrity": "sha512-Uy0PN4R5vgBUXFoJrKryf5aTk3kJ8Rv3PdlHjl6UaX+Cqp1QE0yPQ68MPXGrZOfG7gZVNDIJZYyot0B9ubXUrQ==", "dev": true } } }, "rollup-plugin-commonjs": { - "version": "9.3.4", - "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-9.3.4.tgz", - "integrity": "sha512-DTZOvRoiVIHHLFBCL4pFxOaJt8pagxsVldEXBOn6wl3/V21wVaj17HFfyzTsQUuou3sZL3lEJZVWKPFblJfI6w==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-10.0.1.tgz", + "integrity": "sha512-x0PcCVdEc4J8igv1qe2vttz8JKAKcTs3wfIA3L8xEty3VzxgORLrzZrNWaVMc+pBC4U3aDOb9BnWLAQ8J11vkA==", "dev": true, "requires": { - "estree-walker": "^0.6.0", + "estree-walker": "^0.6.1", + "is-reference": "^1.1.2", "magic-string": "^0.25.2", - "resolve": "^1.10.0", - "rollup-pluginutils": "^2.6.0" + "resolve": "^1.11.0", + "rollup-pluginutils": "^2.8.1" + }, + "dependencies": { + "estree-walker": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", + "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", + "dev": true + }, + "resolve": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.1.tgz", + "integrity": "sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "rollup-pluginutils": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.1.tgz", + "integrity": "sha512-J5oAoysWar6GuZo0s+3bZ6sVZAC0pfqKz68De7ZgDi5z63jOVZn1uJL/+z1jeKHNbGII8kAyHF5q8LnxSX5lQg==", + "dev": true, + "requires": { + "estree-walker": "^0.6.1" + } + } } }, "rollup-plugin-json": { @@ -14231,27 +16460,72 @@ } }, "rollup-plugin-node-resolve": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-4.2.3.tgz", - "integrity": "sha512-r+WaesPzdGEynpLZLALFEDugA4ACa5zn7bc/+LVX4vAXQQ8IgDHv0xfsSvJ8tDXUtprfBtrDtRFg27ifKjcJTg==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-5.2.0.tgz", + "integrity": "sha512-jUlyaDXts7TW2CqQ4GaO5VJ4PwwaV8VUGA7+km3n6k6xtOEacf61u0VXwN80phY/evMcaS+9eIeJ9MOyDxt5Zw==", "dev": true, "requires": { "@types/resolve": "0.0.8", "builtin-modules": "^3.1.0", "is-module": "^1.0.0", - "resolve": "^1.10.0" + "resolve": "^1.11.1", + "rollup-pluginutils": "^2.8.1" + }, + "dependencies": { + "estree-walker": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", + "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", + "dev": true + }, + "resolve": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.1.tgz", + "integrity": "sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "rollup-pluginutils": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.1.tgz", + "integrity": "sha512-J5oAoysWar6GuZo0s+3bZ6sVZAC0pfqKz68De7ZgDi5z63jOVZn1uJL/+z1jeKHNbGII8kAyHF5q8LnxSX5lQg==", + "dev": true, + "requires": { + "estree-walker": "^0.6.1" + } + } } }, "rollup-plugin-terser": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-4.0.4.tgz", - "integrity": "sha512-wPANT5XKVJJ8RDUN0+wIr7UPd0lIXBo4UdJ59VmlPCtlFsE20AM+14pe+tk7YunCsWEiuzkDBY3QIkSCjtrPXg==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-5.1.1.tgz", + "integrity": "sha512-McIMCDEY8EU6Y839C09UopeRR56wXHGdvKKjlfiZG/GrP6wvZQ62u2ko/Xh1MNH2M9WDL+obAAHySljIZYCuPQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "jest-worker": "^24.0.0", - "serialize-javascript": "^1.6.1", - "terser": "^3.14.1" + "jest-worker": "^24.6.0", + "rollup-pluginutils": "^2.8.1", + "serialize-javascript": "^1.7.0", + "terser": "^4.1.0" + }, + "dependencies": { + "estree-walker": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", + "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", + "dev": true + }, + "rollup-pluginutils": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.1.tgz", + "integrity": "sha512-J5oAoysWar6GuZo0s+3bZ6sVZAC0pfqKz68De7ZgDi5z63jOVZn1uJL/+z1jeKHNbGII8kAyHF5q8LnxSX5lQg==", + "dev": true, + "requires": { + "estree-walker": "^0.6.1" + } + } } }, "rollup-pluginutils": { @@ -14285,6 +16559,21 @@ "integrity": "sha512-kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A==", "dev": true }, + "run-parallel": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", + "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", + "dev": true + }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "^1.1.1" + } + }, "rx-lite": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", @@ -14344,6 +16633,25 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "dev": true }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + }, + "dependencies": { + "ajv-keywords": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", + "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==", + "dev": true + } + } + }, "seek-bzip": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", @@ -14365,9 +16673,9 @@ } }, "semantic-release": { - "version": "15.13.13", - "resolved": "https://registry.npmjs.org/semantic-release/-/semantic-release-15.13.13.tgz", - "integrity": "sha512-KXFEj9CaeFsqSaS01wG9fiiyyYIRiTO2cxeF2pZub5+U7UE2c9qNxalZiYvZ/1sIbDFJ1FLDLa5x7XWU9+lJ8w==", + "version": "15.13.18", + "resolved": "https://registry.npmjs.org/semantic-release/-/semantic-release-15.13.18.tgz", + "integrity": "sha512-JtfdrhF1zRm91nJH/Rg3taftbWGwktJqqrJJdbmZGKYx63cfC4PoaS0jxRifGJUdmmgW/Kxz8f5bhtB+p1bu8A==", "dev": true, "requires": { "@semantic-release/commit-analyzer": "^6.1.0", @@ -14378,7 +16686,7 @@ "aggregate-error": "^3.0.0", "cosmiconfig": "^5.0.1", "debug": "^4.0.0", - "env-ci": "^3.0.0", + "env-ci": "^4.0.0", "execa": "^1.0.0", "figures": "^3.0.0", "find-versions": "^3.0.0", @@ -14391,23 +16699,13 @@ "marked-terminal": "^3.2.0", "p-locate": "^4.0.0", "p-reduce": "^2.0.0", - "read-pkg-up": "^5.0.0", + "read-pkg-up": "^6.0.0", "resolve-from": "^5.0.0", "semver": "^6.0.0", "signale": "^1.2.1", "yargs": "^13.1.0" }, "dependencies": { - "aggregate-error": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.0.tgz", - "integrity": "sha512-yKD9kEoJIR+2IFqhMwayIBgheLYbB3PS2OBhWae1L/ODTd/JF/30cW0bc9TqzRL3k4U41Dieu3BF4I29p8xesA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^3.2.0" - } - }, "figures": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-3.0.0.tgz", @@ -14418,12 +16716,13 @@ } }, "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, "get-stream": { @@ -14436,24 +16735,12 @@ } }, "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "dependencies": { - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - } + "p-locate": "^4.1.0" } }, "p-limit": { @@ -14486,6 +16773,12 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, "read-pkg": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.1.1.tgz", @@ -14496,16 +16789,25 @@ "normalize-package-data": "^2.5.0", "parse-json": "^4.0.0", "type-fest": "^0.4.1" + }, + "dependencies": { + "type-fest": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.4.1.tgz", + "integrity": "sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw==", + "dev": true + } } }, "read-pkg-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-5.0.0.tgz", - "integrity": "sha512-XBQjqOBtTzyol2CpsQOw8LHV0XbDZVG7xMMjmXAJomlVY03WOBRmYgDJETlvcg0H63AJvPRwT7GFi5rvOzUOKg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-6.0.0.tgz", + "integrity": "sha512-odtTvLl+EXo1eTsMnoUHRmg/XmXdTkwXVxy4VFE9Kp6cCq7b3l7QMdBndND3eAFzrbSAXC/WCUOQQ9rLjifKZw==", "dev": true, "requires": { - "find-up": "^3.0.0", - "read-pkg": "^5.0.0" + "find-up": "^4.0.0", + "read-pkg": "^5.1.1", + "type-fest": "^0.5.0" } }, "resolve-from": { @@ -14515,9 +16817,15 @@ "dev": true }, "semver": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.0.0.tgz", - "integrity": "sha512-0UewU+9rFapKFnlbirLi3byoOuhrSsli/z/ihNnvM24vgF+8sNBiI1LZPBSH9wJKUwaUbw+s3hToDLCXkrghrQ==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.2.0.tgz", + "integrity": "sha512-jdFC1VdUGT/2Scgbimf7FSx9iJLXoqfglSF+gJeuNWVpiE37OIbc1jywR/GJyFdz3mnkz2/id0L0J/cr0izR5A==", + "dev": true + }, + "type-fest": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.5.2.tgz", + "integrity": "sha512-DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw==", "dev": true } } @@ -14574,6 +16882,22 @@ } } }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -14621,15 +16945,6 @@ "pkg-conf": "^2.1.0" } }, - "simple-git": { - "version": "1.113.0", - "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-1.113.0.tgz", - "integrity": "sha512-i9WVsrK2u0G/cASI9nh7voxOk9mhanWY9eGtWBDSYql6m49Yk5/Fan6uZsDr/xmzv8n+eQ8ahKCoEr8cvU3h+g==", - "dev": true, - "requires": { - "debug": "^4.0.1" - } - }, "sisteransi": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.0.tgz", @@ -14794,9 +17109,9 @@ } }, "sonarqube-scanner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/sonarqube-scanner/-/sonarqube-scanner-2.4.0.tgz", - "integrity": "sha512-iuupCnLGJBjz3UfCtWsz2yCqRmdP2KvKVjM8GQFmsZOt8i/nWrAnqhdni38uyw8m+HzbRR4Rwu9VlN1ZE9XPpQ==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/sonarqube-scanner/-/sonarqube-scanner-2.5.0.tgz", + "integrity": "sha512-8pDYXZSnCml0MFjBoeMjhAeV+AIS6XqWN0nkwFmwB/Md2WtDQgag4wDIvAnn5fjZzH1k92E2zWZwLi6sb6HveA==", "dev": true, "requires": { "download": "7.0.0", @@ -14877,6 +17192,12 @@ "sort-keys": "^1.0.0" } }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", @@ -14921,9 +17242,9 @@ "dev": true }, "sourcemap-codec": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.4.tgz", - "integrity": "sha512-CYAPYdBu34781kLHkaW3m6b/uUSyMOC2R61gcYMWooeuaGtjof86ZA/8T+qVPPt7np1085CR9hmMGrySwEc8Xg==", + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.6.tgz", + "integrity": "sha512-1ZooVLYFxC448piVLBbtOxFcXwnymH9oUF8nRd3CuYDVvkRBxRl6pB4Mtas5a4drtL+E8LDgFkQNcgIw6tc8Hg==", "dev": true }, "spawn-error-forwarder": { @@ -15020,18 +17341,21 @@ "tweetnacl": "~0.14.0" } }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, "stack-utils": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", "dev": true }, - "staged-git-files": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/staged-git-files/-/staged-git-files-1.1.2.tgz", - "integrity": "sha512-0Eyrk6uXW6tg9PYkhi/V/J4zHp33aNyi2hOCmhFLqLTIhbgqWn5jlSzI+IU0VqrZq6+DbHcabQl/WP6P3BG0QA==", - "dev": true - }, "state-toggle": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.1.tgz", @@ -15065,6 +17389,16 @@ "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", "dev": true }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, "stream-combiner2": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", @@ -15075,6 +17409,35 @@ "readable-stream": "^2.0.2" } }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "dev": true + }, "strict-uri-encode": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", @@ -15082,9 +17445,9 @@ "dev": true }, "string-argv": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.0.2.tgz", - "integrity": "sha1-2sMECGkMIfPDYwo/86BYd73L1zY=", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.0.tgz", + "integrity": "sha512-NGZHq3nkSXVtGZXTBjFru3MNfoZyIzN25T7BmvdgnSC0LCJczAGLLMQLyjywSIaAoqSemgLzBRHOsnrHbt60+Q==", "dev": true }, "string-length": { @@ -15199,6 +17562,12 @@ "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", "dev": true }, + "strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true + }, "strip-indent": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", @@ -15259,16 +17628,10 @@ "integrity": "sha1-rifbOPZgp64uHDt9G8KQgZuFGeY=", "dev": true }, - "synchronous-promise": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/synchronous-promise/-/synchronous-promise-2.0.7.tgz", - "integrity": "sha512-16GbgwTmFMYFyQMLvtQjvNWh30dsFe1cAW5Fg1wm5+dg84L9Pe36mftsIRU95/W2YsISxsz/xq4VB23sqpgb/A==", - "dev": true - }, "table": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/table/-/table-5.2.3.tgz", - "integrity": "sha512-N2RsDAMvDLvYwFcwbPyF3VmVSSkuF+G1e+8inhBLtHpvwXGw4QRPEZhihQNeEN0i1up6/f6ObCJXNdlRG3YVyQ==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.1.tgz", + "integrity": "sha512-E6CK1/pZe2N75rGZQotFOdmzWQ1AILtgYbMAbAjvms0S1l5IDB47zG3nCnFGB/w+7nB3vKofbLXCH7HPBo864w==", "dev": true, "requires": { "ajv": "^6.9.1", @@ -15296,6 +17659,12 @@ "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=", "dev": true }, + "tapable": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.1.10.tgz", + "integrity": "sha1-KcNXB8K3DlDQdIK10gLo7URtr9Q=", + "dev": true + }, "tar-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", @@ -15312,14 +17681,40 @@ } }, "terser": { - "version": "3.17.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-3.17.0.tgz", - "integrity": "sha512-/FQzzPJmCpjAH9Xvk2paiWrFq+5M6aVOf+2KRbwhByISDX/EujxsK+BAvrhb6H+2rtrLCHK9N01wO014vrIwVQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.1.0.tgz", + "integrity": "sha512-O2MzVShUr/B+bxTh83ycpDR+Ocesg5qLR8kphWApRbWCkSnfKq1YPmydnVNfsJuJKHvzSgDNqFq4cr1O36oQ2A==", "dev": true, "requires": { - "commander": "^2.19.0", + "commander": "^2.20.0", "source-map": "~0.6.1", - "source-map-support": "~0.5.10" + "source-map-support": "~0.5.12" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "terser-webpack-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-W2YWmxPjjkUcOWa4pBEv4OP4er1aeQJlSo2UhtCFQCuRXEHjOFscO8VyWHj9JLlA0RzQb8Y2/Ta78XZvT54uGg==", + "dev": true, + "requires": { + "cacache": "^11.3.2", + "find-cache-dir": "^2.0.0", + "is-wsl": "^1.1.0", + "loader-utils": "^1.2.3", + "schema-utils": "^1.0.0", + "serialize-javascript": "^1.7.0", + "source-map": "^0.6.1", + "terser": "^4.0.0", + "webpack-sources": "^1.3.0", + "worker-farm": "^1.7.0" }, "dependencies": { "source-map": { @@ -15327,6 +17722,17 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "terser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.1.0.tgz", + "integrity": "sha512-O2MzVShUr/B+bxTh83ycpDR+Ocesg5qLR8kphWApRbWCkSnfKq1YPmydnVNfsJuJKHvzSgDNqFq4cr1O36oQ2A==", + "dev": true, + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + } } } }, @@ -15443,6 +17849,15 @@ "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", "dev": true }, + "timers-browserify": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", + "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", + "dev": true, + "requires": { + "setimmediate": "^1.0.4" + } + }, "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -15458,6 +17873,12 @@ "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", "dev": true }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, "to-buffer": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", @@ -15535,12 +17956,6 @@ } } }, - "toposort": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/toposort/-/toposort-2.0.2.tgz", - "integrity": "sha1-riF2gXXRVZ1IvvNUILL0li8JwzA=", - "dev": true - }, "tough-cookie": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", @@ -15625,6 +18040,12 @@ "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", "dev": true }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", @@ -15792,6 +18213,24 @@ } } }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, "unist-util-generated": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.3.tgz", @@ -15912,6 +18351,12 @@ } } }, + "upath": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.2.tgz", + "integrity": "sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q==", + "dev": true + }, "uri-js": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", @@ -15927,10 +18372,28 @@ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", "dev": true }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, "url-join": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/url-join/-/url-join-4.0.0.tgz", - "integrity": "sha1-TTNA6AfTdzvamZH4MFrNzCpmXSo=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz", + "integrity": "sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==", "dev": true }, "url-parse-lax": { @@ -15969,6 +18432,15 @@ "os-homedir": "^1.0.0" } }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -16039,6 +18511,12 @@ "unist-util-stringify-position": "^1.1.1" } }, + "vm-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.0.tgz", + "integrity": "sha512-iq+S7vZJE60yejDYM0ek6zg308+UZsdtPExWP9VZoCFCz1zkJoXFnAX7aZfd/ZwrkidzdUZL0C/ryW+JwAiIGw==", + "dev": true + }, "vscode-json-languageservice": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-3.2.1.tgz", @@ -16087,12 +18565,108 @@ "makeerror": "1.0.x" } }, + "watchpack": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", + "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", + "dev": true, + "requires": { + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + } + }, "webidl-conversions": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", "dev": true }, + "webpack": { + "version": "4.35.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.35.2.tgz", + "integrity": "sha512-TZAmorNymV4q66gAM/h90cEjG+N3627Q2MnkSgKlX/z3DlNVKUtqy57lz1WmZU2+FUZwzM+qm7cGaO95PyrX5A==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-module-context": "1.8.5", + "@webassemblyjs/wasm-edit": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5", + "acorn": "^6.0.5", + "acorn-dynamic-import": "^4.0.0", + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0", + "chrome-trace-event": "^1.0.0", + "enhanced-resolve": "^4.1.0", + "eslint-scope": "^4.0.0", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.3.0", + "loader-utils": "^1.1.0", + "memory-fs": "~0.4.1", + "micromatch": "^3.1.8", + "mkdirp": "~0.5.0", + "neo-async": "^2.5.0", + "node-libs-browser": "^2.0.0", + "schema-utils": "^1.0.0", + "tapable": "^1.1.0", + "terser-webpack-plugin": "^1.1.0", + "watchpack": "^1.5.0", + "webpack-sources": "^1.3.0" + }, + "dependencies": { + "ajv-keywords": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", + "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==", + "dev": true + }, + "enhanced-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", + "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" + } + }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true + } + } + }, + "webpack-sources": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, "whatwg-encoding": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", @@ -16160,6 +18734,15 @@ "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", "dev": true }, + "worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "dev": true, + "requires": { + "errno": "~0.1.7" + } + }, "wrap-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", @@ -16403,20 +18986,6 @@ "buffer-crc32": "~0.2.3", "fd-slicer": "~1.1.0" } - }, - "yup": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/yup/-/yup-0.27.0.tgz", - "integrity": "sha512-v1yFnE4+u9za42gG/b/081E7uNW9mUj3qtkmelLbW5YPROZzSH/KUUyJu9Wt8vxFJcT9otL/eZopS0YK1L5yPQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.0.0", - "fn-name": "~2.0.1", - "lodash": "^4.17.11", - "property-expr": "^1.5.0", - "synchronous-promise": "^2.0.6", - "toposort": "^2.0.2" - } } } } diff --git a/package.json b/package.json index 2ba0f13..38d4233 100644 --- a/package.json +++ b/package.json @@ -32,11 +32,11 @@ } ], "dependencies": { - "@sindresorhus/is": "0.16.0", + "@sindresorhus/is": "1.0.0", "debug": "4.1.1", "dotenv-extended": "2.4.0", "enum-nom-nommer": "1.0.0", - "fs-extra": "7.0.1", + "fs-extra": "8.1.0", "lodash.camelcase": "4.3.0", "lodash.get": "4.4.2", "lodash.hasin": "4.5.2", @@ -49,56 +49,56 @@ "lodash.toarray": "4.4.0", "lodash.topairs": "4.3.0", "lodash.upperfirst": "4.3.1", - "ow": "0.12.0", + "ow": "0.13.2", "parse-numeric": "1.0.2" }, "devDependencies": { - "@semantic-release/changelog": "^3.0.2", - "@semantic-release/commit-analyzer": "^6.1.0", - "@semantic-release/git": "^7.0.8", - "@semantic-release/github": "5.2.10", - "@semantic-release/npm": "5.1.7", - "@semantic-release/release-notes-generator": "^7.1.4", - "all-contributors-cli": "6.4.0", + "@semantic-release/changelog": "3.0.4", + "@semantic-release/commit-analyzer": "6.2.0", + "@semantic-release/git": "7.0.16", + "@semantic-release/github": "5.4.2", + "@semantic-release/npm": "5.1.13", + "@semantic-release/release-notes-generator": "7.2.1", + "all-contributors-cli": "6.7.0", "better-docs": "1.1.6", "codacy-coverage": "3.4.0", "commitizen": "3.1.1", "commitplease": "^3.2.0", - "coveralls": "3.0.3", - "eslint": "5.16.0", - "eslint-config-prettier": "4.2.0", + "coveralls": "3.0.4", + "eslint": "6.0.1", + "eslint-config-prettier": "6.0.0", "eslint-config-standard": "^12.0.0", "eslint-config-xo": "^0.26.0", "eslint-find-rules": "3.3.1", - "eslint-plugin-import": "2.17.2", + "eslint-plugin-import": "2.18.0", "eslint-plugin-json": "1.4.0", "eslint-plugin-no-unsafe-innerhtml": "^1.0.16", "eslint-plugin-no-unsanitized": "^3.0.2", - "eslint-plugin-node": "^9.0.1", - "eslint-plugin-prettier": "^3.0.1", - "eslint-plugin-promise": "4.1.1", + "eslint-plugin-node": "9.1.0", + "eslint-plugin-prettier": "3.1.0", + "eslint-plugin-promise": "4.2.1", "eslint-plugin-scanjs-rules": "^0.2.1", "eslint-plugin-security": "^1.4.0", - "eslint-plugin-sonarjs": "0.3.0", + "eslint-plugin-sonarjs": "0.4.0", "eslint-plugin-standard": "^4.0.0", - "eslint-plugin-unicorn": "8.0.2", + "eslint-plugin-unicorn": "9.1.1", "eslint-plugin-xss": "^0.1.9", "git-repo-info": "2.1.0", - "husky": "2.2.0", + "husky": "3.0.0", "jest": "24.8.0", "jest-junit": "^6.4.0", "jest-sonar-reporter": "2.0.0", - "jsdoc": "3.6.1", + "jsdoc": "3.6.2", "jsdoc-mermaid": "1.0.0", - "lint-staged": "^8.1.6", - "prettier": "1.17.0", - "rollup": "1.11.3", - "rollup-plugin-commonjs": "9.3.4", + "lint-staged": "9.1.0", + "prettier": "1.18.2", + "rollup": "1.16.6", + "rollup-plugin-commonjs": "10.0.1", "rollup-plugin-json": "4.0.0", - "rollup-plugin-node-resolve": "4.2.3", - "rollup-plugin-terser": "4.0.4", - "semantic-release": "15.13.13", - "sonarqube-scanner": "2.4.0" + "rollup-plugin-node-resolve": "5.2.0", + "rollup-plugin-terser": "5.1.1", + "semantic-release": "15.13.18", + "sonarqube-scanner": "2.5.0" }, "engines": { "npm": ">= 8.0.0"