From d82211b8f56ef87afd49a9c51daa549e4f830ce1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=F0=9F=91=A8=F0=9F=8F=BC=E2=80=8D=F0=9F=92=BB=20Romain=20M?= =?UTF-8?q?arcadier-Muller?= Date: Thu, 2 Aug 2018 12:20:52 +0200 Subject: [PATCH 1/6] Output cross-language names in generated docs Each `Target` implementation can contribute to this process by providing two static functions that allow the sphinx generator to obtain: * The package coordinates in the "standard" registry (e.g: maven) for an assembly * The native name (or names) for a given `Type`. There can be multiple names in case the artifacts can be used across different languages, for example Javascript & TypeScript share names, but `InterfaceType`s are not visible in Javascript. The C# names are not included, because the process to come up with those names is factored in the C# code, and the dis-ambiguation is complex to reproduce. This omission will be corrected at a later point in time. Fixes #74 --- packages/jsii-pacmak/bin/jsii-pacmak.ts | 4 +- packages/jsii-pacmak/lib/target.ts | 16 + packages/jsii-pacmak/lib/targets/java.ts | 26 +- .../jsii-pacmak/lib/targets/{npm.ts => js.ts} | 19 +- packages/jsii-pacmak/lib/targets/sphinx.ts | 64 +- packages/jsii-pacmak/package-lock.json | 5 + packages/jsii-pacmak/package.json | 2 + .../jsii-calc-base@0.5.0-beta.jsii.tgz | 0 .../sphinx/_scope_jsii-calc-base.rst | 40 + .../jsii-calc-lib@0.5.0-beta.jsii.tgz | 0 .../sphinx/_scope_jsii-calc-lib.rst | 108 +++ .../{npm => js}/jsii-calc@0.5.0-beta.jsii.tgz | 0 .../expected.jsii-calc/sphinx/jsii-calc.rst | 711 ++++++++++++++++++ 13 files changed, 986 insertions(+), 9 deletions(-) rename packages/jsii-pacmak/lib/targets/{npm.ts => js.ts} (73%) rename packages/jsii-pacmak/test/expected.jsii-calc-base/{npm => js}/jsii-calc-base@0.5.0-beta.jsii.tgz (100%) rename packages/jsii-pacmak/test/expected.jsii-calc-lib/{npm => js}/jsii-calc-lib@0.5.0-beta.jsii.tgz (100%) rename packages/jsii-pacmak/test/expected.jsii-calc/{npm => js}/jsii-calc@0.5.0-beta.jsii.tgz (100%) diff --git a/packages/jsii-pacmak/bin/jsii-pacmak.ts b/packages/jsii-pacmak/bin/jsii-pacmak.ts index a42efce2c8..9c3202fbb1 100644 --- a/packages/jsii-pacmak/bin/jsii-pacmak.ts +++ b/packages/jsii-pacmak/bin/jsii-pacmak.ts @@ -16,7 +16,7 @@ import { VERSION } from '../lib/version'; const argv = yargs .usage('Usage: jsii-pacmak [-t target,...] [-o outdir] [package-dir]') .option('targets', { - alias: 't', + alias: ['target', 't'], type: 'array', desc: 'target languages for which to generate bindings', defaultDescription: 'all targets defined in `package.json` will be generated', @@ -99,7 +99,7 @@ import { VERSION } from '../lib/version'; // outdir is either by package.json/jsii.outdir (relative to package root) or via command line (relative to cwd) const outDir = argv.outdir !== undefined ? path.resolve(process.cwd(), argv.outdir) : path.resolve(packageDir, pkg.jsii.outdir); - const targets = argv.targets || [ ...Object.keys(pkg.jsii.targets), 'npm' ]; // "npm" is an implicit target + const targets = argv.targets || [ ...Object.keys(pkg.jsii.targets), 'js' ]; // "js" is an implicit target. logging.info(`Building ${pkg.name} (${targets.join(',')}) into ${path.relative(process.cwd(), outDir)}`); diff --git a/packages/jsii-pacmak/lib/target.ts b/packages/jsii-pacmak/lib/target.ts index 86ccbd1bfc..27a5a12298 100644 --- a/packages/jsii-pacmak/lib/target.ts +++ b/packages/jsii-pacmak/lib/target.ts @@ -1,4 +1,5 @@ import fs = require('fs-extra'); +import spec = require('jsii-spec'); import path = require('path'); import { IGenerator } from './generator'; @@ -106,6 +107,21 @@ export abstract class Target { } export interface TargetConstructor { + /** + * Provides the coordinates of an assembly in the usual package repository for the target. + * @param assm the assembly for which coodinates are requested. + * @return the name of the repository, and the coordinates within it. + */ + toPackageCoordinates?: (assm: spec.Assembly) => { repository: string, coordinates: string }; + + /** + * Provides the native name(s) of a Type. Particularly useful when generating documentation. + * @param type the JSII type for which a native name is requested. + * @param options the target-specific options provided. + * @return the native name of the target for each supported language. + */ + toNativeNames?: (type: spec.Type, options: any) => { [name: string]: string }; + new(options: TargetOptions): Target; } diff --git a/packages/jsii-pacmak/lib/targets/java.ts b/packages/jsii-pacmak/lib/targets/java.ts index 03756440d4..d171147635 100644 --- a/packages/jsii-pacmak/lib/targets/java.ts +++ b/packages/jsii-pacmak/lib/targets/java.ts @@ -2,6 +2,7 @@ import fs = require('fs-extra'); import jsiiJavaRuntime = require('jsii-java-runtime'); import spec = require('jsii-spec'); import path = require('path'); +import semver = require('semver'); import xmlbuilder = require('xmlbuilder'); import { Generator } from '../generator'; import logging = require('../logging'); @@ -12,7 +13,30 @@ import { VERSION } from '../version'; // tslint:disable-next-line:no-var-requires const spdxLicenseList = require('spdx-license-list'); -export default class JavaPackageMaker extends Target { +export default class Java extends Target { + public static toPackageCoordinates(assm: spec.Assembly) { + const parsedVersion = semver.parse(assm.version); + const nextVersion = parsedVersion + && (parsedVersion.major !== 0 ? parsedVersion.inc('major') + : parsedVersion.inc('minor')); + return { + repository: 'Maven', + coordinates: xmlbuilder.create({ + dependency: { + groupId: assm.targets!.java!.maven.groupId, + artifactId: assm.targets!.java!.maven.artifactId, + version: nextVersion ? `[${assm.version},${nextVersion})` + : assm.version + } + }).end({ pretty: true }) + }; + } + + public static toNativeNames(type: spec.Type, options: any) { + const [, ...name] = type.fqn.split('.'); + return { java: [options.package, ...name].join('.') }; + } + protected readonly generator = new JavaGenerator(); constructor(options: TargetOptions) { diff --git a/packages/jsii-pacmak/lib/targets/npm.ts b/packages/jsii-pacmak/lib/targets/js.ts similarity index 73% rename from packages/jsii-pacmak/lib/targets/npm.ts rename to packages/jsii-pacmak/lib/targets/js.ts index 14f8a0ca63..98ba8bb8a4 100644 --- a/packages/jsii-pacmak/lib/targets/npm.ts +++ b/packages/jsii-pacmak/lib/targets/js.ts @@ -2,7 +2,24 @@ import * as spec from 'jsii-spec'; import { Generator } from '../generator'; import { Target, TargetOptions } from '../target'; -export default class Npm extends Target { +export default class Js extends Target { + public static toPackageCoordinates(assm: spec.Assembly) { + return { + repository: 'NPM', + coordinates: JSON.stringify({ [assm.name]: `^${assm.version}` }, null, 2) + }; + } + + public static toNativeNames(type: spec.Type) { + const [, ...name] = type.fqn.split('.'); + const resolvedName = name.join('.'); + const result: { typescript: string, javascript?: string } = { typescript: resolvedName }; + if (!spec.isInterfaceType(type)) { + result.javascript = resolvedName; + } + return result; + } + protected readonly generator = new PackOnly(); constructor(options: TargetOptions) { diff --git a/packages/jsii-pacmak/lib/targets/sphinx.ts b/packages/jsii-pacmak/lib/targets/sphinx.ts index f424a4ebd4..a6cb16ce63 100644 --- a/packages/jsii-pacmak/lib/targets/sphinx.ts +++ b/packages/jsii-pacmak/lib/targets/sphinx.ts @@ -1,8 +1,8 @@ -import * as fs from 'fs-extra'; -import * as spec from 'jsii-spec'; -import * as path from 'path'; +import fs = require('fs-extra'); +import spec = require('jsii-spec'); +import path = require('path'); import { Generator } from '../generator'; -import { Target, TargetOptions } from '../target'; +import { Target, TargetConstructor, TargetOptions } from '../target'; export default class Sphinx extends Target { protected readonly generator = new SphinxDocsGenerator(); @@ -31,6 +31,7 @@ class SphinxDocsGenerator extends Generator { private readmeFile?: string; private namespaceStack = new Array(); private tocPath = new Array(); + private targets: { [name: string]: TargetConstructor } = {}; private get topNamespace(): NamespaceStackEntry { return this.namespaceStack.length > 0 @@ -46,6 +47,11 @@ class SphinxDocsGenerator extends Generator { this.code.indentation = 3; } + public async load(packageRoot: string) { + await super.load(packageRoot); + this.targets = await Target.findAll(); + } + public async upToDate(outDir: string): Promise { const mainFile = path.join(outDir, `${fsSafeName(this.assembly.name)}.rst`); try { @@ -85,6 +91,27 @@ class SphinxDocsGenerator extends Generator { this.openSection(assm.name); this.code.line(); + if (assm.targets) { + this.code.openBlock('.. tabs::'); + this.code.line(); + for (const language of Object.keys(assm.targets).sort()) { + const target = this.targets[language]; + if (!target || !target.toPackageCoordinates) { continue; } + const { repository, coordinates } = target.toPackageCoordinates(assm); + this.code.openBlock(`.. group-tab:: ${repository}`); + this.code.line(); + + this.code.openBlock('::'); + this.code.line(); + for (const line of coordinates.split('\n')) { + this.code.line(line); + } + this.code.closeBlock(); + + this.code.closeBlock(); + } + this.code.closeBlock(); + } this.assemblyName = assm.name; } @@ -170,6 +197,7 @@ class SphinxDocsGenerator extends Generator { } this.code.openBlock(`.. py:class:: ${className}${sig}`); + this.renderNames(cls); this.renderDocsLine(cls); this.code.line(); @@ -267,6 +295,8 @@ class SphinxDocsGenerator extends Generator { } this.code.openBlock(`.. py:class:: ${enumName}`); + this.renderNames(enm); + this.renderDocsLine(enm); this.code.line(); } @@ -288,7 +318,7 @@ class SphinxDocsGenerator extends Generator { } this.code.openBlock(`.. py:class:: ${ifc.name}`); - + this.renderNames(ifc); this.renderDocsLine(ifc); this.code.line(); @@ -516,6 +546,30 @@ class SphinxDocsGenerator extends Generator { private toNativeFqn(name: string): string { return name; } + + private async renderNames(type: spec.Type) { + this.code.line(); + this.code.openBlock('.. tabs::'); + this.code.line(); + + if (this.assembly.targets) { + for (const targetName of Object.keys(this.assembly.targets).sort()) { + if (targetName === 'sphinx') { continue; } + const target = this.targets[targetName]; + if (!target || !target.toNativeNames) { continue; } + const options = this.assembly.targets[targetName]; + + const names = target.toNativeNames(type, options); + for (const language of Object.keys(names).sort()) { + this.code.openBlock(`.. code-tab:: ${language}`); + this.code.line(); + this.code.line(names[language]); + this.code.closeBlock(); + } + } + } + this.code.closeBlock(); + } } function dup(char: string, times: number) { diff --git a/packages/jsii-pacmak/package-lock.json b/packages/jsii-pacmak/package-lock.json index 502baa721c..78b19870b8 100644 --- a/packages/jsii-pacmak/package-lock.json +++ b/packages/jsii-pacmak/package-lock.json @@ -25,6 +25,11 @@ "resolved": "https://registry.npmjs.org/@types/nodeunit/-/nodeunit-0.0.30.tgz", "integrity": "sha1-SNLCcZoRjHcjuDMGw+gAsRor9ng=" }, + "@types/semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-41qEJgBH/TWgo5NFSvBCJ1qkoi3Q6ONSF2avrHq1LVEZfYpdHmj0y9SuTK+u9ZhG1sYQKBL1AWXKyLWP4RaUoQ==" + }, "@types/xmlbuilder": { "version": "0.0.32", "resolved": "https://registry.npmjs.org/@types/xmlbuilder/-/xmlbuilder-0.0.32.tgz", diff --git a/packages/jsii-pacmak/package.json b/packages/jsii-pacmak/package.json index 51eaba2bc9..7e03ed6f82 100644 --- a/packages/jsii-pacmak/package.json +++ b/packages/jsii-pacmak/package.json @@ -24,6 +24,7 @@ "jsii-dotnet-generator": "^0.5.0-beta", "jsii-java-runtime": "^0.5.0-beta", "jsii-spec": "^0.5.0-beta", + "semver": "^5.5.0", "source-map-support": "^0.5.6", "spdx-license-list": "^4.1.0", "xmlbuilder": "^10.0.0", @@ -34,6 +35,7 @@ "@types/fs-extra": "^4.0.8", "@types/node": "^9.6.18", "@types/nodeunit": "0.0.30", + "@types/semver": "^5.5.0", "@types/xmlbuilder": "^0.0.32", "@types/yargs": "^11.1.1", "jsii-build-tools": "^0.5.0-beta", diff --git a/packages/jsii-pacmak/test/expected.jsii-calc-base/npm/jsii-calc-base@0.5.0-beta.jsii.tgz b/packages/jsii-pacmak/test/expected.jsii-calc-base/js/jsii-calc-base@0.5.0-beta.jsii.tgz similarity index 100% rename from packages/jsii-pacmak/test/expected.jsii-calc-base/npm/jsii-calc-base@0.5.0-beta.jsii.tgz rename to packages/jsii-pacmak/test/expected.jsii-calc-base/js/jsii-calc-base@0.5.0-beta.jsii.tgz diff --git a/packages/jsii-pacmak/test/expected.jsii-calc-base/sphinx/_scope_jsii-calc-base.rst b/packages/jsii-pacmak/test/expected.jsii-calc-base/sphinx/_scope_jsii-calc-base.rst index 180284545f..7eb048fddb 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc-base/sphinx/_scope_jsii-calc-base.rst +++ b/packages/jsii-pacmak/test/expected.jsii-calc-base/sphinx/_scope_jsii-calc-base.rst @@ -1,6 +1,30 @@ @scope/jsii-calc-base ===================== +.. tabs:: + + .. group-tab:: Maven + + :: + + + + com.amazonaws.jsii.tests + calculator-base + [0.5.0-beta,0.5.0) + + + + .. group-tab:: NPM + + :: + + { + "@scope/jsii-calc-base": "^0.5.0-beta" + } + + + Reference --------- @@ -11,6 +35,22 @@ Base .. py:class:: Base() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.base.Base + + .. code-tab:: javascript + + Base + + .. code-tab:: typescript + + Base + + + A base class. diff --git a/packages/jsii-pacmak/test/expected.jsii-calc-lib/npm/jsii-calc-lib@0.5.0-beta.jsii.tgz b/packages/jsii-pacmak/test/expected.jsii-calc-lib/js/jsii-calc-lib@0.5.0-beta.jsii.tgz similarity index 100% rename from packages/jsii-pacmak/test/expected.jsii-calc-lib/npm/jsii-calc-lib@0.5.0-beta.jsii.tgz rename to packages/jsii-pacmak/test/expected.jsii-calc-lib/js/jsii-calc-lib@0.5.0-beta.jsii.tgz diff --git a/packages/jsii-pacmak/test/expected.jsii-calc-lib/sphinx/_scope_jsii-calc-lib.rst b/packages/jsii-pacmak/test/expected.jsii-calc-lib/sphinx/_scope_jsii-calc-lib.rst index b31d09b9c8..e313f05bcc 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc-lib/sphinx/_scope_jsii-calc-lib.rst +++ b/packages/jsii-pacmak/test/expected.jsii-calc-lib/sphinx/_scope_jsii-calc-lib.rst @@ -1,6 +1,30 @@ @scope/jsii-calc-lib ==================== +.. tabs:: + + .. group-tab:: Maven + + :: + + + + com.amazonaws.jsii.tests + calculator-lib + [0.5.0-beta,0.5.0) + + + + .. group-tab:: NPM + + :: + + { + "@scope/jsii-calc-lib": "^0.5.0-beta" + } + + + Reference --------- @@ -11,6 +35,18 @@ IFriendly (interface) .. py:class:: IFriendly + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.lib.IFriendly + + .. code-tab:: typescript + + IFriendly + + + Applies to classes that are considered friendly. These classes can be greeted with a "hello" or "goodbye" blessing and they will respond back in a fun and friendly manner. @@ -29,6 +65,18 @@ MyFirstStruct (interface) .. py:class:: MyFirstStruct + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.lib.MyFirstStruct + + .. code-tab:: typescript + + MyFirstStruct + + + This is the first struct we have created in jsii @@ -60,6 +108,22 @@ Number .. py:class:: Number(value) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.lib.Number + + .. code-tab:: javascript + + Number + + .. code-tab:: typescript + + Number + + + Represents a concrete number. @@ -88,6 +152,22 @@ Operation .. py:class:: Operation() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.lib.Operation + + .. code-tab:: javascript + + Operation + + .. code-tab:: typescript + + Operation + + + Represents an operation on values. @@ -108,6 +188,18 @@ StructWithOnlyOptionals (interface) .. py:class:: StructWithOnlyOptionals + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.lib.StructWithOnlyOptionals + + .. code-tab:: typescript + + StructWithOnlyOptionals + + + This is a struct with only optional properties. @@ -136,6 +228,22 @@ Value .. py:class:: Value() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.lib.Value + + .. code-tab:: javascript + + Value + + .. code-tab:: typescript + + Value + + + Abstract class which represents a numeric value. diff --git a/packages/jsii-pacmak/test/expected.jsii-calc/npm/jsii-calc@0.5.0-beta.jsii.tgz b/packages/jsii-pacmak/test/expected.jsii-calc/js/jsii-calc@0.5.0-beta.jsii.tgz similarity index 100% rename from packages/jsii-pacmak/test/expected.jsii-calc/npm/jsii-calc@0.5.0-beta.jsii.tgz rename to packages/jsii-pacmak/test/expected.jsii-calc/js/jsii-calc@0.5.0-beta.jsii.tgz diff --git a/packages/jsii-pacmak/test/expected.jsii-calc/sphinx/jsii-calc.rst b/packages/jsii-pacmak/test/expected.jsii-calc/sphinx/jsii-calc.rst index 0636fb9d32..15db85bbf9 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc/sphinx/jsii-calc.rst +++ b/packages/jsii-pacmak/test/expected.jsii-calc/sphinx/jsii-calc.rst @@ -1,6 +1,30 @@ jsii-calc ========= +.. tabs:: + + .. group-tab:: Maven + + :: + + + + com.amazonaws.jsii.tests + calculator + [0.5.0-beta,0.5.0) + + + + .. group-tab:: NPM + + :: + + { + "jsii-calc": "^0.5.0-beta" + } + + + .. mdinclude:: ./_jsii-calc.README.md Reference @@ -13,6 +37,22 @@ Add .. py:class:: Add(lhs, rhs) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.Add + + .. code-tab:: javascript + + Add + + .. code-tab:: typescript + + Add + + + The "+" binary operation. @@ -43,6 +83,22 @@ AllTypes .. py:class:: AllTypes() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.AllTypes + + .. code-tab:: javascript + + AllTypes + + .. code-tab:: typescript + + AllTypes + + + This class includes property for all types supported by jsii. The setters will validate that the value set is of the expected type and throw otherwise. @@ -139,6 +195,22 @@ AllTypesEnum (enum) .. py:class:: AllTypesEnum + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.AllTypesEnum + + .. code-tab:: javascript + + AllTypesEnum + + .. code-tab:: typescript + + AllTypesEnum + + + .. py:data:: MyEnumValue .. py:data:: YourEnumValue @@ -151,6 +223,22 @@ AllowedMethodNames .. py:class:: AllowedMethodNames() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.AllowedMethodNames + + .. code-tab:: javascript + + AllowedMethodNames + + .. code-tab:: typescript + + AllowedMethodNames + + + .. py:method:: getFoo(withParam) -> string @@ -196,6 +284,22 @@ AsyncVirtualMethods .. py:class:: AsyncVirtualMethods() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.AsyncVirtualMethods + + .. code-tab:: javascript + + AsyncVirtualMethods + + .. code-tab:: typescript + + AsyncVirtualMethods + + + .. py:method:: callMe() -> number @@ -240,6 +344,22 @@ BinaryOperation .. py:class:: BinaryOperation(lhs, rhs) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.BinaryOperation + + .. code-tab:: javascript + + BinaryOperation + + .. code-tab:: typescript + + BinaryOperation + + + Represents an operation with two operands. @@ -280,6 +400,22 @@ Calculator .. py:class:: Calculator([props]) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.Calculator + + .. code-tab:: javascript + + Calculator + + .. code-tab:: typescript + + Calculator + + + A calculator which maintains a current value and allows adding operations. @@ -382,6 +518,18 @@ CalculatorProps (interface) .. py:class:: CalculatorProps + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.CalculatorProps + + .. code-tab:: typescript + + CalculatorProps + + + Properties for Calculator. @@ -407,6 +555,22 @@ Base .. py:class:: Base() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.DerivedClassHasNoProperties.Base + + .. code-tab:: javascript + + DerivedClassHasNoProperties.Base + + .. code-tab:: typescript + + DerivedClassHasNoProperties.Base + + + .. py:attribute:: prop @@ -418,6 +582,22 @@ Derived .. py:class:: Derived() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.DerivedClassHasNoProperties.Derived + + .. code-tab:: javascript + + DerivedClassHasNoProperties.Derived + + .. code-tab:: typescript + + DerivedClassHasNoProperties.Derived + + + :extends: :py:class:`~jsii-calc.DerivedClassHasNoProperties.Base` @@ -428,6 +608,18 @@ DerivedStruct (interface) .. py:class:: DerivedStruct + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.DerivedStruct + + .. code-tab:: typescript + + DerivedStruct + + + A struct which derives from another struct. @@ -470,6 +662,22 @@ DoubleTrouble .. py:class:: DoubleTrouble() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.DoubleTrouble + + .. code-tab:: javascript + + DoubleTrouble + + .. code-tab:: typescript + + DoubleTrouble + + + :implements: :py:class:`~jsii-calc.IFriendlyRandomGenerator` .. py:method:: next() -> number @@ -493,6 +701,22 @@ GiveMeStructs .. py:class:: GiveMeStructs() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.GiveMeStructs + + .. code-tab:: javascript + + GiveMeStructs + + .. code-tab:: typescript + + GiveMeStructs + + + .. py:method:: readFirstNumber(first) -> number @@ -534,6 +758,18 @@ IFriendlier (interface) .. py:class:: IFriendlier + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.IFriendlier + + .. code-tab:: typescript + + IFriendlier + + + Even friendlier classes can implement this interface. @@ -562,6 +798,18 @@ IFriendlyRandomGenerator (interface) .. py:class:: IFriendlyRandomGenerator + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.IFriendlyRandomGenerator + + .. code-tab:: typescript + + IFriendlyRandomGenerator + + + :extends: :py:class:`~jsii-calc.IRandomNumberGenerator` :extends: :py:class:`@scope/jsii-calc-lib.IFriendly` @@ -571,6 +819,18 @@ IInterfaceWithProperties (interface) .. py:class:: IInterfaceWithProperties + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.IInterfaceWithProperties + + .. code-tab:: typescript + + IInterfaceWithProperties + + + .. py:attribute:: readOnlyString @@ -588,6 +848,18 @@ IInterfaceWithPropertiesExtension (interface) .. py:class:: IInterfaceWithPropertiesExtension + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.IInterfaceWithPropertiesExtension + + .. code-tab:: typescript + + IInterfaceWithPropertiesExtension + + + :extends: :py:class:`~jsii-calc.IInterfaceWithProperties` @@ -601,6 +873,18 @@ IRandomNumberGenerator (interface) .. py:class:: IRandomNumberGenerator + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.IRandomNumberGenerator + + .. code-tab:: typescript + + IRandomNumberGenerator + + + Generates random numbers. @@ -620,6 +904,22 @@ JSObjectLiteralForInterface .. py:class:: JSObjectLiteralForInterface() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.JSObjectLiteralForInterface + + .. code-tab:: javascript + + JSObjectLiteralForInterface + + .. code-tab:: typescript + + JSObjectLiteralForInterface + + + .. py:method:: giveMeFriendly() -> @scope/jsii-calc-lib.IFriendly @@ -636,6 +936,22 @@ JSObjectLiteralToNative .. py:class:: JSObjectLiteralToNative() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.JSObjectLiteralToNative + + .. code-tab:: javascript + + JSObjectLiteralToNative + + .. code-tab:: typescript + + JSObjectLiteralToNative + + + .. py:method:: returnLiteral() -> jsii-calc.JSObjectLiteralToNativeClass @@ -647,6 +963,22 @@ JSObjectLiteralToNativeClass .. py:class:: JSObjectLiteralToNativeClass() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.JSObjectLiteralToNativeClass + + .. code-tab:: javascript + + JSObjectLiteralToNativeClass + + .. code-tab:: typescript + + JSObjectLiteralToNativeClass + + + .. py:attribute:: propA @@ -663,6 +995,22 @@ JavaReservedWords .. py:class:: JavaReservedWords() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.JavaReservedWords + + .. code-tab:: javascript + + JavaReservedWords + + .. code-tab:: typescript + + JavaReservedWords + + + .. py:method:: abstract() @@ -882,6 +1230,22 @@ Multiply .. py:class:: Multiply(lhs, rhs) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.Multiply + + .. code-tab:: javascript + + Multiply + + .. code-tab:: typescript + + Multiply + + + The "*" binary operation. @@ -938,6 +1302,22 @@ Negate .. py:class:: Negate(operand) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.Negate + + .. code-tab:: javascript + + Negate + + .. code-tab:: typescript + + Negate + + + The negation operation ("-value") @@ -991,6 +1371,22 @@ NodeStandardLibrary .. py:class:: NodeStandardLibrary() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.NodeStandardLibrary + + .. code-tab:: javascript + + NodeStandardLibrary + + .. code-tab:: typescript + + NodeStandardLibrary + + + Test fixture to verify that jsii modules can use the node standard library. @@ -1035,6 +1431,22 @@ NumberGenerator .. py:class:: NumberGenerator(generator) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.NumberGenerator + + .. code-tab:: javascript + + NumberGenerator + + .. code-tab:: typescript + + NumberGenerator + + + This allows us to test that a reference can be stored for objects that implement interfaces. @@ -1063,6 +1475,22 @@ ObjectRefsInCollections .. py:class:: ObjectRefsInCollections() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.ObjectRefsInCollections + + .. code-tab:: javascript + + ObjectRefsInCollections + + .. code-tab:: typescript + + ObjectRefsInCollections + + + Verify that object references can be passed inside collections. @@ -1092,6 +1520,22 @@ OverrideReturnsObject .. py:class:: OverrideReturnsObject() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.OverrideReturnsObject + + .. code-tab:: javascript + + OverrideReturnsObject + + .. code-tab:: typescript + + OverrideReturnsObject + + + .. py:method:: test(obj) -> number @@ -1105,6 +1549,22 @@ Polymorphism .. py:class:: Polymorphism() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.Polymorphism + + .. code-tab:: javascript + + Polymorphism + + .. code-tab:: typescript + + Polymorphism + + + .. py:method:: sayHello(friendly) -> string @@ -1118,6 +1578,22 @@ Power .. py:class:: Power(base, pow) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.Power + + .. code-tab:: javascript + + Power + + .. code-tab:: typescript + + Power + + + The power operation. @@ -1156,6 +1632,18 @@ ReturnsNumber (interface) .. py:class:: ReturnsNumber + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.ReturnsNumber + + .. code-tab:: typescript + + ReturnsNumber + + + .. py:attribute:: numberProp @@ -1173,6 +1661,22 @@ RuntimeTypeChecking .. py:class:: RuntimeTypeChecking() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.RuntimeTypeChecking + + .. code-tab:: javascript + + RuntimeTypeChecking + + .. code-tab:: typescript + + RuntimeTypeChecking + + + .. py:method:: methodWithOptionalArguments(arg1, arg2, [arg3]) @@ -1192,6 +1696,22 @@ Statics .. py:class:: Statics(value) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.Statics + + .. code-tab:: javascript + + Statics + + .. code-tab:: typescript + + Statics + + + :param value: :type value: string @@ -1262,6 +1782,22 @@ StringEnum (enum) .. py:class:: StringEnum + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.StringEnum + + .. code-tab:: javascript + + StringEnum + + .. code-tab:: typescript + + StringEnum + + + .. py:data:: A .. py:data:: B @@ -1274,6 +1810,22 @@ Sum .. py:class:: Sum() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.Sum + + .. code-tab:: javascript + + Sum + + .. code-tab:: typescript + + Sum + + + An operation that sums multiple values. @@ -1300,6 +1852,22 @@ SyncVirtualMethods .. py:class:: SyncVirtualMethods() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.SyncVirtualMethods + + .. code-tab:: javascript + + SyncVirtualMethods + + .. code-tab:: typescript + + SyncVirtualMethods + + + .. py:method:: callerIsMethod() -> number @@ -1391,6 +1959,22 @@ Thrower .. py:class:: Thrower() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.Thrower + + .. code-tab:: javascript + + Thrower + + .. code-tab:: typescript + + Thrower + + + .. py:method:: throwError() @@ -1401,6 +1985,22 @@ UnaryOperation .. py:class:: UnaryOperation(operand) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.UnaryOperation + + .. code-tab:: javascript + + UnaryOperation + + .. code-tab:: typescript + + UnaryOperation + + + An operation on a single operand. @@ -1419,6 +2019,18 @@ UnionProperties (interface) .. py:class:: UnionProperties + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.UnionProperties + + .. code-tab:: typescript + + UnionProperties + + + .. py:attribute:: foo @@ -1436,6 +2048,22 @@ UseBundledDependency .. py:class:: UseBundledDependency() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.UseBundledDependency + + .. code-tab:: javascript + + UseBundledDependency + + .. code-tab:: typescript + + UseBundledDependency + + + .. py:method:: value() -> any @@ -1447,6 +2075,22 @@ UsesInterfaceWithProperties .. py:class:: UsesInterfaceWithProperties(obj) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.UsesInterfaceWithProperties + + .. code-tab:: javascript + + UsesInterfaceWithProperties + + .. code-tab:: typescript + + UsesInterfaceWithProperties + + + :param obj: :type obj: :py:class:`~jsii-calc.IInterfaceWithProperties` @@ -1479,6 +2123,22 @@ VariadicMethod .. py:class:: VariadicMethod(*prefix) + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.VariadicMethod + + .. code-tab:: javascript + + VariadicMethod + + .. code-tab:: typescript + + VariadicMethod + + + :param \*prefix: a prefix that will be use for all values returned by ``#asArray``. :type \*prefix: number @@ -1496,6 +2156,22 @@ VirtualMethodPlayground .. py:class:: VirtualMethodPlayground() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.VirtualMethodPlayground + + .. code-tab:: javascript + + VirtualMethodPlayground + + .. code-tab:: typescript + + VirtualMethodPlayground + + + .. py:method:: serialSumAsync(count) -> number @@ -1542,6 +2218,22 @@ CompositeOperation .. py:class:: CompositeOperation() + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.composition.CompositeOperation + + .. code-tab:: javascript + + composition.CompositeOperation + + .. code-tab:: typescript + + composition.CompositeOperation + + + Abstract operation composed from an expression of other operations. @@ -1601,6 +2293,25 @@ CompositionStringStyle (enum) .. py:class:: CompositionStringStyle + .. tabs:: + + .. code-tab:: java + + org.jsii.tests.calculator.composition.CompositionStringStyle + + .. code-tab:: javascript + + composition.CompositionStringStyle + + .. code-tab:: typescript + + composition.CompositionStringStyle + + + + Style of .toString() output for CompositeOperation. + + .. py:data:: Normal .. py:data:: Decorated From a48e5f75d9fbed56563d07a551e441938b13b0d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=F0=9F=91=A8=F0=9F=8F=BC=E2=80=8D=F0=9F=92=BB=20Romain=20M?= =?UTF-8?q?arcadier-Muller?= Date: Mon, 6 Aug 2018 13:38:21 +0200 Subject: [PATCH 2/6] Some PR feedback --- packages/jsii-pacmak/lib/target.ts | 42 +++++++++++++++---- packages/jsii-pacmak/lib/targets/java.ts | 43 +++++++++++-------- packages/jsii-pacmak/lib/targets/js.ts | 33 +++++++++++---- packages/jsii-pacmak/lib/targets/sphinx.ts | 48 +++++++++++++++------- packages/jsii-pacmak/package.json | 2 - 5 files changed, 120 insertions(+), 48 deletions(-) diff --git a/packages/jsii-pacmak/lib/target.ts b/packages/jsii-pacmak/lib/target.ts index 27a5a12298..e21a85f6d7 100644 --- a/packages/jsii-pacmak/lib/target.ts +++ b/packages/jsii-pacmak/lib/target.ts @@ -49,6 +49,8 @@ export abstract class Target { if (this.force || !await this.generator.upToDate(outDir)) { await this.generator.generate(this.fingerprint); await this.generator.save(outDir, tarball); + } else { + logging.info(`Generated code for ${this.targetName} was already up-to-date in ${outDir} (use --force to re-generate)`); } } @@ -108,23 +110,49 @@ export abstract class Target { export interface TargetConstructor { /** - * Provides the coordinates of an assembly in the usual package repository for the target. + * Provides information about an assembly in the usual package repositories for the target. This includes information + * necessary to locate the package in the repositories (a URL to the repository's public endpoint), as well as usage + * instructions for the various configruation files (e.g: Maven POM, Gemfile, ...) and/or installation instructions + * using the standard command line tools (npm, yarn, ...). + * * @param assm the assembly for which coodinates are requested. - * @return the name of the repository, and the coordinates within it. + * + * @return Information about the assembly in the various package managers supported for a given language. */ - toPackageCoordinates?: (assm: spec.Assembly) => { repository: string, coordinates: string }; + toPackageInfos?: (assm: spec.Assembly) => { [language: string]: PackageInfo }; /** - * Provides the native name(s) of a Type. Particularly useful when generating documentation. - * @param type the JSII type for which a native name is requested. + * Provides the native way to reference a Type, for example a Java import statement, or a Javscript require directive. + * Particularly useful when generating documentation. + * + * @param type the JSII type for which a native reference is requested. * @param options the target-specific options provided. - * @return the native name of the target for each supported language. + * + * @return the native reference for the target for each supported language. */ - toNativeNames?: (type: spec.Type, options: any) => { [name: string]: string }; + toNativeReference?: (type: spec.Type, options: any) => { [language: string]: string }; new(options: TargetOptions): Target; } +/** + * Information about a package + */ +export interface PackageInfo { + /** The name by which the package repository is known */ + repository: string; + + /** The URL to the package within it's repository */ + url: string; + + /** + * Configuration fragments or installation instructions, by client scenario (e.g: maven + gradle). Values can be a + * plain string (documentation should render as a pre-formatted block of text using monospace font), or an object + * describing a language-tagged block of code. + */ + usage: { [label: string]: string | { language: string, code: string } }; +} + export interface TargetOptions { /** The name of the target language we are generating */ targetName: string; diff --git a/packages/jsii-pacmak/lib/targets/java.ts b/packages/jsii-pacmak/lib/targets/java.ts index d171147635..ce2095b3f8 100644 --- a/packages/jsii-pacmak/lib/targets/java.ts +++ b/packages/jsii-pacmak/lib/targets/java.ts @@ -2,11 +2,10 @@ import fs = require('fs-extra'); import jsiiJavaRuntime = require('jsii-java-runtime'); import spec = require('jsii-spec'); import path = require('path'); -import semver = require('semver'); import xmlbuilder = require('xmlbuilder'); import { Generator } from '../generator'; import logging = require('../logging'); -import { Target, TargetOptions } from '../target'; +import { PackageInfo, Target, TargetOptions } from '../target'; import { shell } from '../util'; import { VERSION } from '../version'; @@ -14,27 +13,37 @@ import { VERSION } from '../version'; const spdxLicenseList = require('spdx-license-list'); export default class Java extends Target { - public static toPackageCoordinates(assm: spec.Assembly) { - const parsedVersion = semver.parse(assm.version); - const nextVersion = parsedVersion - && (parsedVersion.major !== 0 ? parsedVersion.inc('major') - : parsedVersion.inc('minor')); + public static toPackageInfos(assm: spec.Assembly): { [language: string]: PackageInfo } { + const groupId = assm.targets!.java!.maven.groupId; + const artifactId = assm.targets!.java!.maven.artifactId; + const url = `https://repo1.maven.org/maven2/${groupId.replace(/\./g, '/')}/${artifactId}/${assm.version}/`; return { - repository: 'Maven', - coordinates: xmlbuilder.create({ - dependency: { - groupId: assm.targets!.java!.maven.groupId, - artifactId: assm.targets!.java!.maven.artifactId, - version: nextVersion ? `[${assm.version},${nextVersion})` - : assm.version + java: { + repository: 'Maven Central', url, + usage: { + 'Apache Maven': { + language: 'xml', + code: xmlbuilder.create({ + dependency: { groupId, artifactId, version: assm.version } + }).end({ pretty: true }).replace(/<\?\s*xml(\s[^>]+)?>\s*/m, '') + }, + 'Apache Buildr': `'${groupId}:${artifactId}:jar:${assm.version}'`, + 'Apache Ivy': { + language: 'xml', + code: xmlbuilder.create({ + dependency: { '@groupId': groupId, '@name': artifactId, '@rev': assm.version } + }).end({ pretty: true }).replace(/<\?\s*xml(\s[^>]+)?>\s*/m, '') + }, + 'Groovy Grape': `@Grapes(\n@Grab(group='${groupId}', module='${artifactId}', version='${assm.version}')\n)`, + 'Gradle / Grails': `compile '${groupId}:${artifactId}:${assm.version}'`, } - }).end({ pretty: true }) + } }; } - public static toNativeNames(type: spec.Type, options: any) { + public static toNativeReference(type: spec.Type, options: any) { const [, ...name] = type.fqn.split('.'); - return { java: [options.package, ...name].join('.') }; + return { java: `import ${[options.package, ...name].join('.')};` }; } protected readonly generator = new JavaGenerator(); diff --git a/packages/jsii-pacmak/lib/targets/js.ts b/packages/jsii-pacmak/lib/targets/js.ts index 98ba8bb8a4..ef1a545313 100644 --- a/packages/jsii-pacmak/lib/targets/js.ts +++ b/packages/jsii-pacmak/lib/targets/js.ts @@ -1,21 +1,40 @@ import * as spec from 'jsii-spec'; import { Generator } from '../generator'; -import { Target, TargetOptions } from '../target'; +import { PackageInfo, Target, TargetOptions } from '../target'; export default class Js extends Target { - public static toPackageCoordinates(assm: spec.Assembly) { - return { + public static toPackageInfos(assm: spec.Assembly): { [language: string]: PackageInfo } { + const packageInfo: PackageInfo = { repository: 'NPM', - coordinates: JSON.stringify({ [assm.name]: `^${assm.version}` }, null, 2) + url: `https://www.npmjs.com/package/${assm.name}/v/${assm.version}`, + usage: { + 'package.json': { + language: 'js', + code: JSON.stringify({ [assm.name]: `^${assm.version}` }, null, 2) + }, + 'npm': { + language: 'console', + code: `$ npm i ${assm.name}@${assm.version}` + }, + 'yarn': { + language: 'console', + code: `$ yarn add ${assm.name}@${assm.version}` + } + } }; + return { typescript: packageInfo, javascript: packageInfo }; } - public static toNativeNames(type: spec.Type) { + public static toNativeReference(type: spec.Type) { const [, ...name] = type.fqn.split('.'); const resolvedName = name.join('.'); - const result: { typescript: string, javascript?: string } = { typescript: resolvedName }; + const result: { typescript: string, javascript?: string } = { + typescript: `import { ${resolvedName} } from '${type.assembly}';` + }; if (!spec.isInterfaceType(type)) { - result.javascript = resolvedName; + result.javascript = `const { ${resolvedName} } = require('${type.assembly}');`; + } else { + result.javascript = `// ${resolvedName} is an interface`; } return result; } diff --git a/packages/jsii-pacmak/lib/targets/sphinx.ts b/packages/jsii-pacmak/lib/targets/sphinx.ts index a6cb16ce63..626e795c7b 100644 --- a/packages/jsii-pacmak/lib/targets/sphinx.ts +++ b/packages/jsii-pacmak/lib/targets/sphinx.ts @@ -94,21 +94,37 @@ class SphinxDocsGenerator extends Generator { if (assm.targets) { this.code.openBlock('.. tabs::'); this.code.line(); - for (const language of Object.keys(assm.targets).sort()) { - const target = this.targets[language]; - if (!target || !target.toPackageCoordinates) { continue; } - const { repository, coordinates } = target.toPackageCoordinates(assm); - this.code.openBlock(`.. group-tab:: ${repository}`); - this.code.line(); + for (const targetName of Object.keys(assm.targets).sort()) { + const target = this.targets[targetName]; + if (!target || !target.toPackageInfos) { continue; } + const packageInfos = target.toPackageInfos(assm); + for (const language of Object.keys(packageInfos)) { + const packageInfo = packageInfos[language]; + this.code.openBlock(`.. group-tab:: ${language}`); + this.code.line(); - this.code.openBlock('::'); - this.code.line(); - for (const line of coordinates.split('\n')) { - this.code.line(line); - } - this.code.closeBlock(); + this.code.line(`View in \`${packageInfo.repository} <${packageInfo.url}>\`_`); + this.code.line(); + + for (const mgrName of Object.keys(packageInfo.usage).sort()) { + const mgr = packageInfo.usage[mgrName]; + this.code.line(`**${mgrName}**:`); + this.code.line(); + if (typeof mgr === 'string') { + this.code.openBlock('.. code-block:: none'); + this.code.line(); + mgr.split('\n').forEach(s => this.code.line(s)); + this.code.closeBlock(); + } else { + this.code.openBlock(`.. code-block:: ${mgr.language}`); + this.code.line(); + mgr.code.split('\n').forEach(s => this.code.line(s)); + this.code.closeBlock(); + } + } - this.code.closeBlock(); + this.code.closeBlock(); + } } this.code.closeBlock(); } @@ -548,6 +564,8 @@ class SphinxDocsGenerator extends Generator { } private async renderNames(type: spec.Type) { + this.code.line(); + this.code.line('**Language-specific names:**'); this.code.line(); this.code.openBlock('.. tabs::'); this.code.line(); @@ -556,10 +574,10 @@ class SphinxDocsGenerator extends Generator { for (const targetName of Object.keys(this.assembly.targets).sort()) { if (targetName === 'sphinx') { continue; } const target = this.targets[targetName]; - if (!target || !target.toNativeNames) { continue; } + if (!target || !target.toNativeReference) { continue; } const options = this.assembly.targets[targetName]; - const names = target.toNativeNames(type, options); + const names = target.toNativeReference(type, options); for (const language of Object.keys(names).sort()) { this.code.openBlock(`.. code-tab:: ${language}`); this.code.line(); diff --git a/packages/jsii-pacmak/package.json b/packages/jsii-pacmak/package.json index 7e03ed6f82..51eaba2bc9 100644 --- a/packages/jsii-pacmak/package.json +++ b/packages/jsii-pacmak/package.json @@ -24,7 +24,6 @@ "jsii-dotnet-generator": "^0.5.0-beta", "jsii-java-runtime": "^0.5.0-beta", "jsii-spec": "^0.5.0-beta", - "semver": "^5.5.0", "source-map-support": "^0.5.6", "spdx-license-list": "^4.1.0", "xmlbuilder": "^10.0.0", @@ -35,7 +34,6 @@ "@types/fs-extra": "^4.0.8", "@types/node": "^9.6.18", "@types/nodeunit": "0.0.30", - "@types/semver": "^5.5.0", "@types/xmlbuilder": "^0.0.32", "@types/yargs": "^11.1.1", "jsii-build-tools": "^0.5.0-beta", From 07a35624aed446d1ed2ee0ef8e67b251eff300f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=F0=9F=91=A8=F0=9F=8F=BC=E2=80=8D=F0=9F=92=BB=20Romain=20M?= =?UTF-8?q?arcadier-Muller?= Date: Mon, 6 Aug 2018 14:41:19 +0200 Subject: [PATCH 3/6] Correct capitalization of tab names & sorted tabs uniformly. --- packages/jsii-pacmak/lib/targets/sphinx.ts | 26 ++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/packages/jsii-pacmak/lib/targets/sphinx.ts b/packages/jsii-pacmak/lib/targets/sphinx.ts index 626e795c7b..50abdca366 100644 --- a/packages/jsii-pacmak/lib/targets/sphinx.ts +++ b/packages/jsii-pacmak/lib/targets/sphinx.ts @@ -98,9 +98,9 @@ class SphinxDocsGenerator extends Generator { const target = this.targets[targetName]; if (!target || !target.toPackageInfos) { continue; } const packageInfos = target.toPackageInfos(assm); - for (const language of Object.keys(packageInfos)) { + for (const language of Object.keys(packageInfos).sort()) { const packageInfo = packageInfos[language]; - this.code.openBlock(`.. group-tab:: ${language}`); + this.code.openBlock(`.. group-tab:: ${formatLanguage(language)}`); this.code.line(); this.code.line(`View in \`${packageInfo.repository} <${packageInfo.url}>\`_`); @@ -605,3 +605,25 @@ function fsSafeName(x: string) { // Strip unsafe characters return x.replace(/[^a-zA-Z0-9_.-]/g, '_'); } + +/** + * Obtains a display-friendly string from a language name. + * + * @param language the language name code (e.g: javascript) + * + * @returns a display-friendly name if possible (e.g: JavaScript) + */ +function formatLanguage(language: string): string { + switch (language) { + case 'csharp': + return 'C#'; + case 'java': + return 'Java'; + case 'javascript': + return 'JavaScript'; + case 'typescript': + return 'TypeScript'; + default: + return language; + } +} From 039c3529ef4dfaf912367213ddc4842cdc815551 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=F0=9F=91=A8=F0=9F=8F=BC=E2=80=8D=F0=9F=92=BB=20Romain=20M?= =?UTF-8?q?arcadier-Muller?= Date: Mon, 6 Aug 2018 14:46:26 +0200 Subject: [PATCH 4/6] Fix expectations (minimal) --- .../Amazon.JSII.Tests.Calculator.Base.csproj | 2 +- .../sphinx/_scope_jsii-calc-base.rst | 110 +++- .../Amazon.JSII.Tests.Calculator.Lib.csproj | 2 +- .../sphinx/_scope_jsii-calc-lib.rst | 159 +++++- .../Amazon.JSII.Tests.Calculator.csproj | 2 +- .../expected.jsii-calc/sphinx/jsii-calc.rst | 516 +++++++++++++----- 6 files changed, 623 insertions(+), 168 deletions(-) diff --git a/packages/jsii-pacmak/test/expected.jsii-calc-base/dotnet/Amazon.JSII.Tests.Calculator.Base/Amazon.JSII.Tests.Calculator.Base.csproj b/packages/jsii-pacmak/test/expected.jsii-calc-base/dotnet/Amazon.JSII.Tests.Calculator.Base/Amazon.JSII.Tests.Calculator.Base.csproj index 11b147721d..6ba333abee 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc-base/dotnet/Amazon.JSII.Tests.Calculator.Base/Amazon.JSII.Tests.Calculator.Base.csproj +++ b/packages/jsii-pacmak/test/expected.jsii-calc-base/dotnet/Amazon.JSII.Tests.Calculator.Base/Amazon.JSII.Tests.Calculator.Base.csproj @@ -10,7 +10,7 @@ - + diff --git a/packages/jsii-pacmak/test/expected.jsii-calc-base/sphinx/_scope_jsii-calc-base.rst b/packages/jsii-pacmak/test/expected.jsii-calc-base/sphinx/_scope_jsii-calc-base.rst index 138269c977..67364bfef1 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc-base/sphinx/_scope_jsii-calc-base.rst +++ b/packages/jsii-pacmak/test/expected.jsii-calc-base/sphinx/_scope_jsii-calc-base.rst @@ -3,26 +3,96 @@ .. tabs:: - .. group-tab:: Maven + .. group-tab:: Java - :: + View in `Maven Central `_ + + **Apache Buildr**: + + .. code-block:: none + + 'software.amazon.jsii.tests:calculator-base:jar:0.5.0-beta' + + **Apache Ivy**: + + .. code-block:: xml + + + + **Apache Maven**: + + .. code-block:: xml - - com.amazonaws.jsii.tests + software.amazon.jsii.tests calculator-base - [0.5.0-beta,0.5.0) + 0.5.0-beta + **Gradle / Grails**: + + .. code-block:: none + + compile 'software.amazon.jsii.tests:calculator-base:0.5.0-beta' + + **Groovy Grape**: + + .. code-block:: none + + @Grapes( + @Grab(group='software.amazon.jsii.tests', module='calculator-base', version='0.5.0-beta') + ) + + + .. group-tab:: JavaScript + + View in `NPM `_ + + **npm**: + + .. code-block:: console + + $ npm i @scope/jsii-calc-base@0.5.0-beta + + **package.json**: + + .. code-block:: js + + { + "@scope/jsii-calc-base": "^0.5.0-beta" + } + + **yarn**: - .. group-tab:: NPM + .. code-block:: console - :: + $ yarn add @scope/jsii-calc-base@0.5.0-beta + + + .. group-tab:: TypeScript + + View in `NPM `_ + + **npm**: + + .. code-block:: console + + $ npm i @scope/jsii-calc-base@0.5.0-beta + + **package.json**: + + .. code-block:: js { "@scope/jsii-calc-base": "^0.5.0-beta" } + **yarn**: + + .. code-block:: console + + $ yarn add @scope/jsii-calc-base@0.5.0-beta + Reference @@ -35,19 +105,21 @@ Base .. py:class:: Base() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.base.Base + import software.amazon.jsii.tests.calculator.base.Base; .. code-tab:: javascript - Base + const { Base } = require('@scope/jsii-calc-base'); .. code-tab:: typescript - Base + import { Base } from '@scope/jsii-calc-base'; @@ -67,6 +139,24 @@ BaseProps (interface) .. py:class:: BaseProps + **Language-specific names:** + + .. tabs:: + + .. code-tab:: java + + import software.amazon.jsii.tests.calculator.base.BaseProps; + + .. code-tab:: javascript + + // BaseProps is an interface + + .. code-tab:: typescript + + import { BaseProps } from '@scope/jsii-calc-base'; + + + :extends: :py:class:`@scope/jsii-calc-base-of-base.VeryBaseProps` diff --git a/packages/jsii-pacmak/test/expected.jsii-calc-lib/dotnet/Amazon.JSII.Tests.Calculator.Lib/Amazon.JSII.Tests.Calculator.Lib.csproj b/packages/jsii-pacmak/test/expected.jsii-calc-lib/dotnet/Amazon.JSII.Tests.Calculator.Lib/Amazon.JSII.Tests.Calculator.Lib.csproj index e19785e13c..743457bdfe 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc-lib/dotnet/Amazon.JSII.Tests.Calculator.Lib/Amazon.JSII.Tests.Calculator.Lib.csproj +++ b/packages/jsii-pacmak/test/expected.jsii-calc-lib/dotnet/Amazon.JSII.Tests.Calculator.Lib/Amazon.JSII.Tests.Calculator.Lib.csproj @@ -10,7 +10,7 @@ - + diff --git a/packages/jsii-pacmak/test/expected.jsii-calc-lib/sphinx/_scope_jsii-calc-lib.rst b/packages/jsii-pacmak/test/expected.jsii-calc-lib/sphinx/_scope_jsii-calc-lib.rst index fe5774f967..2c2412c71e 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc-lib/sphinx/_scope_jsii-calc-lib.rst +++ b/packages/jsii-pacmak/test/expected.jsii-calc-lib/sphinx/_scope_jsii-calc-lib.rst @@ -3,26 +3,96 @@ .. tabs:: - .. group-tab:: Maven + .. group-tab:: Java - :: + View in `Maven Central `_ + + **Apache Buildr**: + + .. code-block:: none + + 'software.amazon.jsii.tests:calculator-lib:jar:0.5.0-beta' + + **Apache Ivy**: + + .. code-block:: xml + + + + **Apache Maven**: + + .. code-block:: xml - - com.amazonaws.jsii.tests + software.amazon.jsii.tests calculator-lib - [0.5.0-beta,0.5.0) + 0.5.0-beta + **Gradle / Grails**: + + .. code-block:: none + + compile 'software.amazon.jsii.tests:calculator-lib:0.5.0-beta' + + **Groovy Grape**: + + .. code-block:: none + + @Grapes( + @Grab(group='software.amazon.jsii.tests', module='calculator-lib', version='0.5.0-beta') + ) + + + .. group-tab:: JavaScript + + View in `NPM `_ + + **npm**: + + .. code-block:: console + + $ npm i @scope/jsii-calc-lib@0.5.0-beta + + **package.json**: + + .. code-block:: js + + { + "@scope/jsii-calc-lib": "^0.5.0-beta" + } + + **yarn**: + + .. code-block:: console + + $ yarn add @scope/jsii-calc-lib@0.5.0-beta + + + .. group-tab:: TypeScript + + View in `NPM `_ + + **npm**: + + .. code-block:: console + + $ npm i @scope/jsii-calc-lib@0.5.0-beta - .. group-tab:: NPM + **package.json**: - :: + .. code-block:: js { "@scope/jsii-calc-lib": "^0.5.0-beta" } + **yarn**: + + .. code-block:: console + + $ yarn add @scope/jsii-calc-lib@0.5.0-beta + Reference @@ -35,6 +105,27 @@ EnumFromScopedModule (enum) .. py:class:: EnumFromScopedModule + **Language-specific names:** + + .. tabs:: + + .. code-tab:: java + + import software.amazon.jsii.tests.calculator.lib.EnumFromScopedModule; + + .. code-tab:: javascript + + const { EnumFromScopedModule } = require('@scope/jsii-calc-lib'); + + .. code-tab:: typescript + + import { EnumFromScopedModule } from '@scope/jsii-calc-lib'; + + + + Check that enums from @scoped packages can be references. See awslabs/jsii#138 + + .. py:data:: Value1 .. py:data:: Value2 @@ -45,15 +136,21 @@ IFriendly (interface) .. py:class:: IFriendly + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.lib.IFriendly + import software.amazon.jsii.tests.calculator.lib.IFriendly; + + .. code-tab:: javascript + + // IFriendly is an interface .. code-tab:: typescript - IFriendly + import { IFriendly } from '@scope/jsii-calc-lib'; @@ -75,15 +172,21 @@ MyFirstStruct (interface) .. py:class:: MyFirstStruct + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.lib.MyFirstStruct + import software.amazon.jsii.tests.calculator.lib.MyFirstStruct; + + .. code-tab:: javascript + + // MyFirstStruct is an interface .. code-tab:: typescript - MyFirstStruct + import { MyFirstStruct } from '@scope/jsii-calc-lib'; @@ -118,19 +221,21 @@ Number .. py:class:: Number(value) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.lib.Number + import software.amazon.jsii.tests.calculator.lib.Number; .. code-tab:: javascript - Number + const { Number } = require('@scope/jsii-calc-lib'); .. code-tab:: typescript - Number + import { Number } from '@scope/jsii-calc-lib'; @@ -162,19 +267,21 @@ Operation .. py:class:: Operation() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.lib.Operation + import software.amazon.jsii.tests.calculator.lib.Operation; .. code-tab:: javascript - Operation + const { Operation } = require('@scope/jsii-calc-lib'); .. code-tab:: typescript - Operation + import { Operation } from '@scope/jsii-calc-lib'; @@ -198,15 +305,21 @@ StructWithOnlyOptionals (interface) .. py:class:: StructWithOnlyOptionals + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.lib.StructWithOnlyOptionals + import software.amazon.jsii.tests.calculator.lib.StructWithOnlyOptionals; + + .. code-tab:: javascript + + // StructWithOnlyOptionals is an interface .. code-tab:: typescript - StructWithOnlyOptionals + import { StructWithOnlyOptionals } from '@scope/jsii-calc-lib'; @@ -238,19 +351,21 @@ Value .. py:class:: Value() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.lib.Value + import software.amazon.jsii.tests.calculator.lib.Value; .. code-tab:: javascript - Value + const { Value } = require('@scope/jsii-calc-lib'); .. code-tab:: typescript - Value + import { Value } from '@scope/jsii-calc-lib'; diff --git a/packages/jsii-pacmak/test/expected.jsii-calc/dotnet/Amazon.JSII.Tests.Calculator/Amazon.JSII.Tests.Calculator.csproj b/packages/jsii-pacmak/test/expected.jsii-calc/dotnet/Amazon.JSII.Tests.Calculator/Amazon.JSII.Tests.Calculator.csproj index 5126452d3d..882d91f7e4 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc/dotnet/Amazon.JSII.Tests.Calculator/Amazon.JSII.Tests.Calculator.csproj +++ b/packages/jsii-pacmak/test/expected.jsii-calc/dotnet/Amazon.JSII.Tests.Calculator/Amazon.JSII.Tests.Calculator.csproj @@ -10,7 +10,7 @@ - + diff --git a/packages/jsii-pacmak/test/expected.jsii-calc/sphinx/jsii-calc.rst b/packages/jsii-pacmak/test/expected.jsii-calc/sphinx/jsii-calc.rst index 41338ae09a..fc91168d28 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc/sphinx/jsii-calc.rst +++ b/packages/jsii-pacmak/test/expected.jsii-calc/sphinx/jsii-calc.rst @@ -3,26 +3,96 @@ jsii-calc .. tabs:: - .. group-tab:: Maven + .. group-tab:: Java - :: + View in `Maven Central `_ + + **Apache Buildr**: + + .. code-block:: none + + 'software.amazon.jsii.tests:calculator:jar:0.5.0-beta' + + **Apache Ivy**: + + .. code-block:: xml + + + + **Apache Maven**: + + .. code-block:: xml - - com.amazonaws.jsii.tests + software.amazon.jsii.tests calculator - [0.5.0-beta,0.5.0) + 0.5.0-beta + **Gradle / Grails**: + + .. code-block:: none + + compile 'software.amazon.jsii.tests:calculator:0.5.0-beta' + + **Groovy Grape**: + + .. code-block:: none + + @Grapes( + @Grab(group='software.amazon.jsii.tests', module='calculator', version='0.5.0-beta') + ) + + + .. group-tab:: JavaScript + + View in `NPM `_ + + **npm**: + + .. code-block:: console + + $ npm i jsii-calc@0.5.0-beta - .. group-tab:: NPM + **package.json**: - :: + .. code-block:: js { "jsii-calc": "^0.5.0-beta" } + **yarn**: + + .. code-block:: console + + $ yarn add jsii-calc@0.5.0-beta + + + .. group-tab:: TypeScript + + View in `NPM `_ + + **npm**: + + .. code-block:: console + + $ npm i jsii-calc@0.5.0-beta + + **package.json**: + + .. code-block:: js + + { + "jsii-calc": "^0.5.0-beta" + } + + **yarn**: + + .. code-block:: console + + $ yarn add jsii-calc@0.5.0-beta + .. mdinclude:: ./_jsii-calc.README.md @@ -37,19 +107,21 @@ Add .. py:class:: Add(lhs, rhs) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.Add + import software.amazon.jsii.tests.calculator.Add; .. code-tab:: javascript - Add + const { Add } = require('jsii-calc'); .. code-tab:: typescript - Add + import { Add } from 'jsii-calc'; @@ -83,19 +155,21 @@ AllTypes .. py:class:: AllTypes() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.AllTypes + import software.amazon.jsii.tests.calculator.AllTypes; .. code-tab:: javascript - AllTypes + const { AllTypes } = require('jsii-calc'); .. code-tab:: typescript - AllTypes + import { AllTypes } from 'jsii-calc'; @@ -195,19 +269,21 @@ AllTypesEnum (enum) .. py:class:: AllTypesEnum + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.AllTypesEnum + import software.amazon.jsii.tests.calculator.AllTypesEnum; .. code-tab:: javascript - AllTypesEnum + const { AllTypesEnum } = require('jsii-calc'); .. code-tab:: typescript - AllTypesEnum + import { AllTypesEnum } from 'jsii-calc'; @@ -223,19 +299,21 @@ AllowedMethodNames .. py:class:: AllowedMethodNames() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.AllowedMethodNames + import software.amazon.jsii.tests.calculator.AllowedMethodNames; .. code-tab:: javascript - AllowedMethodNames + const { AllowedMethodNames } = require('jsii-calc'); .. code-tab:: typescript - AllowedMethodNames + import { AllowedMethodNames } from 'jsii-calc'; @@ -284,19 +362,21 @@ AsyncVirtualMethods .. py:class:: AsyncVirtualMethods() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.AsyncVirtualMethods + import software.amazon.jsii.tests.calculator.AsyncVirtualMethods; .. code-tab:: javascript - AsyncVirtualMethods + const { AsyncVirtualMethods } = require('jsii-calc'); .. code-tab:: typescript - AsyncVirtualMethods + import { AsyncVirtualMethods } from 'jsii-calc'; @@ -344,19 +424,21 @@ BinaryOperation .. py:class:: BinaryOperation(lhs, rhs) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.BinaryOperation + import software.amazon.jsii.tests.calculator.BinaryOperation; .. code-tab:: javascript - BinaryOperation + const { BinaryOperation } = require('jsii-calc'); .. code-tab:: typescript - BinaryOperation + import { BinaryOperation } from 'jsii-calc'; @@ -400,19 +482,21 @@ Calculator .. py:class:: Calculator([props]) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.Calculator + import software.amazon.jsii.tests.calculator.Calculator; .. code-tab:: javascript - Calculator + const { Calculator } = require('jsii-calc'); .. code-tab:: typescript - Calculator + import { Calculator } from 'jsii-calc'; @@ -518,15 +602,21 @@ CalculatorProps (interface) .. py:class:: CalculatorProps + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.CalculatorProps + import software.amazon.jsii.tests.calculator.CalculatorProps; + + .. code-tab:: javascript + + // CalculatorProps is an interface .. code-tab:: typescript - CalculatorProps + import { CalculatorProps } from 'jsii-calc'; @@ -555,19 +645,21 @@ Base .. py:class:: Base() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.DerivedClassHasNoProperties.Base + import software.amazon.jsii.tests.calculator.DerivedClassHasNoProperties.Base; .. code-tab:: javascript - DerivedClassHasNoProperties.Base + const { DerivedClassHasNoProperties.Base } = require('jsii-calc'); .. code-tab:: typescript - DerivedClassHasNoProperties.Base + import { DerivedClassHasNoProperties.Base } from 'jsii-calc'; @@ -582,19 +674,21 @@ Derived .. py:class:: Derived() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.DerivedClassHasNoProperties.Derived + import software.amazon.jsii.tests.calculator.DerivedClassHasNoProperties.Derived; .. code-tab:: javascript - DerivedClassHasNoProperties.Derived + const { DerivedClassHasNoProperties.Derived } = require('jsii-calc'); .. code-tab:: typescript - DerivedClassHasNoProperties.Derived + import { DerivedClassHasNoProperties.Derived } from 'jsii-calc'; @@ -608,15 +702,21 @@ DerivedStruct (interface) .. py:class:: DerivedStruct + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.DerivedStruct + import software.amazon.jsii.tests.calculator.DerivedStruct; + + .. code-tab:: javascript + + // DerivedStruct is an interface .. code-tab:: typescript - DerivedStruct + import { DerivedStruct } from 'jsii-calc'; @@ -662,19 +762,21 @@ DoubleTrouble .. py:class:: DoubleTrouble() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.DoubleTrouble + import software.amazon.jsii.tests.calculator.DoubleTrouble; .. code-tab:: javascript - DoubleTrouble + const { DoubleTrouble } = require('jsii-calc'); .. code-tab:: typescript - DoubleTrouble + import { DoubleTrouble } from 'jsii-calc'; @@ -701,19 +803,21 @@ GiveMeStructs .. py:class:: GiveMeStructs() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.GiveMeStructs + import software.amazon.jsii.tests.calculator.GiveMeStructs; .. code-tab:: javascript - GiveMeStructs + const { GiveMeStructs } = require('jsii-calc'); .. code-tab:: typescript - GiveMeStructs + import { GiveMeStructs } from 'jsii-calc'; @@ -758,15 +862,21 @@ IFriendlier (interface) .. py:class:: IFriendlier + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.IFriendlier + import software.amazon.jsii.tests.calculator.IFriendlier; + + .. code-tab:: javascript + + // IFriendlier is an interface .. code-tab:: typescript - IFriendlier + import { IFriendlier } from 'jsii-calc'; @@ -798,15 +908,21 @@ IFriendlyRandomGenerator (interface) .. py:class:: IFriendlyRandomGenerator + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.IFriendlyRandomGenerator + import software.amazon.jsii.tests.calculator.IFriendlyRandomGenerator; + + .. code-tab:: javascript + + // IFriendlyRandomGenerator is an interface .. code-tab:: typescript - IFriendlyRandomGenerator + import { IFriendlyRandomGenerator } from 'jsii-calc'; @@ -819,15 +935,21 @@ IInterfaceWithProperties (interface) .. py:class:: IInterfaceWithProperties + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.IInterfaceWithProperties + import software.amazon.jsii.tests.calculator.IInterfaceWithProperties; + + .. code-tab:: javascript + + // IInterfaceWithProperties is an interface .. code-tab:: typescript - IInterfaceWithProperties + import { IInterfaceWithProperties } from 'jsii-calc'; @@ -848,15 +970,21 @@ IInterfaceWithPropertiesExtension (interface) .. py:class:: IInterfaceWithPropertiesExtension + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.IInterfaceWithPropertiesExtension + import software.amazon.jsii.tests.calculator.IInterfaceWithPropertiesExtension; + + .. code-tab:: javascript + + // IInterfaceWithPropertiesExtension is an interface .. code-tab:: typescript - IInterfaceWithPropertiesExtension + import { IInterfaceWithPropertiesExtension } from 'jsii-calc'; @@ -873,15 +1001,21 @@ IRandomNumberGenerator (interface) .. py:class:: IRandomNumberGenerator + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.IRandomNumberGenerator + import software.amazon.jsii.tests.calculator.IRandomNumberGenerator; + + .. code-tab:: javascript + + // IRandomNumberGenerator is an interface .. code-tab:: typescript - IRandomNumberGenerator + import { IRandomNumberGenerator } from 'jsii-calc'; @@ -904,6 +1038,24 @@ ImplictBaseOfBase (interface) .. py:class:: ImplictBaseOfBase + **Language-specific names:** + + .. tabs:: + + .. code-tab:: java + + import software.amazon.jsii.tests.calculator.ImplictBaseOfBase; + + .. code-tab:: javascript + + // ImplictBaseOfBase is an interface + + .. code-tab:: typescript + + import { ImplictBaseOfBase } from 'jsii-calc'; + + + :extends: :py:class:`@scope/jsii-calc-base.BaseProps` @@ -917,19 +1069,21 @@ JSObjectLiteralForInterface .. py:class:: JSObjectLiteralForInterface() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.JSObjectLiteralForInterface + import software.amazon.jsii.tests.calculator.JSObjectLiteralForInterface; .. code-tab:: javascript - JSObjectLiteralForInterface + const { JSObjectLiteralForInterface } = require('jsii-calc'); .. code-tab:: typescript - JSObjectLiteralForInterface + import { JSObjectLiteralForInterface } from 'jsii-calc'; @@ -949,19 +1103,21 @@ JSObjectLiteralToNative .. py:class:: JSObjectLiteralToNative() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.JSObjectLiteralToNative + import software.amazon.jsii.tests.calculator.JSObjectLiteralToNative; .. code-tab:: javascript - JSObjectLiteralToNative + const { JSObjectLiteralToNative } = require('jsii-calc'); .. code-tab:: typescript - JSObjectLiteralToNative + import { JSObjectLiteralToNative } from 'jsii-calc'; @@ -976,19 +1132,21 @@ JSObjectLiteralToNativeClass .. py:class:: JSObjectLiteralToNativeClass() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.JSObjectLiteralToNativeClass + import software.amazon.jsii.tests.calculator.JSObjectLiteralToNativeClass; .. code-tab:: javascript - JSObjectLiteralToNativeClass + const { JSObjectLiteralToNativeClass } = require('jsii-calc'); .. code-tab:: typescript - JSObjectLiteralToNativeClass + import { JSObjectLiteralToNativeClass } from 'jsii-calc'; @@ -1008,19 +1166,21 @@ JavaReservedWords .. py:class:: JavaReservedWords() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.JavaReservedWords + import software.amazon.jsii.tests.calculator.JavaReservedWords; .. code-tab:: javascript - JavaReservedWords + const { JavaReservedWords } = require('jsii-calc'); .. code-tab:: typescript - JavaReservedWords + import { JavaReservedWords } from 'jsii-calc'; @@ -1243,19 +1403,21 @@ Multiply .. py:class:: Multiply(lhs, rhs) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.Multiply + import software.amazon.jsii.tests.calculator.Multiply; .. code-tab:: javascript - Multiply + const { Multiply } = require('jsii-calc'); .. code-tab:: typescript - Multiply + import { Multiply } from 'jsii-calc'; @@ -1315,19 +1477,21 @@ Negate .. py:class:: Negate(operand) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.Negate + import software.amazon.jsii.tests.calculator.Negate; .. code-tab:: javascript - Negate + const { Negate } = require('jsii-calc'); .. code-tab:: typescript - Negate + import { Negate } from 'jsii-calc'; @@ -1384,19 +1548,21 @@ NodeStandardLibrary .. py:class:: NodeStandardLibrary() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.NodeStandardLibrary + import software.amazon.jsii.tests.calculator.NodeStandardLibrary; .. code-tab:: javascript - NodeStandardLibrary + const { NodeStandardLibrary } = require('jsii-calc'); .. code-tab:: typescript - NodeStandardLibrary + import { NodeStandardLibrary } from 'jsii-calc'; @@ -1444,19 +1610,21 @@ NumberGenerator .. py:class:: NumberGenerator(generator) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.NumberGenerator + import software.amazon.jsii.tests.calculator.NumberGenerator; .. code-tab:: javascript - NumberGenerator + const { NumberGenerator } = require('jsii-calc'); .. code-tab:: typescript - NumberGenerator + import { NumberGenerator } from 'jsii-calc'; @@ -1488,19 +1656,21 @@ ObjectRefsInCollections .. py:class:: ObjectRefsInCollections() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.ObjectRefsInCollections + import software.amazon.jsii.tests.calculator.ObjectRefsInCollections; .. code-tab:: javascript - ObjectRefsInCollections + const { ObjectRefsInCollections } = require('jsii-calc'); .. code-tab:: typescript - ObjectRefsInCollections + import { ObjectRefsInCollections } from 'jsii-calc'; @@ -1533,19 +1703,21 @@ OverrideReturnsObject .. py:class:: OverrideReturnsObject() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.OverrideReturnsObject + import software.amazon.jsii.tests.calculator.OverrideReturnsObject; .. code-tab:: javascript - OverrideReturnsObject + const { OverrideReturnsObject } = require('jsii-calc'); .. code-tab:: typescript - OverrideReturnsObject + import { OverrideReturnsObject } from 'jsii-calc'; @@ -1562,19 +1734,21 @@ Polymorphism .. py:class:: Polymorphism() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.Polymorphism + import software.amazon.jsii.tests.calculator.Polymorphism; .. code-tab:: javascript - Polymorphism + const { Polymorphism } = require('jsii-calc'); .. code-tab:: typescript - Polymorphism + import { Polymorphism } from 'jsii-calc'; @@ -1591,19 +1765,21 @@ Power .. py:class:: Power(base, pow) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.Power + import software.amazon.jsii.tests.calculator.Power; .. code-tab:: javascript - Power + const { Power } = require('jsii-calc'); .. code-tab:: typescript - Power + import { Power } from 'jsii-calc'; @@ -1645,6 +1821,24 @@ ReferenceEnumFromScopedPackage .. py:class:: ReferenceEnumFromScopedPackage() + **Language-specific names:** + + .. tabs:: + + .. code-tab:: java + + import software.amazon.jsii.tests.calculator.ReferenceEnumFromScopedPackage; + + .. code-tab:: javascript + + const { ReferenceEnumFromScopedPackage } = require('jsii-calc'); + + .. code-tab:: typescript + + import { ReferenceEnumFromScopedPackage } from 'jsii-calc'; + + + See awslabs/jsii#138 @@ -1670,15 +1864,21 @@ ReturnsNumber (interface) .. py:class:: ReturnsNumber + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.ReturnsNumber + import software.amazon.jsii.tests.calculator.ReturnsNumber; + + .. code-tab:: javascript + + // ReturnsNumber is an interface .. code-tab:: typescript - ReturnsNumber + import { ReturnsNumber } from 'jsii-calc'; @@ -1699,19 +1899,21 @@ RuntimeTypeChecking .. py:class:: RuntimeTypeChecking() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.RuntimeTypeChecking + import software.amazon.jsii.tests.calculator.RuntimeTypeChecking; .. code-tab:: javascript - RuntimeTypeChecking + const { RuntimeTypeChecking } = require('jsii-calc'); .. code-tab:: typescript - RuntimeTypeChecking + import { RuntimeTypeChecking } from 'jsii-calc'; @@ -1734,19 +1936,21 @@ Statics .. py:class:: Statics(value) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.Statics + import software.amazon.jsii.tests.calculator.Statics; .. code-tab:: javascript - Statics + const { Statics } = require('jsii-calc'); .. code-tab:: typescript - Statics + import { Statics } from 'jsii-calc'; @@ -1820,19 +2024,21 @@ StringEnum (enum) .. py:class:: StringEnum + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.StringEnum + import software.amazon.jsii.tests.calculator.StringEnum; .. code-tab:: javascript - StringEnum + const { StringEnum } = require('jsii-calc'); .. code-tab:: typescript - StringEnum + import { StringEnum } from 'jsii-calc'; @@ -1848,19 +2054,21 @@ Sum .. py:class:: Sum() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.Sum + import software.amazon.jsii.tests.calculator.Sum; .. code-tab:: javascript - Sum + const { Sum } = require('jsii-calc'); .. code-tab:: typescript - Sum + import { Sum } from 'jsii-calc'; @@ -1890,19 +2098,21 @@ SyncVirtualMethods .. py:class:: SyncVirtualMethods() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.SyncVirtualMethods + import software.amazon.jsii.tests.calculator.SyncVirtualMethods; .. code-tab:: javascript - SyncVirtualMethods + const { SyncVirtualMethods } = require('jsii-calc'); .. code-tab:: typescript - SyncVirtualMethods + import { SyncVirtualMethods } from 'jsii-calc'; @@ -1997,19 +2207,21 @@ Thrower .. py:class:: Thrower() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.Thrower + import software.amazon.jsii.tests.calculator.Thrower; .. code-tab:: javascript - Thrower + const { Thrower } = require('jsii-calc'); .. code-tab:: typescript - Thrower + import { Thrower } from 'jsii-calc'; @@ -2023,19 +2235,21 @@ UnaryOperation .. py:class:: UnaryOperation(operand) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.UnaryOperation + import software.amazon.jsii.tests.calculator.UnaryOperation; .. code-tab:: javascript - UnaryOperation + const { UnaryOperation } = require('jsii-calc'); .. code-tab:: typescript - UnaryOperation + import { UnaryOperation } from 'jsii-calc'; @@ -2057,15 +2271,21 @@ UnionProperties (interface) .. py:class:: UnionProperties + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.UnionProperties + import software.amazon.jsii.tests.calculator.UnionProperties; + + .. code-tab:: javascript + + // UnionProperties is an interface .. code-tab:: typescript - UnionProperties + import { UnionProperties } from 'jsii-calc'; @@ -2086,19 +2306,21 @@ UseBundledDependency .. py:class:: UseBundledDependency() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.UseBundledDependency + import software.amazon.jsii.tests.calculator.UseBundledDependency; .. code-tab:: javascript - UseBundledDependency + const { UseBundledDependency } = require('jsii-calc'); .. code-tab:: typescript - UseBundledDependency + import { UseBundledDependency } from 'jsii-calc'; @@ -2113,6 +2335,24 @@ UseCalcBase .. py:class:: UseCalcBase() + **Language-specific names:** + + .. tabs:: + + .. code-tab:: java + + import software.amazon.jsii.tests.calculator.UseCalcBase; + + .. code-tab:: javascript + + const { UseCalcBase } = require('jsii-calc'); + + .. code-tab:: typescript + + import { UseCalcBase } from 'jsii-calc'; + + + Depend on a type from jsii-calc-base as a test for awslabs/jsii#128 @@ -2127,19 +2367,21 @@ UsesInterfaceWithProperties .. py:class:: UsesInterfaceWithProperties(obj) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.UsesInterfaceWithProperties + import software.amazon.jsii.tests.calculator.UsesInterfaceWithProperties; .. code-tab:: javascript - UsesInterfaceWithProperties + const { UsesInterfaceWithProperties } = require('jsii-calc'); .. code-tab:: typescript - UsesInterfaceWithProperties + import { UsesInterfaceWithProperties } from 'jsii-calc'; @@ -2175,19 +2417,21 @@ VariadicMethod .. py:class:: VariadicMethod(*prefix) + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.VariadicMethod + import software.amazon.jsii.tests.calculator.VariadicMethod; .. code-tab:: javascript - VariadicMethod + const { VariadicMethod } = require('jsii-calc'); .. code-tab:: typescript - VariadicMethod + import { VariadicMethod } from 'jsii-calc'; @@ -2208,19 +2452,21 @@ VirtualMethodPlayground .. py:class:: VirtualMethodPlayground() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.VirtualMethodPlayground + import software.amazon.jsii.tests.calculator.VirtualMethodPlayground; .. code-tab:: javascript - VirtualMethodPlayground + const { VirtualMethodPlayground } = require('jsii-calc'); .. code-tab:: typescript - VirtualMethodPlayground + import { VirtualMethodPlayground } from 'jsii-calc'; @@ -2270,19 +2516,21 @@ CompositeOperation .. py:class:: CompositeOperation() + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.composition.CompositeOperation + import software.amazon.jsii.tests.calculator.composition.CompositeOperation; .. code-tab:: javascript - composition.CompositeOperation + const { composition.CompositeOperation } = require('jsii-calc'); .. code-tab:: typescript - composition.CompositeOperation + import { composition.CompositeOperation } from 'jsii-calc'; @@ -2345,19 +2593,21 @@ CompositionStringStyle (enum) .. py:class:: CompositionStringStyle + **Language-specific names:** + .. tabs:: .. code-tab:: java - org.jsii.tests.calculator.composition.CompositionStringStyle + import software.amazon.jsii.tests.calculator.composition.CompositionStringStyle; .. code-tab:: javascript - composition.CompositionStringStyle + const { composition.CompositionStringStyle } = require('jsii-calc'); .. code-tab:: typescript - composition.CompositionStringStyle + import { composition.CompositionStringStyle } from 'jsii-calc'; From 6aecac8e2ed322550958dd4eefddb34188a27c8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=F0=9F=91=A8=F0=9F=8F=BC=E2=80=8D=F0=9F=92=BB=20Romain=20M?= =?UTF-8?q?arcadier-Muller?= Date: Mon, 6 Aug 2018 14:50:37 +0200 Subject: [PATCH 5/6] Fix expectations (final?) --- .../Amazon.JSII.Tests.Calculator.Base.csproj | 2 +- .../Amazon.JSII.Tests.Calculator.Lib.csproj | 2 +- .../Amazon.JSII.Tests.Calculator.csproj | 2 +- packages/jsii/package-lock.json | 2236 +++++++---------- 4 files changed, 905 insertions(+), 1337 deletions(-) diff --git a/packages/jsii-pacmak/test/expected.jsii-calc-base/dotnet/Amazon.JSII.Tests.Calculator.Base/Amazon.JSII.Tests.Calculator.Base.csproj b/packages/jsii-pacmak/test/expected.jsii-calc-base/dotnet/Amazon.JSII.Tests.Calculator.Base/Amazon.JSII.Tests.Calculator.Base.csproj index 6ba333abee..11b147721d 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc-base/dotnet/Amazon.JSII.Tests.Calculator.Base/Amazon.JSII.Tests.Calculator.Base.csproj +++ b/packages/jsii-pacmak/test/expected.jsii-calc-base/dotnet/Amazon.JSII.Tests.Calculator.Base/Amazon.JSII.Tests.Calculator.Base.csproj @@ -10,7 +10,7 @@ - + diff --git a/packages/jsii-pacmak/test/expected.jsii-calc-lib/dotnet/Amazon.JSII.Tests.Calculator.Lib/Amazon.JSII.Tests.Calculator.Lib.csproj b/packages/jsii-pacmak/test/expected.jsii-calc-lib/dotnet/Amazon.JSII.Tests.Calculator.Lib/Amazon.JSII.Tests.Calculator.Lib.csproj index 743457bdfe..e19785e13c 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc-lib/dotnet/Amazon.JSII.Tests.Calculator.Lib/Amazon.JSII.Tests.Calculator.Lib.csproj +++ b/packages/jsii-pacmak/test/expected.jsii-calc-lib/dotnet/Amazon.JSII.Tests.Calculator.Lib/Amazon.JSII.Tests.Calculator.Lib.csproj @@ -10,7 +10,7 @@ - + diff --git a/packages/jsii-pacmak/test/expected.jsii-calc/dotnet/Amazon.JSII.Tests.Calculator/Amazon.JSII.Tests.Calculator.csproj b/packages/jsii-pacmak/test/expected.jsii-calc/dotnet/Amazon.JSII.Tests.Calculator/Amazon.JSII.Tests.Calculator.csproj index 882d91f7e4..5126452d3d 100644 --- a/packages/jsii-pacmak/test/expected.jsii-calc/dotnet/Amazon.JSII.Tests.Calculator/Amazon.JSII.Tests.Calculator.csproj +++ b/packages/jsii-pacmak/test/expected.jsii-calc/dotnet/Amazon.JSII.Tests.Calculator/Amazon.JSII.Tests.Calculator.csproj @@ -10,7 +10,7 @@ - + diff --git a/packages/jsii/package-lock.json b/packages/jsii/package-lock.json index 60f759554e..1445e7ae5b 100644 --- a/packages/jsii/package-lock.json +++ b/packages/jsii/package-lock.json @@ -1,14 +1,11 @@ { - "name": "jsii", - "version": "0.5.0-beta", - "lockfileVersion": 1, "requires": true, + "lockfileVersion": 1, "dependencies": { "@types/clone": { "version": "0.1.30", "resolved": "https://registry.npmjs.org/@types/clone/-/clone-0.1.30.tgz", - "integrity": "sha1-5zZWSMG0ITalnH1QQGN7O1yDthQ=", - "dev": true + "integrity": "sha1-5zZWSMG0ITalnH1QQGN7O1yDthQ=" }, "@types/deep-equal": { "version": "1.0.1", @@ -18,63 +15,55 @@ "@types/events": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@types/events/-/events-1.2.0.tgz", - "integrity": "sha512-KEIlhXnIutzKwRbQkGWb/I4HFqBuUykAdHgDED6xqwXJfONCjF5VoE0cXEiurh3XauygxzeDzgtXUqvLkxFzzA==", - "dev": true + "integrity": "sha512-KEIlhXnIutzKwRbQkGWb/I4HFqBuUykAdHgDED6xqwXJfONCjF5VoE0cXEiurh3XauygxzeDzgtXUqvLkxFzzA==" }, "@types/fs-extra": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-4.0.8.tgz", "integrity": "sha512-Z5nu9Pbxj9yNeXIK3UwGlRdJth4cZ5sCq05nI7FaI6B0oz28nxkOtp6Lsz0ZnmLHJGvOJfB/VHxSTbVq/i6ujA==", - "dev": true, "requires": { - "@types/node": "9.6.23" + "@types/node": "*" } }, "@types/glob": { "version": "5.0.35", "resolved": "https://registry.npmjs.org/@types/glob/-/glob-5.0.35.tgz", "integrity": "sha512-wc+VveszMLyMWFvXLkloixT4n0harUIVZjnpzztaZ0nKLuul7Z32iMt2fUFGAaZ4y1XWjFRMtCI5ewvyh4aIeg==", - "dev": true, "requires": { - "@types/events": "1.2.0", - "@types/minimatch": "3.0.3", - "@types/node": "9.6.23" + "@types/events": "*", + "@types/minimatch": "*", + "@types/node": "*" } }, "@types/minimatch": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", - "dev": true + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { "version": "9.6.23", "resolved": "https://registry.npmjs.org/@types/node/-/node-9.6.23.tgz", - "integrity": "sha512-d2SJJpwkiPudEQ3+9ysANN2Nvz4QJKUPoe/WL5zyQzI0RaEeZWH5K5xjvUIGszTItHQpFPdH+u51f6G/LkS8Cg==", - "dev": true + "integrity": "sha512-d2SJJpwkiPudEQ3+9ysANN2Nvz4QJKUPoe/WL5zyQzI0RaEeZWH5K5xjvUIGszTItHQpFPdH+u51f6G/LkS8Cg==" }, "@types/nodeunit": { "version": "0.0.30", "resolved": "https://registry.npmjs.org/@types/nodeunit/-/nodeunit-0.0.30.tgz", - "integrity": "sha1-SNLCcZoRjHcjuDMGw+gAsRor9ng=", - "dev": true + "integrity": "sha1-SNLCcZoRjHcjuDMGw+gAsRor9ng=" }, "@types/yargs": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-11.1.0.tgz", - "integrity": "sha512-bhNrCSpRNPKlIejjo+WavCrqmL4rUjOWdqGhO57nVB9vEUX6Xw4Dj//Jge7jFSz2r2yzKt74Ce+Xx5W2Ul2xNA==", - "dev": true + "integrity": "sha512-bhNrCSpRNPKlIejjo+WavCrqmL4rUjOWdqGhO57nVB9vEUX6Xw4Dj//Jge7jFSz2r2yzKt74Ce+Xx5W2Ul2xNA==" }, "ajv": { "version": "5.5.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1" + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" } }, "ansi-regex": { @@ -86,48 +75,42 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, "requires": { - "sprintf-js": "1.0.3" + "sprintf-js": "~1.0.2" } }, "asn1": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", - "dev": true + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" }, "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" }, "async": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", "requires": { - "lodash": "4.17.10" + "lodash": "^4.17.10" } }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz", - "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==", - "dev": true + "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==" }, "balanced-match": { "version": "1.0.0", @@ -138,10 +121,9 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, "optional": true, "requires": { - "tweetnacl": "0.14.5" + "tweetnacl": "^0.14.3" } }, "big.js": { @@ -152,21 +134,19 @@ "bind-obj-methods": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/bind-obj-methods/-/bind-obj-methods-2.0.0.tgz", - "integrity": "sha512-3/qRXczDi2Cdbz6jE+W3IflJOutRVica8frpBn14de1mBOkzDo+6tY33kNhvkw54Kn3PzRRD2VnGbGPcTAk4sw==", - "dev": true + "integrity": "sha512-3/qRXczDi2Cdbz6jE+W3IflJOutRVica8frpBn14de1mBOkzDo+6tY33kNhvkw54Kn3PzRRD2VnGbGPcTAk4sw==" }, "bluebird": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", - "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", - "dev": true + "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==" }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -188,23 +168,21 @@ "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, "clean-yaml-object": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", - "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", - "dev": true + "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=" }, "cliui": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", "requires": { - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "wrap-ansi": "2.1.0" + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" }, "dependencies": { "ansi-regex": { @@ -217,7 +195,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } } } @@ -230,8 +208,7 @@ "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" }, "code-point-at": { "version": "1.1.0", @@ -241,16 +218,14 @@ "color-support": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" }, "combined-stream": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", - "dev": true, "requires": { - "delayed-stream": "1.0.0" + "delayed-stream": "~1.0.0" } }, "concat-map": { @@ -261,47 +236,42 @@ "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, "coveralls": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.2.tgz", "integrity": "sha512-Tv0LKe/MkBOilH2v7WBiTBdudg2ChfGbdXafc/s330djpF3zKOmuehTeRwjXWc7pzfj9FrDUTA7tEx6Div8NFw==", - "dev": true, "requires": { - "growl": "1.10.5", - "js-yaml": "3.12.0", - "lcov-parse": "0.0.10", - "log-driver": "1.2.7", - "minimist": "1.2.0", - "request": "2.87.0" + "growl": "~> 1.10.0", + "js-yaml": "^3.11.0", + "lcov-parse": "^0.0.10", + "log-driver": "^1.2.7", + "minimist": "^1.2.0", + "request": "^2.85.0" } }, "cross-spawn": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", - "dev": true, "requires": { - "lru-cache": "4.1.3", - "which": "1.3.1" + "lru-cache": "^4.0.1", + "which": "^1.2.9" } }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, "requires": { - "assert-plus": "1.0.0" + "assert-plus": "^1.0.0" } }, "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" } @@ -319,8 +289,7 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, "detect-indent": { "version": "5.0.0", @@ -335,24 +304,21 @@ "diff": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/diff/-/diff-1.4.0.tgz", - "integrity": "sha1-fyjS657nsVqX79ic5j3P2qPMur8=", - "dev": true + "integrity": "sha1-fyjS657nsVqX79ic5j3P2qPMur8=" }, "ecc-jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", - "dev": true, "optional": true, "requires": { - "jsbn": "0.1.1" + "jsbn": "~0.1.0" } }, "ejs": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.6.1.tgz", - "integrity": "sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==", - "dev": true + "integrity": "sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==" }, "emojis-list": { "version": "2.1.0", @@ -362,33 +328,30 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, "esprima": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", - "dev": true + "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==" }, "events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", - "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", - "dev": true + "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=" }, "execa": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" }, "dependencies": { "cross-spawn": { @@ -396,9 +359,9 @@ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "requires": { - "lru-cache": "4.1.3", - "shebang-command": "1.2.0", - "which": "1.3.1" + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } } } @@ -406,76 +369,68 @@ "extend": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", - "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", - "dev": true + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" }, "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, "fast-deep-equal": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", - "dev": true + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=" }, "fast-json-stable-stringify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", - "dev": true + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" }, "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "requires": { - "locate-path": "2.0.0" + "locate-path": "^2.0.0" } }, "foreground-child": { "version": "1.5.6", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", - "dev": true, "requires": { - "cross-spawn": "4.0.2", - "signal-exit": "3.0.2" + "cross-spawn": "^4", + "signal-exit": "^3.0.0" } }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" }, "form-data": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", - "dev": true, "requires": { - "asynckit": "0.4.0", + "asynckit": "^0.4.0", "combined-stream": "1.0.6", - "mime-types": "2.1.18" + "mime-types": "^2.1.12" } }, "fs-exists-cached": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-exists-cached/-/fs-exists-cached-1.0.0.tgz", - "integrity": "sha1-zyVVTKBQ3EmuZla0HeQiWJidy84=", - "dev": true + "integrity": "sha1-zyVVTKBQ3EmuZla0HeQiWJidy84=" }, "fs-extra": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "4.0.0", - "universalify": "0.1.2" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" } }, "fs.realpath": { @@ -486,8 +441,7 @@ "function-loop": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/function-loop/-/function-loop-1.0.1.tgz", - "integrity": "sha1-gHa7MF6OajzO7ikgdl8zDRkPNAw=", - "dev": true + "integrity": "sha1-gHa7MF6OajzO7ikgdl8zDRkPNAw=" }, "get-caller-file": { "version": "1.0.2", @@ -503,9 +457,8 @@ "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, "requires": { - "assert-plus": "1.0.0" + "assert-plus": "^1.0.0" } }, "glob": { @@ -513,12 +466,12 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "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" } }, "graceful-fs": { @@ -529,49 +482,44 @@ "growl": { "version": "1.10.5", "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==" }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" }, "har-validator": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", - "dev": true, "requires": { - "ajv": "5.5.2", - "har-schema": "2.0.0" + "ajv": "^5.1.0", + "har-schema": "^2.0.0" } }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, "requires": { - "assert-plus": "1.0.0", - "jsprim": "1.4.1", - "sshpk": "1.14.2" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" } }, "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -597,14 +545,12 @@ "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, "optional": true }, "isexe": { @@ -615,43 +561,37 @@ "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, "js-yaml": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", - "dev": true, "requires": { - "argparse": "1.0.10", - "esprima": "4.0.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" } }, "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true, "optional": true }, "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" }, "json-schema-traverse": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", - "dev": true + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" }, "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, "json5": { "version": "0.5.1", @@ -663,14 +603,13 @@ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", "requires": { - "graceful-fs": "4.1.11" + "graceful-fs": "^4.1.6" } }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", @@ -683,24 +622,23 @@ "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", "requires": { - "invert-kv": "1.0.0" + "invert-kv": "^1.0.0" } }, "lcov-parse": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", - "dev": true + "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=" }, "loader-utils": { "version": "0.2.17", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", "requires": { - "big.js": "3.2.0", - "emojis-list": "2.1.0", - "json5": "0.5.1", - "object-assign": "4.1.1" + "big.js": "^3.1.3", + "emojis-list": "^2.0.0", + "json5": "^0.5.0", + "object-assign": "^4.0.1" } }, "locate-path": { @@ -708,8 +646,8 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "requires": { - "p-locate": "2.0.0", - "path-exists": "3.0.0" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" } }, "lodash": { @@ -720,16 +658,15 @@ "log-driver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", - "dev": true + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==" }, "lru-cache": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, "mem": { @@ -737,22 +674,20 @@ "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", "requires": { - "mimic-fn": "1.2.0" + "mimic-fn": "^1.0.0" } }, "mime-db": { "version": "1.33.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", - "dev": true + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" }, "mime-types": { "version": "2.1.18", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "dev": true, "requires": { - "mime-db": "1.33.0" + "mime-db": "~1.33.0" } }, "mimic-fn": { @@ -765,7 +700,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "requires": { - "brace-expansion": "1.1.11" + "brace-expansion": "^1.1.7" } }, "minimist": { @@ -777,17 +712,15 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.3.tgz", "integrity": "sha512-/jAn9/tEX4gnpyRATxgHEOV6xbcyxgT7iUnxo9Y3+OB0zX00TgKIv/2FZCf5brBbICcwbLqVv2ImjvWWrQMSYw==", - "dev": true, "requires": { - "safe-buffer": "5.1.2", - "yallist": "3.0.2" + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" }, "dependencies": { "yallist": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", - "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=", - "dev": true + "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=" } } }, @@ -795,7 +728,6 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, "requires": { "minimist": "0.0.8" }, @@ -803,25 +735,22 @@ "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" } } }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, "nodeunit": { "version": "0.11.3", "resolved": "https://registry.npmjs.org/nodeunit/-/nodeunit-0.11.3.tgz", "integrity": "sha512-gDNxrDWpx07BxYNO/jn1UrGI1vNhDQZrIFphbHMcTCDc5mrrqQBWfQMXPHJ5WSgbFwD1D6bv4HOsqtTrPG03AA==", - "dev": true, "requires": { - "ejs": "2.6.1", - "tap": "12.0.1" + "ejs": "^2.5.2", + "tap": "^12.0.1" } }, "npm-run-path": { @@ -829,7 +758,7 @@ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", "requires": { - "path-key": "2.0.1" + "path-key": "^2.0.0" } }, "number-is-nan": { @@ -841,592 +770,520 @@ "version": "11.9.0", "resolved": "https://registry.npmjs.org/nyc/-/nyc-11.9.0.tgz", "integrity": "sha512-w8OdJAhXL5izerzZMdqzYKMj/pgHJyY3qEPYBjLLxrhcVoHEY9pU5ENIiZyCgG9OR7x3VcUMoD40o6PtVpfR4g==", - "dev": true, - "requires": { - "archy": "1.0.0", - "arrify": "1.0.1", - "caching-transform": "1.0.1", - "convert-source-map": "1.5.1", - "debug-log": "1.0.1", - "default-require-extensions": "1.0.0", - "find-cache-dir": "0.1.1", - "find-up": "2.1.0", - "foreground-child": "1.5.6", - "glob": "7.1.2", - "istanbul-lib-coverage": "1.2.0", - "istanbul-lib-hook": "1.1.0", - "istanbul-lib-instrument": "1.10.1", - "istanbul-lib-report": "1.1.3", - "istanbul-lib-source-maps": "1.2.3", - "istanbul-reports": "1.4.0", - "md5-hex": "1.3.0", - "merge-source-map": "1.1.0", - "micromatch": "3.1.10", - "mkdirp": "0.5.1", - "resolve-from": "2.0.0", - "rimraf": "2.6.2", - "signal-exit": "3.0.2", - "spawn-wrap": "1.4.2", - "test-exclude": "4.2.1", + "requires": { + "archy": "^1.0.0", + "arrify": "^1.0.1", + "caching-transform": "^1.0.0", + "convert-source-map": "^1.5.1", + "debug-log": "^1.0.1", + "default-require-extensions": "^1.0.0", + "find-cache-dir": "^0.1.1", + "find-up": "^2.1.0", + "foreground-child": "^1.5.3", + "glob": "^7.0.6", + "istanbul-lib-coverage": "^1.1.2", + "istanbul-lib-hook": "^1.1.0", + "istanbul-lib-instrument": "^1.10.0", + "istanbul-lib-report": "^1.1.3", + "istanbul-lib-source-maps": "^1.2.3", + "istanbul-reports": "^1.4.0", + "md5-hex": "^1.2.0", + "merge-source-map": "^1.1.0", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.0", + "resolve-from": "^2.0.0", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.1", + "spawn-wrap": "^1.4.2", + "test-exclude": "^4.2.0", "yargs": "11.1.0", - "yargs-parser": "8.1.0" + "yargs-parser": "^8.0.0" }, "dependencies": { "align-text": { "version": "0.1.4", "bundled": true, - "dev": true, "requires": { - "kind-of": "3.2.2", - "longest": "1.0.1", - "repeat-string": "1.6.1" + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" } }, "amdefine": { "version": "1.0.1", - "bundled": true, - "dev": true + "bundled": true }, "ansi-regex": { "version": "2.1.1", - "bundled": true, - "dev": true + "bundled": true }, "ansi-styles": { "version": "2.2.1", - "bundled": true, - "dev": true + "bundled": true }, "append-transform": { "version": "0.4.0", "bundled": true, - "dev": true, "requires": { - "default-require-extensions": "1.0.0" + "default-require-extensions": "^1.0.0" } }, "archy": { "version": "1.0.0", - "bundled": true, - "dev": true + "bundled": true }, "arr-diff": { "version": "4.0.0", - "bundled": true, - "dev": true + "bundled": true }, "arr-flatten": { "version": "1.1.0", - "bundled": true, - "dev": true + "bundled": true }, "arr-union": { "version": "3.1.0", - "bundled": true, - "dev": true + "bundled": true }, "array-unique": { "version": "0.3.2", - "bundled": true, - "dev": true + "bundled": true }, "arrify": { "version": "1.0.1", - "bundled": true, - "dev": true + "bundled": true }, "assign-symbols": { "version": "1.0.0", - "bundled": true, - "dev": true + "bundled": true }, "async": { "version": "1.5.2", - "bundled": true, - "dev": true + "bundled": true }, "atob": { "version": "2.1.1", - "bundled": true, - "dev": true + "bundled": true }, "babel-code-frame": { "version": "6.26.0", "bundled": true, - "dev": true, "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.2" + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" } }, "babel-generator": { "version": "6.26.1", "bundled": true, - "dev": true, "requires": { - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "detect-indent": "4.0.0", - "jsesc": "1.3.0", - "lodash": "4.17.10", - "source-map": "0.5.7", - "trim-right": "1.0.1" + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" } }, "babel-messages": { "version": "6.23.0", "bundled": true, - "dev": true, "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-runtime": { "version": "6.26.0", "bundled": true, - "dev": true, "requires": { - "core-js": "2.5.6", - "regenerator-runtime": "0.11.1" + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" } }, "babel-template": { "version": "6.26.0", "bundled": true, - "dev": true, "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "lodash": "4.17.10" + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" } }, "babel-traverse": { "version": "6.26.0", "bundled": true, - "dev": true, "requires": { - "babel-code-frame": "6.26.0", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "debug": "2.6.9", - "globals": "9.18.0", - "invariant": "2.2.4", - "lodash": "4.17.10" + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" } }, "babel-types": { "version": "6.26.0", "bundled": true, - "dev": true, "requires": { - "babel-runtime": "6.26.0", - "esutils": "2.0.2", - "lodash": "4.17.10", - "to-fast-properties": "1.0.3" + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" } }, "babylon": { "version": "6.18.0", - "bundled": true, - "dev": true + "bundled": true }, "balanced-match": { "version": "1.0.0", - "bundled": true, - "dev": true + "bundled": true }, "base": { "version": "0.11.2", "bundled": true, - "dev": true, "requires": { - "cache-base": "1.0.1", - "class-utils": "0.3.6", - "component-emitter": "1.2.1", - "define-property": "1.0.0", - "isobject": "3.0.1", - "mixin-deep": "1.3.1", - "pascalcase": "0.1.1" + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" }, "dependencies": { "define-property": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "is-accessor-descriptor": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { "version": "1.0.2", "bundled": true, - "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true }, "kind-of": { "version": "6.0.2", - "bundled": true, - "dev": true + "bundled": true } } }, "brace-expansion": { "version": "1.1.11", "bundled": true, - "dev": true, "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "braces": { "version": "2.3.2", "bundled": true, - "dev": true, - "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { "extend-shallow": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } }, "builtin-modules": { "version": "1.1.1", - "bundled": true, - "dev": true + "bundled": true }, "cache-base": { "version": "1.0.1", "bundled": true, - "dev": true, - "requires": { - "collection-visit": "1.0.0", - "component-emitter": "1.2.1", - "get-value": "2.0.6", - "has-value": "1.0.0", - "isobject": "3.0.1", - "set-value": "2.0.0", - "to-object-path": "0.3.0", - "union-value": "1.0.0", - "unset-value": "1.0.0" + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" }, "dependencies": { "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true } } }, "caching-transform": { "version": "1.0.1", "bundled": true, - "dev": true, "requires": { - "md5-hex": "1.3.0", - "mkdirp": "0.5.1", - "write-file-atomic": "1.3.4" + "md5-hex": "^1.2.0", + "mkdirp": "^0.5.1", + "write-file-atomic": "^1.1.4" } }, "camelcase": { "version": "1.2.1", "bundled": true, - "dev": true, "optional": true }, "center-align": { "version": "0.1.3", "bundled": true, - "dev": true, "optional": true, "requires": { - "align-text": "0.1.4", - "lazy-cache": "1.0.4" + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" } }, "chalk": { "version": "1.1.3", "bundled": true, - "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "class-utils": { "version": "0.3.6", "bundled": true, - "dev": true, "requires": { - "arr-union": "3.1.0", - "define-property": "0.2.5", - "isobject": "3.0.1", - "static-extend": "0.1.2" + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" }, "dependencies": { "define-property": { "version": "0.2.5", "bundled": true, - "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true } } }, "cliui": { "version": "2.1.0", "bundled": true, - "dev": true, "optional": true, "requires": { - "center-align": "0.1.3", - "right-align": "0.1.3", + "center-align": "^0.1.1", + "right-align": "^0.1.1", "wordwrap": "0.0.2" }, "dependencies": { "wordwrap": { "version": "0.0.2", "bundled": true, - "dev": true, "optional": true } } }, "code-point-at": { "version": "1.1.0", - "bundled": true, - "dev": true + "bundled": true }, "collection-visit": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "map-visit": "1.0.0", - "object-visit": "1.0.1" + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" } }, "commondir": { "version": "1.0.1", - "bundled": true, - "dev": true + "bundled": true }, "component-emitter": { "version": "1.2.1", - "bundled": true, - "dev": true + "bundled": true }, "concat-map": { "version": "0.0.1", - "bundled": true, - "dev": true + "bundled": true }, "convert-source-map": { "version": "1.5.1", - "bundled": true, - "dev": true + "bundled": true }, "copy-descriptor": { "version": "0.1.1", - "bundled": true, - "dev": true + "bundled": true }, "core-js": { "version": "2.5.6", - "bundled": true, - "dev": true + "bundled": true }, "cross-spawn": { "version": "4.0.2", "bundled": true, - "dev": true, "requires": { - "lru-cache": "4.1.3", - "which": "1.3.0" + "lru-cache": "^4.0.1", + "which": "^1.2.9" } }, "debug": { "version": "2.6.9", "bundled": true, - "dev": true, "requires": { "ms": "2.0.0" } }, "debug-log": { "version": "1.0.1", - "bundled": true, - "dev": true + "bundled": true }, "decamelize": { "version": "1.2.0", - "bundled": true, - "dev": true + "bundled": true }, "decode-uri-component": { "version": "0.2.0", - "bundled": true, - "dev": true + "bundled": true }, "default-require-extensions": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "strip-bom": "2.0.0" + "strip-bom": "^2.0.0" } }, "define-property": { "version": "2.0.2", "bundled": true, - "dev": true, "requires": { - "is-descriptor": "1.0.2", - "isobject": "3.0.1" + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" }, "dependencies": { "is-accessor-descriptor": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { "version": "1.0.2", "bundled": true, - "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true }, "kind-of": { "version": "6.0.2", - "bundled": true, - "dev": true + "bundled": true } } }, "detect-indent": { "version": "4.0.0", "bundled": true, - "dev": true, "requires": { - "repeating": "2.0.1" + "repeating": "^2.0.0" } }, "error-ex": { "version": "1.3.1", "bundled": true, - "dev": true, "requires": { - "is-arrayish": "0.2.1" + "is-arrayish": "^0.2.1" } }, "escape-string-regexp": { "version": "1.0.5", - "bundled": true, - "dev": true + "bundled": true }, "esutils": { "version": "2.0.2", - "bundled": true, - "dev": true + "bundled": true }, "execa": { "version": "0.7.0", "bundled": true, - "dev": true, "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" }, "dependencies": { "cross-spawn": { "version": "5.1.0", "bundled": true, - "dev": true, "requires": { - "lru-cache": "4.1.3", - "shebang-command": "1.2.0", - "which": "1.3.0" + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } } } @@ -1434,31 +1291,28 @@ "expand-brackets": { "version": "2.1.4", "bundled": true, - "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { "version": "0.2.5", "bundled": true, - "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -1466,18 +1320,16 @@ "extend-shallow": { "version": "3.0.2", "bundled": true, - "dev": true, "requires": { - "assign-symbols": "1.0.0", - "is-extendable": "1.0.1" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { "version": "1.0.1", "bundled": true, - "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } @@ -1485,84 +1337,75 @@ "extglob": { "version": "2.0.4", "bundled": true, - "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "is-accessor-descriptor": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { "version": "1.0.2", "bundled": true, - "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "kind-of": { "version": "6.0.2", - "bundled": true, - "dev": true + "bundled": true } } }, "fill-range": { "version": "4.0.0", "bundled": true, - "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -1570,103 +1413,89 @@ "find-cache-dir": { "version": "0.1.1", "bundled": true, - "dev": true, "requires": { - "commondir": "1.0.1", - "mkdirp": "0.5.1", - "pkg-dir": "1.0.0" + "commondir": "^1.0.1", + "mkdirp": "^0.5.1", + "pkg-dir": "^1.0.0" } }, "find-up": { "version": "2.1.0", "bundled": true, - "dev": true, "requires": { - "locate-path": "2.0.0" + "locate-path": "^2.0.0" } }, "for-in": { "version": "1.0.2", - "bundled": true, - "dev": true + "bundled": true }, "foreground-child": { "version": "1.5.6", "bundled": true, - "dev": true, "requires": { - "cross-spawn": "4.0.2", - "signal-exit": "3.0.2" + "cross-spawn": "^4", + "signal-exit": "^3.0.0" } }, "fragment-cache": { "version": "0.2.1", "bundled": true, - "dev": true, "requires": { - "map-cache": "0.2.2" + "map-cache": "^0.2.2" } }, "fs.realpath": { "version": "1.0.0", - "bundled": true, - "dev": true + "bundled": true }, "get-caller-file": { "version": "1.0.2", - "bundled": true, - "dev": true + "bundled": true }, "get-stream": { "version": "3.0.0", - "bundled": true, - "dev": true + "bundled": true }, "get-value": { "version": "2.0.6", - "bundled": true, - "dev": true + "bundled": true }, "glob": { "version": "7.1.2", "bundled": true, - "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "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" } }, "globals": { "version": "9.18.0", - "bundled": true, - "dev": true + "bundled": true }, "graceful-fs": { "version": "4.1.11", - "bundled": true, - "dev": true + "bundled": true }, "handlebars": { "version": "4.0.11", "bundled": true, - "dev": true, "requires": { - "async": "1.5.2", - "optimist": "0.6.1", - "source-map": "0.4.4", - "uglify-js": "2.8.29" + "async": "^1.4.0", + "optimist": "^0.6.1", + "source-map": "^0.4.4", + "uglify-js": "^2.6" }, "dependencies": { "source-map": { "version": "0.4.4", "bundled": true, - "dev": true, "requires": { - "amdefine": "1.0.1" + "amdefine": ">=0.0.4" } } } @@ -1674,56 +1503,49 @@ "has-ansi": { "version": "2.0.0", "bundled": true, - "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "has-flag": { "version": "1.0.0", - "bundled": true, - "dev": true + "bundled": true }, "has-value": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "1.0.0", - "isobject": "3.0.1" + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" }, "dependencies": { "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true } } }, "has-values": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" + "is-number": "^3.0.0", + "kind-of": "^4.0.0" }, "dependencies": { "is-number": { "version": "3.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { "version": "3.2.2", "bundled": true, - "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -1731,231 +1553,198 @@ "kind-of": { "version": "4.0.0", "bundled": true, - "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } }, "hosted-git-info": { "version": "2.6.0", - "bundled": true, - "dev": true + "bundled": true }, "imurmurhash": { "version": "0.1.4", - "bundled": true, - "dev": true + "bundled": true }, "inflight": { "version": "1.0.6", "bundled": true, - "dev": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { "version": "2.0.3", - "bundled": true, - "dev": true + "bundled": true }, "invariant": { "version": "2.2.4", "bundled": true, - "dev": true, "requires": { - "loose-envify": "1.3.1" + "loose-envify": "^1.0.0" } }, "invert-kv": { "version": "1.0.0", - "bundled": true, - "dev": true + "bundled": true }, "is-accessor-descriptor": { "version": "0.1.6", "bundled": true, - "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "is-arrayish": { "version": "0.2.1", - "bundled": true, - "dev": true + "bundled": true }, "is-buffer": { "version": "1.1.6", - "bundled": true, - "dev": true + "bundled": true }, "is-builtin-module": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "builtin-modules": "1.1.1" + "builtin-modules": "^1.0.0" } }, "is-data-descriptor": { "version": "0.1.4", "bundled": true, - "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "is-descriptor": { "version": "0.1.6", "bundled": true, - "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "dependencies": { "kind-of": { "version": "5.1.0", - "bundled": true, - "dev": true + "bundled": true } } }, "is-extendable": { "version": "0.1.1", - "bundled": true, - "dev": true + "bundled": true }, "is-finite": { "version": "1.0.2", "bundled": true, - "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "is-fullwidth-code-point": { "version": "2.0.0", - "bundled": true, - "dev": true + "bundled": true }, "is-number": { "version": "3.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "is-odd": { "version": "2.0.0", "bundled": true, - "dev": true, "requires": { - "is-number": "4.0.0" + "is-number": "^4.0.0" }, "dependencies": { "is-number": { "version": "4.0.0", - "bundled": true, - "dev": true + "bundled": true } } }, "is-plain-object": { "version": "2.0.4", "bundled": true, - "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.1" }, "dependencies": { "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true } } }, "is-stream": { "version": "1.1.0", - "bundled": true, - "dev": true + "bundled": true }, "is-utf8": { "version": "0.2.1", - "bundled": true, - "dev": true + "bundled": true }, "is-windows": { "version": "1.0.2", - "bundled": true, - "dev": true + "bundled": true }, "isarray": { "version": "1.0.0", - "bundled": true, - "dev": true + "bundled": true }, "isexe": { "version": "2.0.0", - "bundled": true, - "dev": true + "bundled": true }, "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true }, "istanbul-lib-coverage": { "version": "1.2.0", - "bundled": true, - "dev": true + "bundled": true }, "istanbul-lib-hook": { "version": "1.1.0", "bundled": true, - "dev": true, "requires": { - "append-transform": "0.4.0" + "append-transform": "^0.4.0" } }, "istanbul-lib-instrument": { "version": "1.10.1", "bundled": true, - "dev": true, "requires": { - "babel-generator": "6.26.1", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "istanbul-lib-coverage": "1.2.0", - "semver": "5.5.0" + "babel-generator": "^6.18.0", + "babel-template": "^6.16.0", + "babel-traverse": "^6.18.0", + "babel-types": "^6.18.0", + "babylon": "^6.18.0", + "istanbul-lib-coverage": "^1.2.0", + "semver": "^5.3.0" } }, "istanbul-lib-report": { "version": "1.1.3", "bundled": true, - "dev": true, "requires": { - "istanbul-lib-coverage": "1.2.0", - "mkdirp": "0.5.1", - "path-parse": "1.0.5", - "supports-color": "3.2.3" + "istanbul-lib-coverage": "^1.1.2", + "mkdirp": "^0.5.1", + "path-parse": "^1.0.5", + "supports-color": "^3.1.2" }, "dependencies": { "supports-color": { "version": "3.2.3", "bundled": true, - "dev": true, "requires": { - "has-flag": "1.0.0" + "has-flag": "^1.0.0" } } } @@ -1963,19 +1752,17 @@ "istanbul-lib-source-maps": { "version": "1.2.3", "bundled": true, - "dev": true, "requires": { - "debug": "3.1.0", - "istanbul-lib-coverage": "1.2.0", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "source-map": "0.5.7" + "debug": "^3.1.0", + "istanbul-lib-coverage": "^1.1.2", + "mkdirp": "^0.5.1", + "rimraf": "^2.6.1", + "source-map": "^0.5.3" }, "dependencies": { "debug": { "version": "3.1.0", "bundled": true, - "dev": true, "requires": { "ms": "2.0.0" } @@ -1985,207 +1772,180 @@ "istanbul-reports": { "version": "1.4.0", "bundled": true, - "dev": true, "requires": { - "handlebars": "4.0.11" + "handlebars": "^4.0.3" } }, "js-tokens": { "version": "3.0.2", - "bundled": true, - "dev": true + "bundled": true }, "jsesc": { "version": "1.3.0", - "bundled": true, - "dev": true + "bundled": true }, "kind-of": { "version": "3.2.2", "bundled": true, - "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } }, "lazy-cache": { "version": "1.0.4", "bundled": true, - "dev": true, "optional": true }, "lcid": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "invert-kv": "1.0.0" + "invert-kv": "^1.0.0" } }, "load-json-file": { "version": "1.1.0", "bundled": true, - "dev": true, "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" } }, "locate-path": { "version": "2.0.0", "bundled": true, - "dev": true, "requires": { - "p-locate": "2.0.0", - "path-exists": "3.0.0" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" }, "dependencies": { "path-exists": { "version": "3.0.0", - "bundled": true, - "dev": true + "bundled": true } } }, "lodash": { "version": "4.17.10", - "bundled": true, - "dev": true + "bundled": true }, "longest": { "version": "1.0.1", - "bundled": true, - "dev": true + "bundled": true }, "loose-envify": { "version": "1.3.1", "bundled": true, - "dev": true, "requires": { - "js-tokens": "3.0.2" + "js-tokens": "^3.0.0" } }, "lru-cache": { "version": "4.1.3", "bundled": true, - "dev": true, "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, "map-cache": { "version": "0.2.2", - "bundled": true, - "dev": true + "bundled": true }, "map-visit": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "object-visit": "1.0.1" + "object-visit": "^1.0.0" } }, "md5-hex": { "version": "1.3.0", "bundled": true, - "dev": true, "requires": { - "md5-o-matic": "0.1.1" + "md5-o-matic": "^0.1.1" } }, "md5-o-matic": { "version": "0.1.1", - "bundled": true, - "dev": true + "bundled": true }, "mem": { "version": "1.1.0", "bundled": true, - "dev": true, "requires": { - "mimic-fn": "1.2.0" + "mimic-fn": "^1.0.0" } }, "merge-source-map": { "version": "1.1.0", "bundled": true, - "dev": true, "requires": { - "source-map": "0.6.1" + "source-map": "^0.6.1" }, "dependencies": { "source-map": { "version": "0.6.1", - "bundled": true, - "dev": true + "bundled": true } } }, "micromatch": { "version": "3.1.10", "bundled": true, - "dev": true, - "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.9", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" }, "dependencies": { "kind-of": { "version": "6.0.2", - "bundled": true, - "dev": true + "bundled": true } } }, "mimic-fn": { "version": "1.2.0", - "bundled": true, - "dev": true + "bundled": true }, "minimatch": { "version": "3.0.4", "bundled": true, - "dev": true, "requires": { - "brace-expansion": "1.1.11" + "brace-expansion": "^1.1.7" } }, "minimist": { "version": "0.0.8", - "bundled": true, - "dev": true + "bundled": true }, "mixin-deep": { "version": "1.3.1", "bundled": true, - "dev": true, "requires": { - "for-in": "1.0.2", - "is-extendable": "1.0.1" + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { "version": "1.0.1", "bundled": true, - "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } @@ -2193,97 +1953,85 @@ "mkdirp": { "version": "0.5.1", "bundled": true, - "dev": true, "requires": { "minimist": "0.0.8" } }, "ms": { "version": "2.0.0", - "bundled": true, - "dev": true + "bundled": true }, "nanomatch": { "version": "1.2.9", "bundled": true, - "dev": true, - "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "fragment-cache": "0.2.1", - "is-odd": "2.0.0", - "is-windows": "1.0.2", - "kind-of": "6.0.2", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-odd": "^2.0.0", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "arr-diff": { "version": "4.0.0", - "bundled": true, - "dev": true + "bundled": true }, "array-unique": { "version": "0.3.2", - "bundled": true, - "dev": true + "bundled": true }, "kind-of": { "version": "6.0.2", - "bundled": true, - "dev": true + "bundled": true } } }, "normalize-package-data": { "version": "2.4.0", "bundled": true, - "dev": true, "requires": { - "hosted-git-info": "2.6.0", - "is-builtin-module": "1.0.0", - "semver": "5.5.0", - "validate-npm-package-license": "3.0.3" + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, "npm-run-path": { "version": "2.0.2", "bundled": true, - "dev": true, "requires": { - "path-key": "2.0.1" + "path-key": "^2.0.0" } }, "number-is-nan": { "version": "1.0.1", - "bundled": true, - "dev": true + "bundled": true }, "object-assign": { "version": "4.1.1", - "bundled": true, - "dev": true + "bundled": true }, "object-copy": { "version": "0.1.0", "bundled": true, - "dev": true, "requires": { - "copy-descriptor": "0.1.1", - "define-property": "0.2.5", - "kind-of": "3.2.2" + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" }, "dependencies": { "define-property": { "version": "0.2.5", "bundled": true, - "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } } } @@ -2291,323 +2039,277 @@ "object-visit": { "version": "1.0.1", "bundled": true, - "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.0" }, "dependencies": { "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true } } }, "object.pick": { "version": "1.3.0", "bundled": true, - "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.1" }, "dependencies": { "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true } } }, "once": { "version": "1.4.0", "bundled": true, - "dev": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "optimist": { "version": "0.6.1", "bundled": true, - "dev": true, "requires": { - "minimist": "0.0.8", - "wordwrap": "0.0.3" + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" } }, "os-homedir": { "version": "1.0.2", - "bundled": true, - "dev": true + "bundled": true }, "os-locale": { "version": "2.1.0", "bundled": true, - "dev": true, "requires": { - "execa": "0.7.0", - "lcid": "1.0.0", - "mem": "1.1.0" + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" } }, "p-finally": { "version": "1.0.0", - "bundled": true, - "dev": true + "bundled": true }, "p-limit": { "version": "1.2.0", "bundled": true, - "dev": true, "requires": { - "p-try": "1.0.0" + "p-try": "^1.0.0" } }, "p-locate": { "version": "2.0.0", "bundled": true, - "dev": true, "requires": { - "p-limit": "1.2.0" + "p-limit": "^1.1.0" } }, "p-try": { "version": "1.0.0", - "bundled": true, - "dev": true + "bundled": true }, "parse-json": { "version": "2.2.0", "bundled": true, - "dev": true, "requires": { - "error-ex": "1.3.1" + "error-ex": "^1.2.0" } }, "pascalcase": { "version": "0.1.1", - "bundled": true, - "dev": true + "bundled": true }, "path-exists": { "version": "2.1.0", "bundled": true, - "dev": true, "requires": { - "pinkie-promise": "2.0.1" + "pinkie-promise": "^2.0.0" } }, "path-is-absolute": { "version": "1.0.1", - "bundled": true, - "dev": true + "bundled": true }, "path-key": { "version": "2.0.1", - "bundled": true, - "dev": true + "bundled": true }, "path-parse": { "version": "1.0.5", - "bundled": true, - "dev": true + "bundled": true }, "path-type": { "version": "1.1.0", "bundled": true, - "dev": true, "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "pify": { "version": "2.3.0", - "bundled": true, - "dev": true + "bundled": true }, "pinkie": { "version": "2.0.4", - "bundled": true, - "dev": true + "bundled": true }, "pinkie-promise": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "pinkie": "2.0.4" + "pinkie": "^2.0.0" } }, "pkg-dir": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "find-up": "1.1.2" + "find-up": "^1.0.0" }, "dependencies": { "find-up": { "version": "1.1.2", "bundled": true, - "dev": true, "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } } } }, "posix-character-classes": { "version": "0.1.1", - "bundled": true, - "dev": true + "bundled": true }, "pseudomap": { "version": "1.0.2", - "bundled": true, - "dev": true + "bundled": true }, "read-pkg": { "version": "1.1.0", "bundled": true, - "dev": true, "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.4.0", - "path-type": "1.1.0" + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" } }, "read-pkg-up": { "version": "1.0.1", "bundled": true, - "dev": true, "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" }, "dependencies": { "find-up": { "version": "1.1.2", "bundled": true, - "dev": true, "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } } } }, "regenerator-runtime": { "version": "0.11.1", - "bundled": true, - "dev": true + "bundled": true }, "regex-not": { "version": "1.0.2", "bundled": true, - "dev": true, "requires": { - "extend-shallow": "3.0.2", - "safe-regex": "1.1.0" + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" } }, "repeat-element": { "version": "1.1.2", - "bundled": true, - "dev": true + "bundled": true }, "repeat-string": { "version": "1.6.1", - "bundled": true, - "dev": true + "bundled": true }, "repeating": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-finite": "1.0.2" + "is-finite": "^1.0.0" } }, "require-directory": { "version": "2.1.1", - "bundled": true, - "dev": true + "bundled": true }, "require-main-filename": { "version": "1.0.1", - "bundled": true, - "dev": true + "bundled": true }, "resolve-from": { "version": "2.0.0", - "bundled": true, - "dev": true + "bundled": true }, "resolve-url": { "version": "0.2.1", - "bundled": true, - "dev": true + "bundled": true }, "ret": { "version": "0.1.15", - "bundled": true, - "dev": true + "bundled": true }, "right-align": { "version": "0.1.3", "bundled": true, - "dev": true, "optional": true, "requires": { - "align-text": "0.1.4" + "align-text": "^0.1.1" } }, "rimraf": { "version": "2.6.2", "bundled": true, - "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "safe-regex": { "version": "1.1.0", "bundled": true, - "dev": true, "requires": { - "ret": "0.1.15" + "ret": "~0.1.10" } }, "semver": { "version": "5.5.0", - "bundled": true, - "dev": true + "bundled": true }, "set-blocking": { "version": "2.0.0", - "bundled": true, - "dev": true + "bundled": true }, "set-value": { "version": "2.0.0", "bundled": true, - "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "split-string": "3.1.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" }, "dependencies": { "extend-shallow": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -2615,55 +2317,48 @@ "shebang-command": { "version": "1.2.0", "bundled": true, - "dev": true, "requires": { - "shebang-regex": "1.0.0" + "shebang-regex": "^1.0.0" } }, "shebang-regex": { "version": "1.0.0", - "bundled": true, - "dev": true + "bundled": true }, "signal-exit": { "version": "3.0.2", - "bundled": true, - "dev": true + "bundled": true }, "slide": { "version": "1.1.6", - "bundled": true, - "dev": true + "bundled": true }, "snapdragon": { "version": "0.8.2", "bundled": true, - "dev": true, "requires": { - "base": "0.11.2", - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "map-cache": "0.2.2", - "source-map": "0.5.7", - "source-map-resolve": "0.5.1", - "use": "3.1.0" + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" }, "dependencies": { "define-property": { "version": "0.2.5", "bundled": true, - "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -2671,153 +2366,134 @@ "snapdragon-node": { "version": "2.1.1", "bundled": true, - "dev": true, "requires": { - "define-property": "1.0.0", - "isobject": "3.0.1", - "snapdragon-util": "3.0.1" + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" }, "dependencies": { "define-property": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "is-accessor-descriptor": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { "version": "1.0.2", "bundled": true, - "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true }, "kind-of": { "version": "6.0.2", - "bundled": true, - "dev": true + "bundled": true } } }, "snapdragon-util": { "version": "3.0.1", "bundled": true, - "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.2.0" } }, "source-map": { "version": "0.5.7", - "bundled": true, - "dev": true + "bundled": true }, "source-map-resolve": { "version": "0.5.1", "bundled": true, - "dev": true, "requires": { - "atob": "2.1.1", - "decode-uri-component": "0.2.0", - "resolve-url": "0.2.1", - "source-map-url": "0.4.0", - "urix": "0.1.0" + "atob": "^2.0.0", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" } }, "source-map-url": { "version": "0.4.0", - "bundled": true, - "dev": true + "bundled": true }, "spawn-wrap": { "version": "1.4.2", "bundled": true, - "dev": true, "requires": { - "foreground-child": "1.5.6", - "mkdirp": "0.5.1", - "os-homedir": "1.0.2", - "rimraf": "2.6.2", - "signal-exit": "3.0.2", - "which": "1.3.0" + "foreground-child": "^1.5.6", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "which": "^1.3.0" } }, "spdx-correct": { "version": "3.0.0", "bundled": true, - "dev": true, "requires": { - "spdx-expression-parse": "3.0.0", - "spdx-license-ids": "3.0.0" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-exceptions": { "version": "2.1.0", - "bundled": true, - "dev": true + "bundled": true }, "spdx-expression-parse": { "version": "3.0.0", "bundled": true, - "dev": true, "requires": { - "spdx-exceptions": "2.1.0", - "spdx-license-ids": "3.0.0" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-license-ids": { "version": "3.0.0", - "bundled": true, - "dev": true + "bundled": true }, "split-string": { "version": "3.1.0", "bundled": true, - "dev": true, "requires": { - "extend-shallow": "3.0.2" + "extend-shallow": "^3.0.0" } }, "static-extend": { "version": "0.1.2", "bundled": true, - "dev": true, "requires": { - "define-property": "0.2.5", - "object-copy": "0.1.0" + "define-property": "^0.2.5", + "object-copy": "^0.1.0" }, "dependencies": { "define-property": { "version": "0.2.5", "bundled": true, - "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } } } @@ -2825,23 +2501,20 @@ "string-width": { "version": "2.1.1", "bundled": true, - "dev": true, "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" }, "dependencies": { "ansi-regex": { "version": "3.0.0", - "bundled": true, - "dev": true + "bundled": true }, "strip-ansi": { "version": "4.0.0", "bundled": true, - "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } } } @@ -2849,74 +2522,65 @@ "strip-ansi": { "version": "3.0.1", "bundled": true, - "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "strip-bom": { "version": "2.0.0", "bundled": true, - "dev": true, "requires": { - "is-utf8": "0.2.1" + "is-utf8": "^0.2.0" } }, "strip-eof": { "version": "1.0.0", - "bundled": true, - "dev": true + "bundled": true }, "supports-color": { "version": "2.0.0", - "bundled": true, - "dev": true + "bundled": true }, "test-exclude": { "version": "4.2.1", "bundled": true, - "dev": true, "requires": { - "arrify": "1.0.1", - "micromatch": "3.1.10", - "object-assign": "4.1.1", - "read-pkg-up": "1.0.1", - "require-main-filename": "1.0.1" + "arrify": "^1.0.1", + "micromatch": "^3.1.8", + "object-assign": "^4.1.0", + "read-pkg-up": "^1.0.1", + "require-main-filename": "^1.0.1" }, "dependencies": { "arr-diff": { "version": "4.0.0", - "bundled": true, - "dev": true + "bundled": true }, "array-unique": { "version": "0.3.2", - "bundled": true, - "dev": true + "bundled": true }, "braces": { "version": "2.3.2", "bundled": true, - "dev": true, "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { "extend-shallow": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -2924,47 +2588,42 @@ "expand-brackets": { "version": "2.1.4", "bundled": true, - "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { "version": "0.2.5", "bundled": true, - "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "is-accessor-descriptor": { "version": "0.1.6", "bundled": true, - "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { "version": "3.2.2", "bundled": true, - "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -2972,17 +2631,15 @@ "is-data-descriptor": { "version": "0.1.4", "bundled": true, - "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { "version": "3.2.2", "bundled": true, - "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -2990,49 +2647,44 @@ "is-descriptor": { "version": "0.1.6", "bundled": true, - "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } }, "kind-of": { "version": "5.1.0", - "bundled": true, - "dev": true + "bundled": true } } }, "extglob": { "version": "2.0.4", "bundled": true, - "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -3040,20 +2692,18 @@ "fill-range": { "version": "4.0.0", "bundled": true, - "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -3061,147 +2711,131 @@ "is-accessor-descriptor": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { "version": "1.0.2", "bundled": true, - "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "is-number": { "version": "3.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" }, "dependencies": { "kind-of": { "version": "3.2.2", "bundled": true, - "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } }, "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true }, "kind-of": { "version": "6.0.2", - "bundled": true, - "dev": true + "bundled": true }, "micromatch": { "version": "3.1.10", "bundled": true, - "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.9", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } } } }, "to-fast-properties": { "version": "1.0.3", - "bundled": true, - "dev": true + "bundled": true }, "to-object-path": { "version": "0.3.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "to-regex": { "version": "3.0.2", "bundled": true, - "dev": true, "requires": { - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "regex-not": "1.0.2", - "safe-regex": "1.1.0" + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" } }, "to-regex-range": { "version": "2.1.1", "bundled": true, - "dev": true, "requires": { - "is-number": "3.0.0", - "repeat-string": "1.6.1" + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" }, "dependencies": { "is-number": { "version": "3.0.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } } } }, "trim-right": { "version": "1.0.1", - "bundled": true, - "dev": true + "bundled": true }, "uglify-js": { "version": "2.8.29", "bundled": true, - "dev": true, "optional": true, "requires": { - "source-map": "0.5.7", - "uglify-to-browserify": "1.0.2", - "yargs": "3.10.0" + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" }, "dependencies": { "yargs": { "version": "3.10.0", "bundled": true, - "dev": true, "optional": true, "requires": { - "camelcase": "1.2.1", - "cliui": "2.1.0", - "decamelize": "1.2.0", + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", "window-size": "0.1.0" } } @@ -3210,37 +2844,33 @@ "uglify-to-browserify": { "version": "1.0.2", "bundled": true, - "dev": true, "optional": true }, "union-value": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "arr-union": "3.1.0", - "get-value": "2.0.6", - "is-extendable": "0.1.1", - "set-value": "0.4.3" + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" }, "dependencies": { "extend-shallow": { "version": "2.0.1", "bundled": true, - "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "set-value": { "version": "0.4.3", "bundled": true, - "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "to-object-path": "0.3.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" } } } @@ -3248,26 +2878,23 @@ "unset-value": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "has-value": "0.3.1", - "isobject": "3.0.1" + "has-value": "^0.3.1", + "isobject": "^3.0.0" }, "dependencies": { "has-value": { "version": "0.3.1", "bundled": true, - "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "0.1.4", - "isobject": "2.1.0" + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" }, "dependencies": { "isobject": { "version": "2.1.0", "bundled": true, - "dev": true, "requires": { "isarray": "1.0.0" } @@ -3276,176 +2903,153 @@ }, "has-values": { "version": "0.1.4", - "bundled": true, - "dev": true + "bundled": true }, "isobject": { "version": "3.0.1", - "bundled": true, - "dev": true + "bundled": true } } }, "urix": { "version": "0.1.0", - "bundled": true, - "dev": true + "bundled": true }, "use": { "version": "3.1.0", "bundled": true, - "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.2" }, "dependencies": { "kind-of": { "version": "6.0.2", - "bundled": true, - "dev": true + "bundled": true } } }, "validate-npm-package-license": { "version": "3.0.3", "bundled": true, - "dev": true, "requires": { - "spdx-correct": "3.0.0", - "spdx-expression-parse": "3.0.0" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, "which": { "version": "1.3.0", "bundled": true, - "dev": true, "requires": { - "isexe": "2.0.0" + "isexe": "^2.0.0" } }, "which-module": { "version": "2.0.0", - "bundled": true, - "dev": true + "bundled": true }, "window-size": { "version": "0.1.0", "bundled": true, - "dev": true, "optional": true }, "wordwrap": { "version": "0.0.3", - "bundled": true, - "dev": true + "bundled": true }, "wrap-ansi": { "version": "2.1.0", "bundled": true, - "dev": true, "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" }, "dependencies": { "is-fullwidth-code-point": { "version": "1.0.0", "bundled": true, - "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { "version": "1.0.2", "bundled": true, - "dev": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } } } }, "wrappy": { "version": "1.0.2", - "bundled": true, - "dev": true + "bundled": true }, "write-file-atomic": { "version": "1.3.4", "bundled": true, - "dev": true, "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "slide": "1.1.6" + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" } }, "y18n": { "version": "3.2.1", - "bundled": true, - "dev": true + "bundled": true }, "yallist": { "version": "2.1.2", - "bundled": true, - "dev": true + "bundled": true }, "yargs": { "version": "11.1.0", "bundled": true, - "dev": true, - "requires": { - "cliui": "4.1.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "9.0.2" + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" }, "dependencies": { "ansi-regex": { "version": "3.0.0", - "bundled": true, - "dev": true + "bundled": true }, "camelcase": { "version": "4.1.0", - "bundled": true, - "dev": true + "bundled": true }, "cliui": { "version": "4.1.0", "bundled": true, - "dev": true, "requires": { - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "wrap-ansi": "2.1.0" + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" } }, "strip-ansi": { "version": "4.0.0", "bundled": true, - "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } }, "yargs-parser": { "version": "9.0.2", "bundled": true, - "dev": true, "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" } } } @@ -3453,15 +3057,13 @@ "yargs-parser": { "version": "8.1.0", "bundled": true, - "dev": true, "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" }, "dependencies": { "camelcase": { "version": "4.1.0", - "bundled": true, - "dev": true + "bundled": true } } } @@ -3470,8 +3072,7 @@ "oauth-sign": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", - "dev": true + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" }, "object-assign": { "version": "4.1.1", @@ -3483,44 +3084,40 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "opener": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/opener/-/opener-1.4.3.tgz", - "integrity": "sha1-XG2ixdflgx6P+jlklQ+NZnSskLg=", - "dev": true + "integrity": "sha1-XG2ixdflgx6P+jlklQ+NZnSskLg=" }, "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" }, "os-locale": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", "requires": { - "execa": "0.7.0", - "lcid": "1.0.0", - "mem": "1.1.0" + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" } }, "own-or": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/own-or/-/own-or-1.0.0.tgz", - "integrity": "sha1-Tod/vtqaLsgAD7wLyuOWRe6L+Nw=", - "dev": true + "integrity": "sha1-Tod/vtqaLsgAD7wLyuOWRe6L+Nw=" }, "own-or-env": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/own-or-env/-/own-or-env-1.0.1.tgz", "integrity": "sha512-y8qULRbRAlL6x2+M0vIe7jJbJx/kmUTzYonRAa2ayesR2qWLswninkVyeJe4x3IEXhdgoNodzjQRKAoEs6Fmrw==", - "dev": true, "requires": { - "own-or": "1.0.0" + "own-or": "^1.0.0" } }, "p-finally": { @@ -3533,7 +3130,7 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "requires": { - "p-try": "1.0.0" + "p-try": "^1.0.0" } }, "p-locate": { @@ -3541,7 +3138,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "requires": { - "p-limit": "1.3.0" + "p-limit": "^1.1.0" } }, "p-try": { @@ -3567,14 +3164,12 @@ "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "process-nextick-args": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", - "dev": true, "optional": true }, "pseudomap": { @@ -3585,57 +3180,53 @@ "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" }, "qs": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" }, "readable-stream": { "version": "2.3.6", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, "optional": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "2.0.0", - "safe-buffer": "5.1.2", - "string_decoder": "1.1.1", - "util-deprecate": "1.0.2" + "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" } }, "request": { "version": "2.87.0", "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", - "dev": true, "requires": { - "aws-sign2": "0.7.0", - "aws4": "1.7.0", - "caseless": "0.12.0", - "combined-stream": "1.0.6", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.3.2", - "har-validator": "5.0.3", - "http-signature": "1.2.0", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.18", - "oauth-sign": "0.8.2", - "performance-now": "2.1.0", - "qs": "6.5.2", - "safe-buffer": "5.1.2", - "tough-cookie": "2.3.4", - "tunnel-agent": "0.6.0", - "uuid": "3.3.2" + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" } }, "require-directory": { @@ -3652,22 +3243,19 @@ "version": "2.6.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", - "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "set-blocking": { "version": "2.0.0", @@ -3679,7 +3267,7 @@ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "requires": { - "shebang-regex": "1.0.0" + "shebang-regex": "^1.0.0" } }, "shebang-regex": { @@ -3697,9 +3285,9 @@ "resolved": "https://registry.npmjs.org/sort-json/-/sort-json-2.0.0.tgz", "integrity": "sha512-OgXPErPJM/rBK5OhzIJ+etib/BmLQ1JY55Nb/ElhoWUec62pXNF/X6DrecHq3NW5OAGX0KxYD7m0HtgB9dvGeA==", "requires": { - "detect-indent": "5.0.0", - "detect-newline": "2.1.0", - "minimist": "1.2.0" + "detect-indent": "^5.0.0", + "detect-newline": "^2.1.0", + "minimist": "^1.2.0" } }, "source-map": { @@ -3712,9 +3300,9 @@ "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.3.tgz", "integrity": "sha512-MYbFX9DYxmTQFfy2v8FC1XZwpwHKYxg3SK8Wb7VPBKuhDjz8gi9re2819MsG4p49HDyiOSUKlmZ+nQBArW5CGw==", "requires": { - "async": "2.6.1", - "loader-utils": "0.2.17", - "source-map": "0.6.1" + "async": "^2.5.0", + "loader-utils": "~0.2.2", + "source-map": "~0.6.1" } }, "source-map-support": { @@ -3722,8 +3310,8 @@ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", "requires": { - "buffer-from": "1.1.0", - "source-map": "0.6.1" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, "spdx-license-list": { @@ -3734,39 +3322,36 @@ "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" }, "sshpk": { "version": "1.14.2", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", - "dev": true, "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.2", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jsbn": "0.1.1", - "safer-buffer": "2.1.2", - "tweetnacl": "0.14.5" + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" } }, "stack-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.1.tgz", - "integrity": "sha1-1PM6tU6OOHeLDKXP07OvsS22hiA=", - "dev": true + "integrity": "sha1-1PM6tU6OOHeLDKXP07OvsS22hiA=" }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" }, "dependencies": { "ansi-regex": { @@ -3779,7 +3364,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } } } @@ -3788,10 +3373,9 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "optional": true, "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "~5.1.0" } }, "strip-ansi": { @@ -3799,7 +3383,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "strip-eof": { @@ -3811,65 +3395,62 @@ "version": "12.0.1", "resolved": "https://registry.npmjs.org/tap/-/tap-12.0.1.tgz", "integrity": "sha512-iEJytWaZy8risvfRjuV4+ST+Lrrui/MW2ZCWn01ZaMn0NKFej4+PpBy6bXGOg9+cEGNmI7d3Sdka/zTUZUGidA==", - "dev": true, - "requires": { - "bind-obj-methods": "2.0.0", - "bluebird": "3.5.1", - "clean-yaml-object": "0.1.0", - "color-support": "1.1.3", - "coveralls": "3.0.2", - "foreground-child": "1.5.6", - "fs-exists-cached": "1.0.0", - "function-loop": "1.0.1", - "glob": "7.1.2", - "isexe": "2.0.0", - "js-yaml": "3.12.0", - "minipass": "2.3.3", - "mkdirp": "0.5.1", - "nyc": "11.9.0", - "opener": "1.4.3", - "os-homedir": "1.0.2", - "own-or": "1.0.0", - "own-or-env": "1.0.1", - "rimraf": "2.6.2", - "signal-exit": "3.0.2", - "source-map-support": "0.5.6", - "stack-utils": "1.0.1", - "tap-mocha-reporter": "3.0.7", - "tap-parser": "7.0.0", - "tmatch": "4.0.0", - "trivial-deferred": "1.0.1", - "tsame": "2.0.0", - "write-file-atomic": "2.3.0", - "yapool": "1.0.0" + "requires": { + "bind-obj-methods": "^2.0.0", + "bluebird": "^3.5.1", + "clean-yaml-object": "^0.1.0", + "color-support": "^1.1.0", + "coveralls": "^3.0.1", + "foreground-child": "^1.3.3", + "fs-exists-cached": "^1.0.0", + "function-loop": "^1.0.1", + "glob": "^7.0.0", + "isexe": "^2.0.0", + "js-yaml": "^3.11.0", + "minipass": "^2.3.0", + "mkdirp": "^0.5.1", + "nyc": "^11.8.0", + "opener": "^1.4.1", + "os-homedir": "^1.0.2", + "own-or": "^1.0.0", + "own-or-env": "^1.0.1", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.0", + "source-map-support": "^0.5.6", + "stack-utils": "^1.0.0", + "tap-mocha-reporter": "^3.0.7", + "tap-parser": "^7.0.0", + "tmatch": "^4.0.0", + "trivial-deferred": "^1.0.1", + "tsame": "^2.0.0", + "write-file-atomic": "^2.3.0", + "yapool": "^1.0.0" } }, "tap-mocha-reporter": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/tap-mocha-reporter/-/tap-mocha-reporter-3.0.7.tgz", "integrity": "sha512-GHVXJ38C3oPRpM3YUc43JlGdpVZYiKeT1fmAd3HH2+J+ZWwsNAUFvRRdoGsXLw9+gU9o+zXpBqhS/oXyRQYwlA==", - "dev": true, - "requires": { - "color-support": "1.1.3", - "debug": "2.6.9", - "diff": "1.4.0", - "escape-string-regexp": "1.0.5", - "glob": "7.1.2", - "js-yaml": "3.12.0", - "readable-stream": "2.3.6", - "tap-parser": "5.4.0", - "unicode-length": "1.0.3" + "requires": { + "color-support": "^1.1.0", + "debug": "^2.1.3", + "diff": "^1.3.2", + "escape-string-regexp": "^1.0.3", + "glob": "^7.0.5", + "js-yaml": "^3.3.1", + "readable-stream": "^2.1.5", + "tap-parser": "^5.1.0", + "unicode-length": "^1.0.0" }, "dependencies": { "tap-parser": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-5.4.0.tgz", "integrity": "sha512-BIsIaGqv7uTQgTW1KLTMNPSEQf4zDDPgYOBRdgOfuB+JFOLRBfEu6cLa/KvMvmqggu1FKXDfitjLwsq4827RvA==", - "dev": true, "requires": { - "events-to-array": "1.1.2", - "js-yaml": "3.12.0", - "readable-stream": "2.3.6" + "events-to-array": "^1.0.1", + "js-yaml": "^3.2.7", + "readable-stream": "^2" } } } @@ -3878,54 +3459,47 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-7.0.0.tgz", "integrity": "sha512-05G8/LrzqOOFvZhhAk32wsGiPZ1lfUrl+iV7+OkKgfofZxiceZWMHkKmow71YsyVQ8IvGBP2EjcIjE5gL4l5lA==", - "dev": true, "requires": { - "events-to-array": "1.1.2", - "js-yaml": "3.12.0", - "minipass": "2.3.3" + "events-to-array": "^1.0.1", + "js-yaml": "^3.2.7", + "minipass": "^2.2.0" } }, "tmatch": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/tmatch/-/tmatch-4.0.0.tgz", - "integrity": "sha512-Ynn2Gsp+oCvYScQXeV+cCs7citRDilq0qDXA6tuvFwDgiYyyaq7D5vKUlAPezzZR5NDobc/QMeN6e5guOYmvxg==", - "dev": true + "integrity": "sha512-Ynn2Gsp+oCvYScQXeV+cCs7citRDilq0qDXA6tuvFwDgiYyyaq7D5vKUlAPezzZR5NDobc/QMeN6e5guOYmvxg==" }, "tough-cookie": { "version": "2.3.4", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", - "dev": true, "requires": { - "punycode": "1.4.1" + "punycode": "^1.4.1" } }, "trivial-deferred": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trivial-deferred/-/trivial-deferred-1.0.1.tgz", - "integrity": "sha1-N21NKdlR1jaKb3oK6FwvTV4GWPM=", - "dev": true + "integrity": "sha1-N21NKdlR1jaKb3oK6FwvTV4GWPM=" }, "tsame": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/tsame/-/tsame-2.0.0.tgz", - "integrity": "sha512-dAuzcnOPdqZYojylFQzEes95UDjve3HqKrlTCeLZKSDPMTsn3smzHZqsJj/sWD8wOUkg0RD++B11evyLn2+bIw==", - "dev": true + "integrity": "sha512-dAuzcnOPdqZYojylFQzEes95UDjve3HqKrlTCeLZKSDPMTsn3smzHZqsJj/sWD8wOUkg0RD++B11evyLn2+bIw==" }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "^5.0.1" } }, "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true, "optional": true }, "typescript": { @@ -3937,10 +3511,9 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/unicode-length/-/unicode-length-1.0.3.tgz", "integrity": "sha1-Wtp6f+1RhBpBijKM8UlHisg1irs=", - "dev": true, "requires": { - "punycode": "1.4.1", - "strip-ansi": "3.0.1" + "punycode": "^1.3.2", + "strip-ansi": "^3.0.1" } }, "universalify": { @@ -3952,24 +3525,21 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true, "optional": true }, "uuid": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", - "dev": true + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" }, "verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, "requires": { - "assert-plus": "1.0.0", + "assert-plus": "^1.0.0", "core-util-is": "1.0.2", - "extsprintf": "1.3.0" + "extsprintf": "^1.2.0" } }, "which": { @@ -3977,7 +3547,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "requires": { - "isexe": "2.0.0" + "isexe": "^2.0.0" } }, "which-module": { @@ -3990,8 +3560,8 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" }, "dependencies": { "is-fullwidth-code-point": { @@ -3999,7 +3569,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -4007,9 +3577,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } } } @@ -4023,11 +3593,10 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", - "dev": true, "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "signal-exit": "3.0.2" + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" } }, "y18n": { @@ -4043,26 +3612,25 @@ "yapool": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/yapool/-/yapool-1.0.0.tgz", - "integrity": "sha1-9pPymjFbUNmp2iZGp6ZkXJaYW2o=", - "dev": true + "integrity": "sha1-9pPymjFbUNmp2iZGp6ZkXJaYW2o=" }, "yargs": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.1.0.tgz", "integrity": "sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A==", "requires": { - "cliui": "4.1.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.2", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "9.0.2" + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" } }, "yargs-parser": { @@ -4070,7 +3638,7 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-9.0.2.tgz", "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" } } } From c0ef739e3ddfa35d88ee3055fc8c81ae30e6ae2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=F0=9F=91=A8=F0=9F=8F=BC=E2=80=8D=F0=9F=92=BB=20Romain=20M?= =?UTF-8?q?arcadier-Muller?= Date: Mon, 6 Aug 2018 15:11:17 +0200 Subject: [PATCH 6/6] Added some example in comments --- packages/jsii-pacmak/lib/target.ts | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/packages/jsii-pacmak/lib/target.ts b/packages/jsii-pacmak/lib/target.ts index e21a85f6d7..5551846652 100644 --- a/packages/jsii-pacmak/lib/target.ts +++ b/packages/jsii-pacmak/lib/target.ts @@ -117,7 +117,9 @@ export interface TargetConstructor { * * @param assm the assembly for which coodinates are requested. * - * @return Information about the assembly in the various package managers supported for a given language. + * @return Information about the assembly in the various package managers supported for a given language. The return + * value is a hash, as some packages can be used across different languages (typescript & javascript, java & + * scala & clojure & kotlin...). */ toPackageInfos?: (assm: spec.Assembly) => { [language: string]: PackageInfo }; @@ -128,7 +130,8 @@ export interface TargetConstructor { * @param type the JSII type for which a native reference is requested. * @param options the target-specific options provided. * - * @return the native reference for the target for each supported language. + * @return the native reference for the target for each supported language (there can be multiple languages + * supported by a given target: typescript & javascript, java & scala & clojure & kotlin, ...) */ toNativeReference?: (type: spec.Type, options: any) => { [language: string]: string }; @@ -149,6 +152,20 @@ export interface PackageInfo { * Configuration fragments or installation instructions, by client scenario (e.g: maven + gradle). Values can be a * plain string (documentation should render as a pre-formatted block of text using monospace font), or an object * describing a language-tagged block of code. + * + * @example { + * maven: { + * language: 'xml', + * code: 'grpartversion' + * }, + * gradle: "compile 'grp:art:version'", + * } + * + * @example { + * npm: { language: 'console', code: '$ npm install pkg' }, + * yarn: { language: 'console', code: '$ yarn add pkg' }, + * 'package.json': { language: json, code: '{"pkg": "^version" }' } + * } */ usage: { [label: string]: string | { language: string, code: string } }; }