diff --git a/.gitignore b/.gitignore
index 6eecb4d2..f8cc68f9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -22,6 +22,8 @@ node_modules
lib/
stats.json
+e2e/build/
+cypress/
/coverage
.ghpages-tmp
diff --git a/cypress.json b/cypress.json
new file mode 100644
index 00000000..d9a183e3
--- /dev/null
+++ b/cypress.json
@@ -0,0 +1,8 @@
+{
+ "integrationFolder": "e2e/.build",
+ "fixturesFolder": false,
+ "supportFile": false,
+ "fileServerFolder": ".",
+ "videoRecording": false,
+ "screenshotOnHeadlessFailure": false
+}
diff --git a/e2e/.build/standalone.e2e.js b/e2e/.build/standalone.e2e.js
new file mode 100644
index 00000000..d38ed49a
--- /dev/null
+++ b/e2e/.build/standalone.e2e.js
@@ -0,0 +1,31 @@
+describe('Standalone bundle test', function () {
+ describe('OAS3 mode', function () {
+ it('Render and check no errors', function () {
+ cy
+ .visit('e2e/standalone.html')
+ .get('.api-info')
+ .should('exist');
+ });
+ it('Render and click all the menu items', function () {
+ cy
+ .visit('e2e/standalone.html')
+ .get('.menu-content li')
+ .click({ multiple: true });
+ });
+ });
+ describe('OAS2 compatibility mode', function () {
+ it('Render and check no errors', function () {
+ cy
+ .visit('e2e/standalone.html')
+ .get('.api-info')
+ .should('exist');
+ });
+ it('Render and click all the menu items', function () {
+ cy
+ .visit('e2e/standalone.html')
+ .get('.menu-content li')
+ .click({ multiple: true });
+ });
+ });
+});
+//# sourceMappingURL=standalone.e2e.js.map
\ No newline at end of file
diff --git a/e2e/.build/standalone.e2e.js.map b/e2e/.build/standalone.e2e.js.map
new file mode 100644
index 00000000..a4c53327
--- /dev/null
+++ b/e2e/.build/standalone.e2e.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"standalone.e2e.js","sourceRoot":"","sources":["../standalone.e2e.ts"],"names":[],"mappings":"AAAA,QAAQ,CAAC,wBAAwB,EAAE;IACjC,QAAQ,CAAC,WAAW,EAAE;QACpB,EAAE,CAAC,4BAA4B,EAAE;YAC/B,EAAE;iBACC,KAAK,CAAC,qBAAqB,CAAC;iBAC5B,GAAG,CAAC,WAAW,CAAC;iBAChB,MAAM,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE;YACxC,EAAE;iBACC,KAAK,CAAC,qBAAqB,CAAC;iBAC5B,GAAG,CAAC,kBAAkB,CAAC;iBACvB,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE;QAClC,EAAE,CAAC,4BAA4B,EAAE;YAC/B,EAAE;iBACC,KAAK,CAAC,qBAAqB,CAAC;iBAC5B,GAAG,CAAC,WAAW,CAAC;iBAChB,MAAM,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE;YACxC,EAAE;iBACC,KAAK,CAAC,qBAAqB,CAAC;iBAC5B,GAAG,CAAC,kBAAkB,CAAC;iBACvB,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
\ No newline at end of file
diff --git a/e2e/standalone-compatibility.html b/e2e/standalone-compatibility.html
new file mode 100644
index 00000000..73d0181c
--- /dev/null
+++ b/e2e/standalone-compatibility.html
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/e2e/standalone.e2e.ts b/e2e/standalone.e2e.ts
new file mode 100644
index 00000000..4f09bc07
--- /dev/null
+++ b/e2e/standalone.e2e.ts
@@ -0,0 +1,33 @@
+describe('Standalone bundle test', function() {
+ describe('OAS3 mode', () => {
+ it('Render and check no errors', function() {
+ cy
+ .visit('e2e/standalone.html')
+ .get('.api-info')
+ .should('exist');
+ });
+
+ it('Render and click all the menu items', function() {
+ cy
+ .visit('e2e/standalone.html')
+ .get('.menu-content li')
+ .click({ multiple: true });
+ });
+ });
+
+ describe('OAS2 compatibility mode', () => {
+ it('Render and check no errors', function() {
+ cy
+ .visit('e2e/standalone.html')
+ .get('.api-info')
+ .should('exist');
+ });
+
+ it('Render and click all the menu items', function() {
+ cy
+ .visit('e2e/standalone.html')
+ .get('.menu-content li')
+ .click({ multiple: true });
+ });
+ });
+});
diff --git a/e2e/standalone.html b/e2e/standalone.html
new file mode 100644
index 00000000..b9f1f448
--- /dev/null
+++ b/e2e/standalone.html
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/package.json b/package.json
index 9d7ccaa4..24cee077 100644
--- a/package.json
+++ b/package.json
@@ -9,19 +9,27 @@
"start:perf": "webpack-dev-server --env.prod --env.perf",
"start:prod": "webpack-dev-server --env.prod",
"dev": "webpack-dashboard -- webpack-dev-server --hot",
- "test": "jest",
- "bundle": "webpack",
- "bundle:prod": "webpack -p --env.prod",
+ "test": "npm run unit && npm run e2e",
+ "unit": "jest",
+ "e2e": "npm run e2e:tsc && cypress run",
+ "e2e:tsc": "tsc -p tsconfig.e2e.json",
+ "e2e:clean": "rimraf e2e/.build",
+ "cy:open": "cypress open",
+ "bundle:clean": "rimraf bundles",
+ "bundle": "npm run bundle:clean && webpack -p --env.prod --env.standalone",
"stats": "webpack -p --env.prod --json --profile > stats.json",
"prettier": "prettier --write \"src/**/*.{ts,tsx}\""
},
"author": "",
"license": "MIT",
"devDependencies": {
+ "@types/chai": "^4.0.5",
+ "@types/cypress": "^0.1.2",
"@types/enzyme": "^2.8.10",
"@types/enzyme-to-json": "^1.5.0",
"@types/jest": "^20.0.8",
"@types/json-pointer": "^1.0.30",
+ "@types/mocha": "^2.2.44",
"@types/prismjs": "^1.6.4",
"@types/react": "^16.0.9",
"@types/react-dom": "^16.0.0",
@@ -31,6 +39,7 @@
"@types/webpack-env": "^1.13.0",
"awesome-typescript-loader": "^3.2.2",
"css-loader": "^0.28.7",
+ "cypress": "^1.0.3",
"enzyme": "^3.1.1",
"enzyme-adapter-react-16": "^1.0.4",
"enzyme-to-json": "^3.2.2",
@@ -51,7 +60,10 @@
"typescript": "^2.4.2",
"webpack": "^3.4.1",
"webpack-dashboard": "^0.4.0",
- "webpack-dev-server": "^2.6.1"
+ "webpack-dev-server": "^2.6.1",
+ "http-server": "^0.10.0",
+ "core-js": "^2.5.1",
+ "rimraf": "^2.6.2"
},
"dependencies": {
"decko": "^1.2.0",
diff --git a/src/components/LoadingWrap/LoadingWrap.tsx b/src/components/LoadingWrap/LoadingWrap.tsx
index b276e9ca..6c34f3f9 100644
--- a/src/components/LoadingWrap/LoadingWrap.tsx
+++ b/src/components/LoadingWrap/LoadingWrap.tsx
@@ -5,17 +5,17 @@ import styled from '../../styled-components';
import { Spinner } from './Spinner.svg';
const LoadingMessage = styled.div`
- font-family: ${props => props.theme.baseFont.family};
+ font-family: black;
width: 100%;
text-align: center;
font-size: 25px;
margin: 30px 0 20px 0;
- color: ${props => props.theme.colors.main};
+ color: black;
`;
export class LoadingWrap extends React.Component<{ loading: boolean }> {
render() {
- if (this.props.loading) {
+ if (!this.props.loading) {
return Children.only(this.props.children);
}
return (
diff --git a/src/components/LoadingWrap/Spinner.svg.tsx b/src/components/LoadingWrap/Spinner.svg.tsx
index 77cfcf0d..0361720b 100644
--- a/src/components/LoadingWrap/Spinner.svg.tsx
+++ b/src/components/LoadingWrap/Spinner.svg.tsx
@@ -31,6 +31,6 @@ export const Spinner = styled(_Spinner)`
margin-left: -25px;
path {
- fill: ${props => props.theme.colors.main};
+ fill: black;
}
`;
diff --git a/src/components/Redoc/Redoc.tsx b/src/components/Redoc/Redoc.tsx
index 48b1602e..5e1e0854 100644
--- a/src/components/Redoc/Redoc.tsx
+++ b/src/components/Redoc/Redoc.tsx
@@ -26,8 +26,9 @@ export class Redoc extends React.Component {
render() {
const { store: { spec, menu }, options = {} } = this.props;
+ console.log(options.theme, defaultTheme, { ...options.theme, ...defaultTheme });
return (
-
+
diff --git a/src/components/StoreProvider.ts b/src/components/StoreProvider.ts
index b0b41991..1fb616e3 100644
--- a/src/components/StoreProvider.ts
+++ b/src/components/StoreProvider.ts
@@ -1,6 +1,6 @@
import { Component } from 'react';
import { AppStore } from '../services/';
-import { loadSpec } from '../utils';
+import { loadAndBundleSpec } from '../utils';
interface SpecProps {
specUrl?: string;
@@ -23,7 +23,7 @@ export class StoreProvider extends Component {
super(props);
this.state = {
- loading: false,
+ loading: true,
};
this.load();
@@ -37,7 +37,7 @@ export class StoreProvider extends Component {
});
try {
- const resolvedSpec = await loadSpec(spec || specUrl!);
+ const resolvedSpec = await loadAndBundleSpec(spec || specUrl!);
this.setState({
loading: false,
store: new AppStore(resolvedSpec, specUrl),
diff --git a/src/components/index.ts b/src/components/index.ts
index 7934b6c1..233dd8ec 100644
--- a/src/components/index.ts
+++ b/src/components/index.ts
@@ -3,4 +3,8 @@ export * from './Redoc/Redoc';
export * from './Redoc/elements';
export * from './Schema/';
export * from './Operation/Operation';
+export * from './RedocStandalone';
+
+export * from './ErrorBoundary';
+export * from './StoreProvider';
// re-export the rest of components
diff --git a/src/hmr-playground.tsx b/src/hmr-playground.tsx
index 76ac026e..18cb54ae 100644
--- a/src/hmr-playground.tsx
+++ b/src/hmr-playground.tsx
@@ -5,7 +5,7 @@ import { AppContainer } from 'react-hot-loader';
import { Redoc } from './components/Redoc/Redoc';
import { AppStore } from './services/AppStore';
-import { loadSpec } from './utils/loadSpec';
+import { loadAndBundleSpec } from './utils/loadAndBundleSpec';
const renderRoot = (Component: typeof Redoc, props: { store: AppStore }) =>
render(
@@ -25,7 +25,7 @@ const specUrl = swagger ? 'swagger.yaml' : big ? 'big-openapi.json' : 'swagger.y
let store;
async function init() {
- const spec = await loadSpec(specUrl);
+ const spec = await loadAndBundleSpec(specUrl);
store = new AppStore(spec, specUrl);
renderRoot(Redoc, { store: store });
}
diff --git a/src/index.ts b/src/index.ts
index 2ee9aeb9..80e3bea6 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -1,20 +1,2 @@
-import { render } from 'react-dom';
-import * as React from 'react';
-
-import { RedocStandalone } from './components/Redoc';
-
export * from './components';
export * from './services';
-
-export function init(specOrSpecUrl: string | any, options?: any, element?: Element) {
- render(
- React.createElement(
- RedocStandalone,
- {
- specOrSpecUrl,
- },
- [],
- ),
- element || document.querySelector('redoc'),
- );
-}
diff --git a/src/polyfills.ts b/src/polyfills.ts
new file mode 100644
index 00000000..e69de29b
diff --git a/src/services/AppStore.ts b/src/services/AppStore.ts
index e9a8993d..bb1d8936 100644
--- a/src/services/AppStore.ts
+++ b/src/services/AppStore.ts
@@ -2,6 +2,7 @@ import { OpenAPISpec } from '../types';
import { SpecStore } from './models';
import { MenuStore } from './MenuStore';
import { ScrollService } from './ScrollService';
+import { loadAndBundleSpec } from '../utils/loadAndBundleSpec';
type StoreData = {
menu: {
@@ -13,6 +14,11 @@ type StoreData = {
};
};
+export async function createStore(spec: object, specUrl: string) {
+ const resolvedSpec = await loadAndBundleSpec(spec || specUrl);
+ return new AppStore(resolvedSpec, specUrl);
+}
+
export class AppStore {
menu: MenuStore;
spec: SpecStore;
diff --git a/src/services/models/MediaContent.ts b/src/services/models/MediaContent.ts
index f9e4eb9d..07c8fb8f 100644
--- a/src/services/models/MediaContent.ts
+++ b/src/services/models/MediaContent.ts
@@ -22,7 +22,8 @@ export class MediaContentModel {
info: { [mime: string]: OpenAPIMediaType },
public isRequestType: boolean = false,
) {
- this.mediaTypes = Object.entries(info).map(([name, mime]) => {
+ this.mediaTypes = Object.keys(info).map(name => {
+ const mime = info[name];
// reset deref cache just in case something is left there
parser.resetVisited();
return new MediaTypeModel(parser, name, isRequestType, mime);
diff --git a/src/standalone.tsx b/src/standalone.tsx
new file mode 100644
index 00000000..258311c7
--- /dev/null
+++ b/src/standalone.tsx
@@ -0,0 +1,63 @@
+import { render } from 'react-dom';
+import * as React from 'react';
+
+import { RedocStandalone } from './components/RedocStandalone';
+
+function attributesMap(element: Element) {
+ var res = {};
+ var elAttrs = element.attributes;
+ for (let i = 0; i < elAttrs.length; i++) {
+ var attrib = elAttrs[i];
+ res[attrib.name] = attrib.value;
+ }
+ return res;
+}
+
+function parseOptionsFromElement(element: Element) {
+ const attrMap = attributesMap(element);
+ const res = {};
+ for (let attrName in attrMap) {
+ const optionName = attrName.replace(/-(.)/g, (_, $1) => $1.toUpperCase());
+ res[optionName] = attrMap[attrName];
+ // TODO: normalize options
+ }
+ return res;
+}
+
+export function init(
+ specOrSpecUrl: string | any,
+ options: any = {},
+ element: Element | null = document.querySelector('redoc'),
+) {
+ if (element === null) {
+ throw new Error('"element" argument is not provided and tag is not found on the page');
+ }
+
+ render(
+ React.createElement(
+ RedocStandalone,
+ {
+ specOrSpecUrl,
+ options: { ...options, ...parseOptionsFromElement(element) },
+ },
+ ['Loading...'],
+ ),
+ element,
+ );
+}
+
+/**
+ * autoinit ReDoc if tag is found on the page with "spec-url" attr
+ */
+function autoInit() {
+ const element = document.querySelector('redoc');
+ if (!element) {
+ return;
+ }
+ const specUrl = element.getAttribute('spec-url');
+ if (specUrl) {
+ init(specUrl, {}, element);
+ }
+}
+
+autoInit();
diff --git a/src/utils/index.ts b/src/utils/index.ts
index c13c47a1..21540e92 100644
--- a/src/utils/index.ts
+++ b/src/utils/index.ts
@@ -4,4 +4,4 @@ export * from './styled';
export * from './openapi';
export * from './helpers';
export * from './highlight';
-export * from './loadSpec';
+export * from './loadAndBundleSpec';
diff --git a/src/utils/convertSpec.ts b/src/utils/loadAndBundleSpec.ts
similarity index 52%
rename from src/utils/convertSpec.ts
rename to src/utils/loadAndBundleSpec.ts
index 88ac0da5..26bfac5d 100644
--- a/src/utils/convertSpec.ts
+++ b/src/utils/loadAndBundleSpec.ts
@@ -1,6 +1,20 @@
+import * as JsonSchemaRefParser from 'json-schema-ref-parser';
import { convertObj } from 'swagger2openapi';
import { OpenAPISpec } from '../types';
+export async function loadAndBundleSpec(specUrlOrObject: object | string): Promise {
+ const _parser = new JsonSchemaRefParser();
+ const spec = await _parser.bundle(specUrlOrObject, {
+ resolve: { http: { withCredentials: false } },
+ } as object);
+
+ if (spec.swagger !== undefined) {
+ return convertSwagger2OpenAPI(spec);
+ } else {
+ return spec;
+ }
+}
+
export function convertSwagger2OpenAPI(spec: any): Promise {
console.warn('[ReDoc Compatibility mode]: Converting OpenAPI 2.0 to OpenAPI 3.0');
return new Promise((resolve, reject) =>
diff --git a/src/utils/loadSpec.ts b/src/utils/loadSpec.ts
deleted file mode 100644
index 4cd5efd6..00000000
--- a/src/utils/loadSpec.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import * as JsonSchemaRefParser from 'json-schema-ref-parser';
-
-import { convertSwagger2OpenAPI } from './convertSpec';
-import { OpenAPISpec } from '../types';
-
-export async function loadSpec(specUrlOrObject: object | string): Promise {
- const _parser = new JsonSchemaRefParser();
- const spec = await _parser.bundle(specUrlOrObject, {
- resolve: { http: { withCredentials: false } },
- } as object);
-
- if (spec.swagger !== undefined) {
- return convertSwagger2OpenAPI(spec);
- } else {
- return spec;
- }
-}
diff --git a/tsconfig.e2e.json b/tsconfig.e2e.json
new file mode 100644
index 00000000..1a0f2641
--- /dev/null
+++ b/tsconfig.e2e.json
@@ -0,0 +1,31 @@
+{
+ "compilerOptions": {
+ "experimentalDecorators": true,
+ "module": "es2015",
+ "moduleResolution": "node",
+ "target": "es5",
+ "noImplicitAny": false,
+ "noUnusedLocals": true,
+ "noUnusedParameters": true,
+ "strictNullChecks": true,
+ "sourceMap": true,
+ "outDir": "e2e/.build",
+ "pretty": true,
+ "lib": [
+ "es2015",
+ "es2016",
+ "es2017",
+ "dom"
+ ],
+ "jsx": "react",
+ "types": [
+ "mocha",
+ "cypress",
+ "chai"
+ ]
+ },
+ "compileOnSave": false,
+ "include": [
+ "e2e"
+ ]
+}
diff --git a/tsconfig.json b/tsconfig.json
index b04af4fd..3e971d64 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -28,7 +28,8 @@
"exclude": [
"node_modules",
".tmp",
- "lib"
+ "lib",
+ "e2e"
],
"include": [
"./custom.d.ts",
diff --git a/webpack.config.js b/webpack.config.js
index 9c63dc41..04e29915 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -6,18 +6,25 @@ const DashboardPlugin = require('webpack-dashboard/plugin');
module.exports = env => {
env = env || {};
- const config = {
- entry: env.prod
+ let entry;
+ if (env.standalone) {
+ entry = ['./src/polyfills.ts', './src/standalone.tsx'];
+ } else {
+ entry = env.prod
? env.perf ? ['./perf/index.tsx'] : ['./src/hmr-playground.tsx']
: [
'react-dev-utils/webpackHotDevClient',
'react-hot-loader/patch',
'./src/hmr-playground.tsx',
- ],
+ ];
+ }
+
+ const config = {
+ entry: entry,
output: {
- filename: 'redoc.bundle.js',
- path: __dirname + '/lib',
+ filename: env.standalone ? 'redoc.standalone.js' : 'redoc.bundle.js',
+ path: __dirname + '/bundles',
},
devServer: {
diff --git a/yarn.lock b/yarn.lock
index d34aa091..ac561a90 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2,10 +2,31 @@
# yarn lockfile v1
+"@cypress/listr-verbose-renderer@0.4.1":
+ version "0.4.1"
+ resolved "https://registry.yarnpkg.com/@cypress/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#a77492f4b11dcc7c446a34b3e28721afd33c642a"
+ dependencies:
+ chalk "^1.1.3"
+ cli-cursor "^1.0.2"
+ date-fns "^1.27.2"
+ figures "^1.7.0"
+
+"@cypress/xvfb@1.0.4":
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/@cypress/xvfb/-/xvfb-1.0.4.tgz#e7391d534baef2b180bd84fdc2ffea1020f7d6a5"
+
+"@types/chai@^4.0.5":
+ version "4.0.5"
+ resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.0.5.tgz#b6e250e281b47e0192e236619e9b1afe62fd345c"
+
"@types/cheerio@*":
version "0.22.5"
resolved "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.5.tgz#db749e8470d98f103d51407db9bee5a8b9d20d45"
+"@types/cypress@^0.1.2":
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/@types/cypress/-/cypress-0.1.2.tgz#add87c95508b4aef215292fe2b7027b3a91c8cfb"
+
"@types/enzyme-to-json@^1.5.0":
version "1.5.0"
resolved "https://registry.yarnpkg.com/@types/enzyme-to-json/-/enzyme-to-json-1.5.0.tgz#0b53c4c8479050e76a38ad298fb2672a7241fad3"
@@ -34,6 +55,10 @@
version "1.0.30"
resolved "https://registry.yarnpkg.com/@types/json-pointer/-/json-pointer-1.0.30.tgz#b973c1f79b1f61d424b7d92b954e01e6c68ee66d"
+"@types/mocha@^2.2.44":
+ version "2.2.44"
+ resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-2.2.44.tgz#1d4a798e53f35212fd5ad4d04050620171cd5b5e"
+
"@types/node@*":
version "8.0.52"
resolved "https://registry.yarnpkg.com/@types/node/-/node-8.0.52.tgz#8e7f47747868e7687f2cd4922966e2d6af78d22d"
@@ -193,6 +218,10 @@ amdefine@>=0.0.4:
version "1.0.1"
resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
+ansi-escapes@^1.0.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e"
+
ansi-escapes@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92"
@@ -377,6 +406,12 @@ async-limiter@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8"
+async@2.1.4:
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/async/-/async-2.1.4.tgz#2d2160c7788032e4dd6cbe2502f1f9a2c8f6cde4"
+ dependencies:
+ lodash "^4.14.0"
+
async@^1.4.0, async@^1.5.2:
version "1.5.2"
resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
@@ -669,6 +704,10 @@ block-stream@*:
dependencies:
inherits "~2.0.0"
+bluebird@3.5.0:
+ version "3.5.0"
+ resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c"
+
bluebird@^3.4.7:
version "3.5.1"
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9"
@@ -831,6 +870,10 @@ bser@^2.0.0:
dependencies:
node-int64 "^0.4.0"
+buffer-crc32@~0.2.3:
+ version "0.2.13"
+ resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242"
+
buffer-indexof@^1.0.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c"
@@ -956,7 +999,7 @@ center-align@^0.1.1:
align-text "^0.1.3"
lazy-cache "^1.0.3"
-chalk@1.1.3, chalk@^1.1.3:
+chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
dependencies:
@@ -966,6 +1009,14 @@ chalk@1.1.3, chalk@^1.1.3:
strip-ansi "^3.0.0"
supports-color "^2.0.0"
+chalk@2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e"
+ dependencies:
+ ansi-styles "^3.1.0"
+ escape-string-regexp "^1.0.5"
+ supports-color "^4.0.0"
+
chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba"
@@ -974,6 +1025,10 @@ chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0:
escape-string-regexp "^1.0.5"
supports-color "^4.0.0"
+check-more-types@2.24.0:
+ version "2.24.0"
+ resolved "https://registry.yarnpkg.com/check-more-types/-/check-more-types-2.24.0.tgz#1420ffb10fd444dcfc79b43891bbfffd32a84600"
+
cheerio@^1.0.0-rc.2:
version "1.0.0-rc.2"
resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.2.tgz#4b9f53a81b27e4d5dac31c0ffd0cfa03cc6830db"
@@ -1041,12 +1096,29 @@ clean-css@4.1.x:
dependencies:
source-map "0.5.x"
+cli-cursor@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987"
+ dependencies:
+ restore-cursor "^1.0.1"
+
cli-cursor@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
dependencies:
restore-cursor "^2.0.0"
+cli-spinners@^0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-0.1.2.tgz#bb764d88e185fb9e1e6a2a1f19772318f605e31c"
+
+cli-truncate@^0.2.1:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574"
+ dependencies:
+ slice-ansi "0.0.4"
+ string-width "^1.0.1"
+
cli-width@^2.0.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639"
@@ -1136,6 +1208,10 @@ colors@0.5.x:
version "0.5.1"
resolved "https://registry.yarnpkg.com/colors/-/colors-0.5.1.tgz#7d0023eaeb154e8ee9fce75dcb923d0ed1667774"
+colors@1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b"
+
colors@^1.1.2, colors@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63"
@@ -1146,11 +1222,11 @@ combined-stream@^1.0.5, combined-stream@~1.0.5:
dependencies:
delayed-stream "~1.0.0"
-commander@2.11.x, commander@^2.7.1, commander@^2.9.0, commander@~2.11.0:
+commander@2.11.0, commander@2.11.x, commander@^2.7.1, commander@^2.9.0, commander@~2.11.0:
version "2.11.0"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563"
-common-tags@^1.4.0:
+common-tags@1.4.0, common-tags@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.4.0.tgz#1187be4f3d4cf0c0427d43f74eef1f73501614c0"
dependencies:
@@ -1252,7 +1328,7 @@ core-js@^1.0.0:
version "1.2.7"
resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636"
-core-js@^2.4.0, core-js@^2.5.0:
+core-js@^2.4.0, core-js@^2.5.0, core-js@^2.5.1:
version "2.5.1"
resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b"
@@ -1260,6 +1336,10 @@ core-util-is@1.0.2, core-util-is@~1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
+corser@~2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/corser/-/corser-2.0.1.tgz#8eda252ecaab5840dcd975ceb90d9370c819ff87"
+
create-ecdh@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d"
@@ -1450,6 +1530,37 @@ currently-unhandled@^0.4.1:
dependencies:
array-find-index "^1.0.1"
+cypress@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/cypress/-/cypress-1.0.3.tgz#ef3a8fbe72d6f69b2c02e384db405cc49c5773be"
+ dependencies:
+ "@cypress/listr-verbose-renderer" "0.4.1"
+ "@cypress/xvfb" "1.0.4"
+ bluebird "3.5.0"
+ chalk "2.1.0"
+ check-more-types "2.24.0"
+ commander "2.11.0"
+ common-tags "1.4.0"
+ debug "2.6.8"
+ dev-null "0.1.1"
+ extract-zip "1.6.5"
+ fs-extra "4.0.1"
+ getos "2.8.4"
+ glob "7.1.2"
+ is-ci "1.0.10"
+ is-installed-globally "0.1.0"
+ lazy-ass "1.6.0"
+ listr "0.12.0"
+ lodash "4.17.4"
+ minimist "1.2.0"
+ progress "1.1.8"
+ ramda "0.24.1"
+ request "2.81.0"
+ request-progress "0.3.1"
+ tmp "0.0.31"
+ url "0.11.0"
+ yauzl "2.8.0"
+
d@1:
version "1.0.0"
resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f"
@@ -1462,6 +1573,10 @@ dashdash@^1.12.0:
dependencies:
assert-plus "^1.0.0"
+date-fns@^1.27.2:
+ version "1.29.0"
+ resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.29.0.tgz#12e609cdcb935127311d04d33334e2960a2a54e6"
+
date-now@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
@@ -1478,6 +1593,12 @@ debug@2.3.3:
dependencies:
ms "0.7.2"
+debug@2.6.8:
+ version "2.6.8"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc"
+ dependencies:
+ ms "2.0.0"
+
debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.4.1, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8:
version "2.6.9"
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
@@ -1614,6 +1735,10 @@ detect-port-alt@1.1.3:
address "^1.0.1"
debug "^2.6.0"
+dev-null@0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/dev-null/-/dev-null-0.1.1.tgz#5a205ce3c2b2ef77b6238d6ba179eb74c6a0e818"
+
diff@^3.2.0:
version "3.4.0"
resolved "https://registry.yarnpkg.com/diff/-/diff-3.4.0.tgz#b1d85507daf3964828de54b37d0d73ba67dda56c"
@@ -1729,6 +1854,15 @@ ecc-jsbn@~0.1.1:
dependencies:
jsbn "~0.1.0"
+ecstatic@^2.0.0:
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/ecstatic/-/ecstatic-2.2.1.tgz#b5087fad439dd9dd49d31e18131454817fe87769"
+ dependencies:
+ he "^1.1.1"
+ mime "^1.2.11"
+ minimist "^1.1.0"
+ url-join "^2.0.2"
+
ee-first@1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
@@ -1737,6 +1871,10 @@ electron-to-chromium@^1.2.7:
version "1.3.27"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.27.tgz#78ecb8a399066187bb374eede35d9c70565a803d"
+elegant-spinner@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e"
+
elliptic@^6.0.0:
version "6.4.0"
resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df"
@@ -2138,6 +2276,10 @@ execa@^0.7.0:
signal-exit "^3.0.0"
strip-eof "^1.0.0"
+exit-hook@^1.0.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8"
+
expand-brackets@^0.1.4:
version "0.1.5"
resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b"
@@ -2260,6 +2402,15 @@ extract-text-webpack-plugin@^3.0.0:
schema-utils "^0.3.0"
webpack-sources "^1.0.1"
+extract-zip@1.6.5:
+ version "1.6.5"
+ resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.5.tgz#99a06735b6ea20ea9b705d779acffcc87cff0440"
+ dependencies:
+ concat-stream "1.6.0"
+ debug "2.2.0"
+ mkdirp "0.5.0"
+ yauzl "2.4.1"
+
extract-zip@^1.6.5:
version "1.6.6"
resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.6.tgz#1290ede8d20d0872b429fd3f351ca128ec5ef85c"
@@ -2325,6 +2476,13 @@ fd-slicer@~1.0.1:
dependencies:
pend "~1.2.0"
+figures@^1.7.0:
+ version "1.7.0"
+ resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e"
+ dependencies:
+ escape-string-regexp "^1.0.5"
+ object-assign "^4.1.0"
+
figures@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
@@ -2462,6 +2620,14 @@ fresh@0.5.2:
version "0.5.2"
resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
+fs-extra@4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.1.tgz#7fc0c6c8957f983f57f306a24e5b9ddd8d0dd880"
+ dependencies:
+ graceful-fs "^4.1.2"
+ jsonfile "^3.0.0"
+ universalify "^0.1.0"
+
fs-extra@^4.0.0:
version "4.0.2"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.2.tgz#f91704c53d1b461f893452b0c307d9997647ab6b"
@@ -2543,6 +2709,12 @@ get-value@^2.0.3, get-value@^2.0.6:
version "2.0.6"
resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
+getos@2.8.4:
+ version "2.8.4"
+ resolved "https://registry.yarnpkg.com/getos/-/getos-2.8.4.tgz#7b8603d3619c28e38cb0fe7a4f63c3acb80d5163"
+ dependencies:
+ async "2.1.4"
+
getpass@^0.1.1:
version "0.1.7"
resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
@@ -2562,7 +2734,7 @@ glob-parent@^2.0.0:
dependencies:
is-glob "^2.0.0"
-glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2:
+glob@7.1.2, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2:
version "7.1.2"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
dependencies:
@@ -2573,6 +2745,12 @@ glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2:
once "^1.3.0"
path-is-absolute "^1.0.0"
+global-dirs@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.0.tgz#10d34039e0df04272e262cf24224f7209434df4f"
+ dependencies:
+ ini "^1.3.4"
+
global-modules@1.0.0, global-modules@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea"
@@ -2778,7 +2956,7 @@ hawk@~6.0.2:
hoek "4.x.x"
sntp "2.x.x"
-he@1.1.x:
+he@1.1.x, he@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd"
@@ -2916,13 +3094,26 @@ http-proxy-middleware@~0.17.4:
lodash "^4.17.2"
micromatch "^2.3.11"
-http-proxy@^1.16.2:
+http-proxy@^1.16.2, http-proxy@^1.8.1:
version "1.16.2"
resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742"
dependencies:
eventemitter3 "1.x.x"
requires-port "1.x.x"
+http-server@^0.10.0:
+ version "0.10.0"
+ resolved "https://registry.yarnpkg.com/http-server/-/http-server-0.10.0.tgz#b2a446b16a9db87ed3c622ba9beb1b085b1234a7"
+ dependencies:
+ colors "1.0.3"
+ corser "~2.0.0"
+ ecstatic "^2.0.0"
+ http-proxy "^1.8.1"
+ opener "~1.4.0"
+ optimist "0.6.x"
+ portfinder "^1.0.13"
+ union "~0.4.3"
+
http-signature@~1.1.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf"
@@ -2989,7 +3180,7 @@ indent-string@^2.1.0:
dependencies:
repeating "^2.0.0"
-indent-string@^3.2.0:
+indent-string@^3.0.0, indent-string@^3.2.0:
version "3.2.0"
resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289"
@@ -3101,7 +3292,7 @@ is-callable@^1.1.1, is-callable@^1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2"
-is-ci@^1.0.10:
+is-ci@1.0.10, is-ci@^1.0.10:
version "1.0.10"
resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e"
dependencies:
@@ -3187,6 +3378,13 @@ is-glob@^3.1.0:
dependencies:
is-extglob "^2.1.0"
+is-installed-globally@0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.1.0.tgz#0dfd98f5a9111716dd535dda6492f67bf3d25a80"
+ dependencies:
+ global-dirs "^0.1.0"
+ is-path-inside "^1.0.0"
+
is-number@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f"
@@ -3727,6 +3925,12 @@ json5@^0.5.0, json5@^0.5.1:
version "0.5.1"
resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
+jsonfile@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.1.tgz#a5ecc6f65f53f662c4415c7675a0331d0992ec66"
+ optionalDependencies:
+ graceful-fs "^4.1.6"
+
jsonfile@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
@@ -3770,6 +3974,10 @@ kind-of@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.0.tgz#3606e9e2fa960e7ddaa8898c03804e47e5d66644"
+lazy-ass@1.6.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/lazy-ass/-/lazy-ass-1.6.0.tgz#7999655e8646c17f089fdd187d150d3324d54513"
+
lazy-cache@^1.0.3:
version "1.0.4"
resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
@@ -3797,6 +4005,53 @@ levn@^0.3.0, levn@~0.3.0:
prelude-ls "~1.1.2"
type-check "~0.3.2"
+listr-silent-renderer@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e"
+
+listr-update-renderer@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.2.0.tgz#ca80e1779b4e70266807e8eed1ad6abe398550f9"
+ dependencies:
+ chalk "^1.1.3"
+ cli-truncate "^0.2.1"
+ elegant-spinner "^1.0.1"
+ figures "^1.7.0"
+ indent-string "^3.0.0"
+ log-symbols "^1.0.2"
+ log-update "^1.0.2"
+ strip-ansi "^3.0.1"
+
+listr-verbose-renderer@^0.4.0:
+ version "0.4.1"
+ resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#8206f4cf6d52ddc5827e5fd14989e0e965933a35"
+ dependencies:
+ chalk "^1.1.3"
+ cli-cursor "^1.0.2"
+ date-fns "^1.27.2"
+ figures "^1.7.0"
+
+listr@0.12.0:
+ version "0.12.0"
+ resolved "https://registry.yarnpkg.com/listr/-/listr-0.12.0.tgz#6bce2c0f5603fa49580ea17cd6a00cc0e5fa451a"
+ dependencies:
+ chalk "^1.1.3"
+ cli-truncate "^0.2.1"
+ figures "^1.7.0"
+ indent-string "^2.1.0"
+ is-promise "^2.1.0"
+ is-stream "^1.1.0"
+ listr-silent-renderer "^1.1.1"
+ listr-update-renderer "^0.2.0"
+ listr-verbose-renderer "^0.4.0"
+ log-symbols "^1.0.2"
+ log-update "^1.0.2"
+ ora "^0.2.3"
+ p-map "^1.1.1"
+ rxjs "^5.0.0-beta.11"
+ stream-to-observable "^0.1.0"
+ strip-ansi "^3.0.1"
+
load-json-file@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
@@ -3876,10 +4131,23 @@ lodash.uniq@^4.5.0:
version "4.5.0"
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
-lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.3.0, lodash@^4.6.1:
+lodash@4.17.4, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.3.0, lodash@^4.6.1:
version "4.17.4"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
+log-symbols@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18"
+ dependencies:
+ chalk "^1.0.0"
+
+log-update@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/log-update/-/log-update-1.0.2.tgz#19929f64c4093d2d2e7075a1dad8af59c296b8d1"
+ dependencies:
+ ansi-escapes "^1.0.0"
+ cli-cursor "^1.0.2"
+
loglevel-colored-level-prefix@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/loglevel-colored-level-prefix/-/loglevel-colored-level-prefix-1.0.0.tgz#6a40218fdc7ae15fc76c3d0f3e676c465388603e"
@@ -4055,7 +4323,7 @@ mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.15, mime-types@~2.1.16,
dependencies:
mime-db "~1.30.0"
-mime@1.4.1, mime@^1.3.4:
+mime@1.4.1, mime@^1.2.11, mime@^1.3.4:
version "1.4.1"
resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6"
@@ -4093,7 +4361,7 @@ minimist@0.0.8:
version "0.0.8"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
-minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0:
+minimist@1.2.0, minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
@@ -4455,6 +4723,10 @@ once@^1.3.0, once@^1.3.3, once@^1.4.0:
dependencies:
wrappy "1"
+onetime@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789"
+
onetime@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4"
@@ -4473,13 +4745,17 @@ openapi-sampler@^1.0.0-beta.1:
dependencies:
json-pointer "^0.6.0"
+opener@~1.4.0:
+ version "1.4.3"
+ resolved "https://registry.yarnpkg.com/opener/-/opener-1.4.3.tgz#5c6da2c5d7e5831e8ffa3964950f8d6674ac90b8"
+
opn@5.1.0, opn@^5.1.0:
version "5.1.0"
resolved "https://registry.yarnpkg.com/opn/-/opn-5.1.0.tgz#72ce2306a17dbea58ff1041853352b4a8fc77519"
dependencies:
is-wsl "^1.1.0"
-optimist@^0.6.1:
+optimist@0.6.x, optimist@^0.6.1:
version "0.6.1"
resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686"
dependencies:
@@ -4501,6 +4777,15 @@ options@>=0.0.5:
version "0.0.6"
resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f"
+ora@^0.2.3:
+ version "0.2.3"
+ resolved "https://registry.yarnpkg.com/ora/-/ora-0.2.3.tgz#37527d220adcd53c39b73571d754156d5db657a4"
+ dependencies:
+ chalk "^1.1.1"
+ cli-cursor "^1.0.2"
+ cli-spinners "^0.1.2"
+ object-assign "^4.0.1"
+
original@>=0.0.5:
version "1.0.0"
resolved "https://registry.yarnpkg.com/original/-/original-1.0.0.tgz#9147f93fa1696d04be61e01bd50baeaca656bd3b"
@@ -4529,7 +4814,7 @@ os-locale@^2.0.0:
lcid "^1.0.0"
mem "^1.1.0"
-os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2:
+os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
@@ -4739,7 +5024,7 @@ pluralize@^7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777"
-portfinder@^1.0.9:
+portfinder@^1.0.13, portfinder@^1.0.9:
version "1.0.13"
resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.13.tgz#bb32ecd87c27104ae6ee44b5a3ccbf0ebb1aede9"
dependencies:
@@ -5072,6 +5357,10 @@ process@~0.5.1:
version "0.5.2"
resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf"
+progress@1.1.8:
+ version "1.1.8"
+ resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be"
+
progress@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f"
@@ -5148,6 +5437,10 @@ qs@6.5.1, qs@~6.5.1:
version "6.5.1"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8"
+qs@~2.3.3:
+ version "2.3.3"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-2.3.3.tgz#e9e85adbe75da0bbe4c8e0476a086290f863b404"
+
qs@~6.4.0:
version "6.4.0"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233"
@@ -5185,6 +5478,10 @@ railroad-diagrams@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz#eb7e6267548ddedfb899c1b90e57374559cddb7e"
+ramda@0.24.1:
+ version "0.24.1"
+ resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.24.1.tgz#c3b7755197f35b8dc3502228262c4c91ddb6b857"
+
randexp@^0.4.2:
version "0.4.6"
resolved "https://registry.yarnpkg.com/randexp/-/randexp-0.4.6.tgz#e986ad5e5e31dae13ddd6f7b3019aa7c87f60ca3"
@@ -5507,6 +5804,12 @@ repeating@^2.0.0:
dependencies:
is-finite "^1.0.0"
+request-progress@0.3.1:
+ version "0.3.1"
+ resolved "https://registry.yarnpkg.com/request-progress/-/request-progress-0.3.1.tgz#0721c105d8a96ac6b2ce8b2c89ae2d5ecfcf6b3a"
+ dependencies:
+ throttleit "~0.0.2"
+
request@2.81.0:
version "2.81.0"
resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0"
@@ -5619,6 +5922,13 @@ resolve@^1.3.2:
dependencies:
path-parse "^1.0.5"
+restore-cursor@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541"
+ dependencies:
+ exit-hook "^1.0.0"
+ onetime "^1.0.0"
+
restore-cursor@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
@@ -5636,7 +5946,7 @@ right-align@^0.1.1:
dependencies:
align-text "^0.1.1"
-rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1:
+rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1, rimraf@^2.6.2:
version "2.6.2"
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36"
dependencies:
@@ -5672,6 +5982,12 @@ rx-lite@*, rx-lite@^4.0.8:
version "4.0.8"
resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444"
+rxjs@^5.0.0-beta.11:
+ version "5.5.2"
+ resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.2.tgz#28d403f0071121967f18ad665563255d54236ac3"
+ dependencies:
+ symbol-observable "^1.0.1"
+
safe-buffer@5.1.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
version "5.1.1"
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853"
@@ -5881,6 +6197,10 @@ slash@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
+slice-ansi@0.0.4:
+ version "0.0.4"
+ resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35"
+
slice-ansi@1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d"
@@ -6157,6 +6477,10 @@ stream-http@^2.3.1:
to-arraybuffer "^1.0.0"
xtend "^4.0.0"
+stream-to-observable@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/stream-to-observable/-/stream-to-observable-0.1.0.tgz#45bf1d9f2d7dc09bed81f1c307c430e68b84cffe"
+
strict-uri-encode@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"
@@ -6300,6 +6624,10 @@ swagger2openapi@^2.11.0:
should "^13.0.1"
yargs "^9.0.1"
+symbol-observable@^1.0.1:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.4.tgz#29bf615d4aa7121bdd898b22d4b3f9bc4e2aa03d"
+
symbol-tree@^3.2.1:
version "3.2.2"
resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6"
@@ -6358,6 +6686,10 @@ throat@^4.0.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a"
+throttleit@~0.0.2:
+ version "0.0.2"
+ resolved "https://registry.yarnpkg.com/throttleit/-/throttleit-0.0.2.tgz#cfedf88e60c00dd9697b61fdd2a8343a9b680eaf"
+
through@^2.3.6:
version "2.3.8"
resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
@@ -6380,6 +6712,12 @@ tiny-emitter@^2.0.0:
version "2.0.2"
resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.0.2.tgz#82d27468aca5ade8e5fd1e6d22b57dd43ebdfb7c"
+tmp@0.0.31:
+ version "0.0.31"
+ resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7"
+ dependencies:
+ os-tmpdir "~1.0.1"
+
tmp@^0.0.33:
version "0.0.33"
resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"
@@ -6597,6 +6935,12 @@ union-value@^1.0.0:
is-extendable "^0.1.1"
set-value "^0.4.3"
+union@~0.4.3:
+ version "0.4.6"
+ resolved "https://registry.yarnpkg.com/union/-/union-0.4.6.tgz#198fbdaeba254e788b0efcb630bc11f24a2959e0"
+ dependencies:
+ qs "~2.3.3"
+
uniq@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff"
@@ -6634,6 +6978,10 @@ urix@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
+url-join@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/url-join/-/url-join-2.0.2.tgz#c072756967ad24b8b59e5741551caac78f50b8b7"
+
url-parse@1.0.x:
version "1.0.5"
resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.0.5.tgz#0854860422afdcfefeb6c965c662d4800169927b"
@@ -6648,7 +6996,7 @@ url-parse@^1.1.8:
querystringify "~1.0.0"
requires-port "~1.0.0"
-url@^0.11.0:
+url@0.11.0, url@^0.11.0:
version "0.11.0"
resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1"
dependencies:
@@ -7102,6 +7450,13 @@ yauzl@2.4.1:
dependencies:
fd-slicer "~1.0.1"
+yauzl@2.8.0:
+ version "2.8.0"
+ resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.8.0.tgz#79450aff22b2a9c5a41ef54e02db907ccfbf9ee2"
+ dependencies:
+ buffer-crc32 "~0.2.3"
+ fd-slicer "~1.0.1"
+
yeast@0.1.2:
version "0.1.2"
resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419"