mirror of
https://github.com/Redocly/redoc.git
synced 2024-11-28 03:23:44 +03:00
Merge branch 'master' into releases
This commit is contained in:
commit
15583a9dab
32
build/prepare_deploy.js
Executable file
32
build/prepare_deploy.js
Executable file
|
@ -0,0 +1,32 @@
|
|||
#!/usr/bin/env node
|
||||
'use strict';
|
||||
require('shelljs/global');
|
||||
|
||||
var paths = require('./paths');
|
||||
var path = require('path');
|
||||
|
||||
// copy old releases
|
||||
mkdir('-p', '.ghpages-tmp');
|
||||
cd('.ghpages-tmp');
|
||||
|
||||
// reset local changes before checkout
|
||||
exec('git reset --hard');
|
||||
exec('git fetch origin gh-pages:gh-pages');
|
||||
exec('git checkout gh-pages');
|
||||
cp('-R', '../releases/*', '.');
|
||||
exec('git checkout @{-1}');
|
||||
cd('..');
|
||||
|
||||
// build
|
||||
exec('npm run build-dist');
|
||||
cd('demo');
|
||||
mkdir('-p', 'dist');
|
||||
cp('-R', '../dist/*', './dist/');
|
||||
mkdir('-p', 'releases');
|
||||
cp('-R', '../.ghpages-tmp/*', './releases/');
|
||||
cd('..');
|
||||
var version = 'v' + require(path.join(__dirname, '../package.json')).version + '/';
|
||||
var versionDir = path.join(paths.releases, version);
|
||||
mkdir('-p', versionDir)
|
||||
cp(paths.redocBuilt + '.min.js', versionDir);
|
||||
cp(paths.redocBuilt + '.min.js', path.join(paths.releases, 'latest/'));
|
|
@ -1,21 +0,0 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
set -x
|
||||
# copy old releases
|
||||
mkdir -p .ghpages-tmp && cd .ghpages-tmp
|
||||
# reset local changes before checkout
|
||||
git reset --hard
|
||||
git fetch origin gh-pages:gh-pages
|
||||
git checkout gh-pages
|
||||
cp -R ../releases/* .
|
||||
git checkout @{-1}
|
||||
cd -
|
||||
|
||||
# build
|
||||
npm run build-dist
|
||||
cd demo
|
||||
cp -R ../dist/* ./dist/
|
||||
mkdir -p releases
|
||||
cp -R ../.ghpages-tmp/* ./releases/
|
||||
cd -
|
||||
gulp copy-version
|
13
build/run_tests.js
Executable file
13
build/run_tests.js
Executable file
|
@ -0,0 +1,13 @@
|
|||
#!/usr/bin/env node
|
||||
'use strict';
|
||||
|
||||
require('shelljs/global');
|
||||
set('-e');
|
||||
|
||||
if (process.env.JOB === 'e2e-guru') {
|
||||
exec('npm run e2e');
|
||||
} else {
|
||||
exec('npm run unit');
|
||||
console.log('Starting Basic E2E');
|
||||
exec('npm run e2e');
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
#!/bin/bash
|
||||
if [ "$JOB" = "e2e-guru" ]; then
|
||||
npm run e2e
|
||||
else
|
||||
npm run unit
|
||||
echo "Starting Basic E2E"
|
||||
npm run e2e
|
||||
fi
|
|
@ -12,6 +12,7 @@ var sass = require('gulp-sass');
|
|||
var replace = require('gulp-replace');
|
||||
var rename = require('gulp-rename');
|
||||
var argv = require('yargs').argv;
|
||||
var gulpIf = require('gulp-if');
|
||||
|
||||
gulp.task('build', function (callback) {
|
||||
if (argv.skipRebuild) {
|
||||
|
@ -23,10 +24,18 @@ gulp.task('build', function (callback) {
|
|||
'concatPrism',
|
||||
'bundle',
|
||||
'concatDeps',
|
||||
'copyDebug',
|
||||
callback
|
||||
);
|
||||
});
|
||||
|
||||
gulp.task('copyDebug', () => {
|
||||
if (!argv.prod) {
|
||||
// copy for be accessible from demo for debug
|
||||
cp(paths.redocBuilt + '.js', paths.redocBuilt + '.min.js');
|
||||
}
|
||||
});
|
||||
|
||||
gulp.task('rebuild', function(done) {
|
||||
return runSequence(
|
||||
'bundle',
|
||||
|
@ -43,16 +52,16 @@ gulp.task('inlineTemplates', ['sass'], function() {
|
|||
});
|
||||
|
||||
var JS_DEPS = argv.prod ? [
|
||||
'lib/utils/browser-update.js',
|
||||
'node_modules/zone.js/dist/zone.min.js',
|
||||
'node_modules/reflect-metadata/Reflect.js',
|
||||
'node_modules/babel-polyfill/dist/polyfill.min.js'
|
||||
]: [
|
||||
'lib/utils/browser-update.js',
|
||||
'node_modules/zone.js/dist/zone.js',
|
||||
'node_modules/zone.js/dist/long-stack-trace-zone.js',
|
||||
'node_modules/reflect-metadata/Reflect.js',
|
||||
'node_modules/babel-polyfill/dist/polyfill.js'
|
||||
] : [
|
||||
'lib/utils/browser-update.js',
|
||||
'node_modules/zone.js/dist/zone.min.js',
|
||||
'node_modules/reflect-metadata/Reflect.js',
|
||||
'node_modules/babel-polyfill/dist/polyfill.min.js'
|
||||
];
|
||||
|
||||
var outputFileName = paths.redocBuilt + (argv.prod ? '.min.js' : '.js');
|
||||
|
@ -66,13 +75,13 @@ gulp.task('sass', function () {
|
|||
// concatenate angular2 deps
|
||||
gulp.task('concatDeps', function() {
|
||||
return gulp.src(JS_DEPS.concat([outputFileName]))
|
||||
.pipe(sourcemaps.init({loadMaps: true}))
|
||||
.pipe(gulpIf(!argv.prod, sourcemaps.init({loadMaps: true})))
|
||||
.pipe(concat(outputFileName))
|
||||
.pipe(sourcemaps.write('.'))
|
||||
.pipe(gulpIf(!argv.prod, sourcemaps.write('.')))
|
||||
.pipe(gulp.dest('.'))
|
||||
});
|
||||
|
||||
gulp.task('bundle', ['inlineTemplates'], function bundle(cb) {
|
||||
gulp.task('bundle', ['injectVersionFile', 'inlineTemplates'], function bundle(done) {
|
||||
fs.existsSync('dist') || fs.mkdirSync('dist');
|
||||
var builder = new Builder('./', 'system.config.js');
|
||||
|
||||
|
@ -81,13 +90,11 @@ gulp.task('bundle', ['inlineTemplates'], function bundle(cb) {
|
|||
outputFileName,
|
||||
{ format:'umd', sourceMaps: !argv.prod, lowResSourceMaps: true, minify: argv.prod }
|
||||
)
|
||||
.then(function() {
|
||||
.then(() => {
|
||||
// wait some time to allow flush
|
||||
setTimeout(() => cb(), 500);
|
||||
setTimeout(() => done(), 500);
|
||||
})
|
||||
.catch(function(err) {
|
||||
cb(new Error(err));
|
||||
});
|
||||
.catch(err => done(err));
|
||||
});
|
||||
|
||||
gulp.task('concatPrism', function() {
|
||||
|
@ -121,3 +128,9 @@ gulp.task('concatPrism', function() {
|
|||
.pipe(concat(path.join(paths.tmp, 'prismjs-bundle.js')))
|
||||
.pipe(gulp.dest('.'))
|
||||
});
|
||||
|
||||
// needs inlineTemplates run before to create .tmp/lib folder
|
||||
gulp.task('injectVersionFile', ['inlineTemplates'], function() {
|
||||
var version = require('../../package.json').version;
|
||||
fs.writeFileSync(path.join(paths.tmp, 'lib/version.json'), JSON.stringify(version));
|
||||
})
|
||||
|
|
|
@ -5,7 +5,7 @@ var Server = require('karma').Server;
|
|||
/**
|
||||
* Run test once and exit
|
||||
*/
|
||||
gulp.task('test', ['concatPrism', 'inlineTemplates'], function (done) {
|
||||
gulp.task('test', ['concatPrism', 'inlineTemplates', 'injectVersionFile'], function (done) {
|
||||
new Server({
|
||||
configFile: __dirname + '/../../karma.conf.js',
|
||||
singleRun: true
|
||||
|
|
|
@ -18,8 +18,7 @@
|
|||
|
||||
<redoc scroll-y-offset="body > nav" spec-url='http://rebilly.github.io/SwaggerTemplateRepo/swagger.yaml'></redoc>
|
||||
|
||||
<!-- ReDoc built file with all dependencies included -->
|
||||
<script src="main.js"> </script>
|
||||
<script src="dist/redoc.js"> </script>
|
||||
<script src="dist/redoc.min.js"> </script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
require('shelljs/global');
|
||||
require('require-dir')('build/tasks');
|
||||
|
|
|
@ -57,13 +57,15 @@ module.exports = function (config) {
|
|||
jspm: {
|
||||
config: 'system.config.js',
|
||||
loadFiles: ['tests/setup.js', 'tests/helpers.js', 'tests/unit/*.spec.js', 'lib/**/*.js'],
|
||||
serveFiles: ['tests/schemas/**/*.json','tests/schemas/**/*.yml', 'lib/**/*.html', '.tmp/*js', '.tmp/lib/**/*.css'],
|
||||
serveFiles: ['tests/schemas/**/*.json','tests/schemas/**/*.yml', 'lib/**/*.html',
|
||||
'.tmp/lib/**/*.json', '.tmp/*js', '.tmp/lib/**/*.css'],
|
||||
nocache: true
|
||||
},
|
||||
|
||||
proxies: {
|
||||
'/tests/': '/base/tests/',
|
||||
'/lib/components/Redoc/redoc-loading-styles.css': '/base/.tmp/lib/components/Redoc/redoc-loading-styles.css',
|
||||
'/lib/components/Redoc/redoc-initial-styles.css': '/base/.tmp/lib/components/Redoc/redoc-initial-styles.css',
|
||||
'/lib/version.json': '/base/.tmp/lib/version.json',
|
||||
'/lib/': '/base/lib/',
|
||||
'/jspm_packages/': '/base/jspm_packages/',
|
||||
'/node_modules/': '/base/node_modules/',
|
||||
|
|
|
@ -35,20 +35,24 @@ export class JsonSchemaLazy {
|
|||
return schema && schema.$ref || this.pointer;
|
||||
}
|
||||
|
||||
load() {
|
||||
if (this.optionsService.options.disableLazySchemas) return;
|
||||
if (this.loaded) return;
|
||||
if (this.pointer) {
|
||||
this.dcl.loadNextToLocation(JsonSchema, this.viewRef).then((compRef) => {
|
||||
_loadAfterSelf() {
|
||||
return this.dcl.loadNextToLocation(JsonSchema, this.viewRef).then((compRef) => {
|
||||
this.initComponent(compRef);
|
||||
// trigger change detection
|
||||
if (compRef.changeDetectorRef) {
|
||||
compRef.changeDetectorRef.detectChanges();
|
||||
} else {
|
||||
compRef.hostView.changeDetectorRef.detectChanges();
|
||||
}
|
||||
return compRef;
|
||||
});
|
||||
}
|
||||
|
||||
load() {
|
||||
if (this.optionsService.options.disableLazySchemas) return;
|
||||
if (this.loaded) return;
|
||||
if (this.pointer) {
|
||||
this._loadAfterSelf();
|
||||
}
|
||||
this.loaded = true;
|
||||
}
|
||||
|
||||
|
@ -63,29 +67,13 @@ export class JsonSchemaLazy {
|
|||
// skip caching view with tabs inside (discriminator) as it needs attached controller
|
||||
// FIXME: get rid of dependency on selector
|
||||
if ($element.querySelector('.discriminator-wrap')) {
|
||||
this.dcl.loadNextToLocation(JsonSchema, this.viewRef).then((compRef) => {
|
||||
this.initComponent(compRef);
|
||||
if (compRef.changeDetectorRef) {
|
||||
compRef.changeDetectorRef.detectChanges();
|
||||
} else {
|
||||
compRef.hostView.changeDetectorRef.detectChanges();
|
||||
}
|
||||
});
|
||||
return;
|
||||
}
|
||||
insertAfter($element.cloneNode(true), this.elementRef.nativeElement);
|
||||
} );
|
||||
});
|
||||
} else {
|
||||
cache[this.pointer] = this.dcl.loadNextToLocation(JsonSchema, this.viewRef).then((compRef) => {
|
||||
this.initComponent(compRef);
|
||||
if (compRef.changeDetectorRef) {
|
||||
compRef.changeDetectorRef.detectChanges();
|
||||
} else {
|
||||
compRef.hostView.changeDetectorRef.detectChanges();
|
||||
}
|
||||
return compRef;
|
||||
});
|
||||
cache[this.pointer] = this._loadAfterSelf();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -48,3 +48,20 @@ redoc.loading:after {
|
|||
redoc.loading-remove:before, redoc.loading-remove:after {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
.redoc-error {
|
||||
padding: 20px;
|
||||
text-align: center;
|
||||
color: #cc0000;
|
||||
|
||||
> h2 {
|
||||
color: #cc0000;
|
||||
font-size: 40px;
|
||||
}
|
||||
}
|
||||
|
||||
.redoc-error-details {
|
||||
max-width: 750px;
|
||||
margin: 0 auto;
|
||||
font-size: 18px;
|
||||
}
|
|
@ -5,6 +5,8 @@ import { bootstrap } from '@angular/platform-browser-dynamic';
|
|||
import { BrowserDomAdapter } from '@angular/platform-browser/src/browser/browser_adapter';
|
||||
import { RedocComponent, BaseComponent } from '../base';
|
||||
|
||||
import detectScollParent from 'scrollparent';
|
||||
|
||||
import { ApiInfo } from '../ApiInfo/api-info';
|
||||
import { ApiLogo } from '../ApiLogo/api-logo';
|
||||
import { MethodsList } from '../MethodsList/methods-list';
|
||||
|
@ -13,9 +15,10 @@ import { SideMenu } from '../SideMenu/side-menu';
|
|||
import { StickySidebar } from '../../shared/components/index';
|
||||
import SchemaManager from '../../utils/SchemaManager';
|
||||
import { OptionsService, RedocEventsService } from '../../services/index';
|
||||
import redocVersion from '../../version.json!json';
|
||||
|
||||
import detectScollParent from 'scrollparent';
|
||||
import './redoc-loading-styles.css!css';
|
||||
|
||||
import './redoc-initial-styles.css!css';
|
||||
|
||||
var dom = new BrowserDomAdapter();
|
||||
var _modeLocked = false;
|
||||
|
@ -86,17 +89,15 @@ export class Redoc extends BaseComponent {
|
|||
}
|
||||
return bootstrap(Redoc, providers);
|
||||
})
|
||||
.then(
|
||||
(appRef) => {
|
||||
.then(appRef => {
|
||||
Redoc.hideLoadingAnimation();
|
||||
Redoc.appRef = appRef;
|
||||
console.log('ReDoc bootstrapped!');
|
||||
},
|
||||
error => {
|
||||
console.log(error);
|
||||
throw error;
|
||||
}
|
||||
);
|
||||
}, err => {
|
||||
console.log(err);
|
||||
Redoc.hideLoadingAnimation();
|
||||
Redoc.displayError(err);
|
||||
});
|
||||
}
|
||||
|
||||
static autoInit() {
|
||||
|
@ -109,6 +110,21 @@ export class Redoc extends BaseComponent {
|
|||
}
|
||||
}
|
||||
|
||||
static displayError(err) {
|
||||
console.log(err);
|
||||
let redocEl = dom.query('redoc');
|
||||
let heading = 'Oops... ReDoc failed to render this spec';
|
||||
let details = err.message;
|
||||
let erroHtml = `<div class="redoc-error">
|
||||
<h1>${heading}</h1>
|
||||
<div class='redoc-error-details'>${details}</div>`;
|
||||
redocEl.innerHTML = erroHtml;
|
||||
}
|
||||
|
||||
static get version() {
|
||||
return redocVersion;
|
||||
}
|
||||
|
||||
static destroy() {
|
||||
let el = dom.query('redoc');
|
||||
let elClone;
|
||||
|
|
|
@ -72,12 +72,15 @@ describe('Redoc components', () => {
|
|||
res.should.be.instanceof(Promise);
|
||||
});
|
||||
|
||||
it('should reject promise for not specifed url', (done) => {
|
||||
it('should hide loading animation and display message in case of error', async(() => {
|
||||
spyOn(Redoc, 'hideLoadingAnimation').and.callThrough();
|
||||
spyOn(Redoc, 'displayError').and.callThrough();
|
||||
let res = Redoc.init();
|
||||
res.then(() => { done.fail('Should not been called'); }, () => {
|
||||
done();
|
||||
});
|
||||
return res.then(() => {
|
||||
expect(Redoc.hideLoadingAnimation).toHaveBeenCalled();
|
||||
expect(Redoc.displayError).toHaveBeenCalled();
|
||||
});
|
||||
}));
|
||||
|
||||
//skip because of PhantomJS crashes on this testcase
|
||||
xit('should init redoc', (done) => {
|
||||
|
|
|
@ -86,9 +86,6 @@ export function RedocComponent(options) {
|
|||
pipes: pipes
|
||||
});
|
||||
|
||||
console.log(options.selector, options.detect ?
|
||||
(options.onPushOnly ? 'OnPush' : 'Default') : 'Detached');
|
||||
|
||||
return componentDecorator(target) || target;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
'use strict';
|
||||
import SwaggerParser from 'swagger-parser';
|
||||
import JsonSchemaRefParser from 'json-schema-ref-parser';
|
||||
import JsonPointer from './JsonPointer';
|
||||
import {methods as swaggerMethods} from './swagger-defs';
|
||||
|
||||
|
@ -22,7 +22,7 @@ export default class SchemaManager {
|
|||
let promise = new Promise((resolve, reject) => {
|
||||
this._schema = {};
|
||||
|
||||
SwaggerParser.bundle(url, {http: {withCredentials: false}})
|
||||
JsonSchemaRefParser.bundle(url, {http: {withCredentials: false}})
|
||||
.then(
|
||||
(schema) => {
|
||||
this._schema = schema;
|
||||
|
|
15
package.json
15
package.json
|
@ -1,21 +1,21 @@
|
|||
{
|
||||
"name": "redoc",
|
||||
"description": "Swagger-generated API Reference Documentation",
|
||||
"version": "0.11.1",
|
||||
"version": "0.12.0",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/Rebilly/ReDoc"
|
||||
},
|
||||
"main": "dist/redoc.min.js",
|
||||
"scripts": {
|
||||
"test": "gulp lint && ./build/run_tests.sh",
|
||||
"test": "gulp lint && node ./build/run_tests.js",
|
||||
"jspm-install": "jspm install",
|
||||
"start": "gulp serve",
|
||||
"build-dist": "gulp build --prod",
|
||||
"branch-release": "git reset --hard && branch-release",
|
||||
"unit": "gulp test",
|
||||
"e2e": "gulp e2e --prod",
|
||||
"deploy": "build/prepare_deploy.sh && deploy-to-gh-pages demo"
|
||||
"deploy": "node ./build/prepare_deploy.js && deploy-to-gh-pages demo"
|
||||
},
|
||||
"keywords": [
|
||||
"OpenAPI",
|
||||
|
@ -44,12 +44,12 @@
|
|||
"json-formatter-js": "npm:json-formatter-js@^0.2.0",
|
||||
"json-pointer": "npm:json-pointer@^0.3.0",
|
||||
"json-schema-instantiator": "npm:json-schema-instantiator@^0.3.0",
|
||||
"json-schema-ref-parser": "npm:json-schema-ref-parser@^3.1.2",
|
||||
"marked": "npm:marked@^0.3.5",
|
||||
"prismjs": "npm:prismjs@^1.3.0",
|
||||
"rxjs": "npm:rxjs@5.0.0-beta.6",
|
||||
"scrollparent": "npm:scrollparent@^0.1.0",
|
||||
"stream-http": "npm:stream-http@^2.3.0",
|
||||
"swagger-parser": "npm:swagger-parser@4.0.0-beta.2",
|
||||
"zone.js": "npm:zone.js@0.6.12"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
@ -63,11 +63,6 @@
|
|||
"overrides": {
|
||||
"github:Robdel12/DropKick@2.1.7": {
|
||||
"format": "global"
|
||||
},
|
||||
"npm:json-schema-ref-parser@3.1.2": {
|
||||
"map": {
|
||||
"http": "npm:stream-http@2.3.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -81,6 +76,7 @@
|
|||
"gulp": "^3.9.1",
|
||||
"gulp-concat": "^2.6.0",
|
||||
"gulp-eslint": "^1.1.1",
|
||||
"gulp-if": "^2.0.1",
|
||||
"gulp-inline-ng2-template": "^1.1.2",
|
||||
"gulp-protractor": "^2.1.0",
|
||||
"gulp-rename": "^1.2.2",
|
||||
|
@ -110,6 +106,7 @@
|
|||
"reflect-metadata": "^0.1.2",
|
||||
"require-dir": "^0.3.0",
|
||||
"run-sequence": "^1.1.5",
|
||||
"shelljs": "^0.7.0",
|
||||
"should": "^8.0.2",
|
||||
"sinon": "^1.17.2",
|
||||
"systemjs-builder": "^0.15.16",
|
||||
|
|
114
system.config.js
114
system.config.js
|
@ -54,16 +54,16 @@ System.config({
|
|||
"json-formatter-js": "npm:json-formatter-js@0.2.0",
|
||||
"json-pointer": "npm:json-pointer@0.3.0",
|
||||
"json-schema-instantiator": "npm:json-schema-instantiator@0.3.0",
|
||||
"json-schema-ref-parser": "npm:json-schema-ref-parser@3.1.2",
|
||||
"marked": "npm:marked@0.3.5",
|
||||
"prismjs": "npm:prismjs@1.3.0",
|
||||
"rxjs": "npm:rxjs@5.0.0-beta.6",
|
||||
"scrollparent": "npm:scrollparent@0.1.0",
|
||||
"stream-http": "npm:stream-http@2.3.0",
|
||||
"swagger-parser": "npm:swagger-parser@4.0.0-beta.2",
|
||||
"systemjs/plugin-json": "github:systemjs/plugin-json@0.1.2",
|
||||
"zone.js": "npm:zone.js@0.6.12",
|
||||
"github:jspm/nodelibs-assert@0.1.0": {
|
||||
"assert": "npm:assert@1.3.0"
|
||||
"assert": "npm:assert@1.4.0"
|
||||
},
|
||||
"github:jspm/nodelibs-buffer@0.1.0": {
|
||||
"buffer": "npm:buffer@3.6.0"
|
||||
|
@ -105,7 +105,7 @@ System.config({
|
|||
"path-browserify": "npm:path-browserify@0.0.0"
|
||||
},
|
||||
"github:jspm/nodelibs-process@0.1.2": {
|
||||
"process": "npm:process@0.11.2"
|
||||
"process": "npm:process@0.11.3"
|
||||
},
|
||||
"github:jspm/nodelibs-punycode@0.1.0": {
|
||||
"punycode": "npm:punycode@1.3.2"
|
||||
|
@ -176,13 +176,14 @@ System.config({
|
|||
"sprintf-js": "npm:sprintf-js@1.0.3",
|
||||
"util": "github:jspm/nodelibs-util@0.1.0"
|
||||
},
|
||||
"npm:asn1.js@4.5.2": {
|
||||
"npm:asn1.js@4.6.0": {
|
||||
"assert": "github:jspm/nodelibs-assert@0.1.0",
|
||||
"bn.js": "npm:bn.js@4.11.3",
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"fs": "github:jspm/nodelibs-fs@0.1.2",
|
||||
"inherits": "npm:inherits@2.0.1",
|
||||
"minimalistic-assert": "npm:minimalistic-assert@1.0.0",
|
||||
"systemjs-json": "github:systemjs/plugin-json@0.1.2",
|
||||
"vm": "github:jspm/nodelibs-vm@0.1.0"
|
||||
},
|
||||
"npm:asn1@0.2.3": {
|
||||
|
@ -205,7 +206,11 @@ System.config({
|
|||
"stream": "github:jspm/nodelibs-stream@0.1.0",
|
||||
"util": "github:jspm/nodelibs-util@0.1.0"
|
||||
},
|
||||
"npm:assert@1.3.0": {
|
||||
"npm:assert@1.4.0": {
|
||||
"assert": "github:jspm/nodelibs-assert@0.1.0",
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"buffer-shims": "npm:buffer-shims@1.0.0",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2",
|
||||
"util": "npm:util@0.10.3"
|
||||
},
|
||||
"npm:async@1.5.2": {
|
||||
|
@ -215,10 +220,9 @@ System.config({
|
|||
"crypto": "github:jspm/nodelibs-crypto@0.1.0",
|
||||
"url": "github:jspm/nodelibs-url@0.1.0"
|
||||
},
|
||||
"npm:aws4@1.3.2": {
|
||||
"npm:aws4@1.4.1": {
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"crypto": "github:jspm/nodelibs-crypto@0.1.0",
|
||||
"lru-cache": "npm:lru-cache@4.0.1",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2",
|
||||
"querystring": "github:jspm/nodelibs-querystring@0.1.0",
|
||||
"url": "github:jspm/nodelibs-url@0.1.0"
|
||||
|
@ -293,6 +297,9 @@ System.config({
|
|||
"readable-stream": "npm:readable-stream@2.0.6",
|
||||
"util": "github:jspm/nodelibs-util@0.1.0"
|
||||
},
|
||||
"npm:buffer-shims@1.0.0": {
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0"
|
||||
},
|
||||
"npm:buffer-xor@1.0.3": {
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"systemjs-json": "github:systemjs/plugin-json@0.1.2"
|
||||
|
@ -461,7 +468,7 @@ System.config({
|
|||
"inherits": "npm:inherits@2.0.1",
|
||||
"systemjs-json": "github:systemjs/plugin-json@0.1.2"
|
||||
},
|
||||
"npm:es6-promise@3.1.2": {
|
||||
"npm:es6-promise@3.2.1": {
|
||||
"process": "github:jspm/nodelibs-process@0.1.2"
|
||||
},
|
||||
"npm:evp_bytestokey@1.0.0": {
|
||||
|
@ -488,7 +495,7 @@ System.config({
|
|||
"fs": "github:jspm/nodelibs-fs@0.1.2",
|
||||
"http": "github:jspm/nodelibs-http@1.7.1",
|
||||
"https": "github:jspm/nodelibs-https@0.1.0",
|
||||
"mime-types": "npm:mime-types@2.1.10",
|
||||
"mime-types": "npm:mime-types@2.1.11",
|
||||
"path": "github:jspm/nodelibs-path@0.1.0",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2",
|
||||
"url": "github:jspm/nodelibs-url@0.1.0",
|
||||
|
@ -502,7 +509,7 @@ System.config({
|
|||
"is-property": "npm:is-property@1.0.2",
|
||||
"systemjs-json": "github:systemjs/plugin-json@0.1.2"
|
||||
},
|
||||
"npm:getpass@0.1.5": {
|
||||
"npm:getpass@0.1.6": {
|
||||
"assert-plus": "npm:assert-plus@1.0.0",
|
||||
"fs": "github:jspm/nodelibs-fs@0.1.2",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2",
|
||||
|
@ -547,7 +554,7 @@ System.config({
|
|||
"crypto": "github:jspm/nodelibs-crypto@0.1.0",
|
||||
"http": "github:jspm/nodelibs-http@1.7.1",
|
||||
"jsprim": "npm:jsprim@1.2.2",
|
||||
"sshpk": "npm:sshpk@1.8.2",
|
||||
"sshpk": "npm:sshpk@1.8.3",
|
||||
"util": "github:jspm/nodelibs-util@0.1.0"
|
||||
},
|
||||
"npm:https-browserify@0.0.0": {
|
||||
|
@ -582,7 +589,7 @@ System.config({
|
|||
"crypto": "github:jspm/nodelibs-crypto@0.1.0",
|
||||
"jsbn": "npm:jsbn@0.1.0"
|
||||
},
|
||||
"npm:js-yaml@3.6.0": {
|
||||
"npm:js-yaml@3.6.1": {
|
||||
"argparse": "npm:argparse@1.0.7",
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"esprima": "npm:esprima@2.7.2",
|
||||
|
@ -605,11 +612,12 @@ System.config({
|
|||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"call-me-maybe": "npm:call-me-maybe@1.0.1",
|
||||
"debug": "npm:debug@2.2.0",
|
||||
"es6-promise": "npm:es6-promise@3.1.2",
|
||||
"es6-promise": "npm:es6-promise@3.2.1",
|
||||
"events": "github:jspm/nodelibs-events@0.1.1",
|
||||
"fs": "github:jspm/nodelibs-fs@0.1.2",
|
||||
"https": "github:jspm/nodelibs-https@0.1.0",
|
||||
"js-yaml": "npm:js-yaml@3.6.0",
|
||||
"http": "npm:stream-http@2.3.0",
|
||||
"https": "npm:stream-http@2.3.0",
|
||||
"js-yaml": "npm:js-yaml@3.6.1",
|
||||
"ono": "npm:ono@2.2.1",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2",
|
||||
"punycode": "github:jspm/nodelibs-punycode@0.1.0",
|
||||
|
@ -631,36 +639,33 @@ System.config({
|
|||
"util": "github:jspm/nodelibs-util@0.1.0",
|
||||
"verror": "npm:verror@1.3.6"
|
||||
},
|
||||
"npm:lodash._stringtopath@4.7.1": {
|
||||
"npm:lodash._basetostring@4.12.0": {
|
||||
"process": "github:jspm/nodelibs-process@0.1.2"
|
||||
},
|
||||
"npm:lodash.get@4.2.1": {
|
||||
"lodash._stringtopath": "npm:lodash._stringtopath@4.7.1"
|
||||
"npm:lodash._stringtopath@4.8.0": {
|
||||
"lodash._basetostring": "npm:lodash._basetostring@4.12.0",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2"
|
||||
},
|
||||
"npm:lru-cache@4.0.1": {
|
||||
"pseudomap": "npm:pseudomap@1.0.2",
|
||||
"util": "github:jspm/nodelibs-util@0.1.0",
|
||||
"yallist": "npm:yallist@2.0.0"
|
||||
"npm:lodash.get@4.3.0": {
|
||||
"lodash._stringtopath": "npm:lodash._stringtopath@4.8.0"
|
||||
},
|
||||
"npm:miller-rabin@4.0.0": {
|
||||
"bn.js": "npm:bn.js@4.11.3",
|
||||
"brorand": "npm:brorand@1.0.5"
|
||||
},
|
||||
"npm:mime-db@1.22.0": {
|
||||
"npm:mime-db@1.23.0": {
|
||||
"systemjs-json": "github:systemjs/plugin-json@0.1.2"
|
||||
},
|
||||
"npm:mime-types@2.1.10": {
|
||||
"mime-db": "npm:mime-db@1.22.0",
|
||||
"npm:mime-types@2.1.11": {
|
||||
"mime-db": "npm:mime-db@1.23.0",
|
||||
"path": "github:jspm/nodelibs-path@0.1.0"
|
||||
},
|
||||
"npm:node-uuid@1.4.7": {
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"crypto": "github:jspm/nodelibs-crypto@0.1.0"
|
||||
},
|
||||
"npm:oauth-sign@0.8.1": {
|
||||
"assert": "github:jspm/nodelibs-assert@0.1.0",
|
||||
"npm:oauth-sign@0.8.2": {
|
||||
"crypto": "github:jspm/nodelibs-crypto@0.1.0",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2",
|
||||
"querystring": "github:jspm/nodelibs-querystring@0.1.0"
|
||||
},
|
||||
"npm:ono@2.2.1": {
|
||||
|
@ -675,7 +680,7 @@ System.config({
|
|||
"process": "github:jspm/nodelibs-process@0.1.2"
|
||||
},
|
||||
"npm:parse-asn1@5.0.0": {
|
||||
"asn1.js": "npm:asn1.js@4.5.2",
|
||||
"asn1.js": "npm:asn1.js@4.6.0",
|
||||
"browserify-aes": "npm:browserify-aes@1.0.6",
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"create-hash": "npm:create-hash@1.1.2",
|
||||
|
@ -707,12 +712,12 @@ System.config({
|
|||
"process": "github:jspm/nodelibs-process@0.1.2",
|
||||
"systemjs-json": "github:systemjs/plugin-json@0.1.2"
|
||||
},
|
||||
"npm:process@0.11.2": {
|
||||
"assert": "github:jspm/nodelibs-assert@0.1.0"
|
||||
},
|
||||
"npm:pseudomap@1.0.2": {
|
||||
"npm:process-nextick-args@1.0.7": {
|
||||
"process": "github:jspm/nodelibs-process@0.1.2"
|
||||
},
|
||||
"npm:process@0.11.3": {
|
||||
"assert": "github:jspm/nodelibs-assert@0.1.0"
|
||||
},
|
||||
"npm:public-encrypt@4.0.0": {
|
||||
"bn.js": "npm:bn.js@4.11.3",
|
||||
"browserify-rsa": "npm:browserify-rsa@4.0.1",
|
||||
|
@ -748,7 +753,7 @@ System.config({
|
|||
"inherits": "npm:inherits@2.0.1",
|
||||
"isarray": "npm:isarray@1.0.0",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2",
|
||||
"process-nextick-args": "npm:process-nextick-args@1.0.6",
|
||||
"process-nextick-args": "npm:process-nextick-args@1.0.7",
|
||||
"string_decoder": "npm:string_decoder@0.10.31",
|
||||
"util-deprecate": "npm:util-deprecate@1.0.2"
|
||||
},
|
||||
|
@ -765,7 +770,7 @@ System.config({
|
|||
},
|
||||
"npm:request@2.72.0": {
|
||||
"aws-sign2": "npm:aws-sign2@0.6.0",
|
||||
"aws4": "npm:aws4@1.3.2",
|
||||
"aws4": "npm:aws4@1.4.1",
|
||||
"bl": "npm:bl@1.1.2",
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"caseless": "npm:caseless@0.11.0",
|
||||
|
@ -783,16 +788,16 @@ System.config({
|
|||
"is-typedarray": "npm:is-typedarray@1.0.0",
|
||||
"isstream": "npm:isstream@0.1.2",
|
||||
"json-stringify-safe": "npm:json-stringify-safe@5.0.1",
|
||||
"mime-types": "npm:mime-types@2.1.10",
|
||||
"mime-types": "npm:mime-types@2.1.11",
|
||||
"node-uuid": "npm:node-uuid@1.4.7",
|
||||
"oauth-sign": "npm:oauth-sign@0.8.1",
|
||||
"oauth-sign": "npm:oauth-sign@0.8.2",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2",
|
||||
"qs": "npm:qs@6.1.0",
|
||||
"querystring": "github:jspm/nodelibs-querystring@0.1.0",
|
||||
"stream": "github:jspm/nodelibs-stream@0.1.0",
|
||||
"stringstream": "npm:stringstream@0.0.5",
|
||||
"tough-cookie": "npm:tough-cookie@2.2.2",
|
||||
"tunnel-agent": "npm:tunnel-agent@0.4.2",
|
||||
"tunnel-agent": "npm:tunnel-agent@0.4.3",
|
||||
"url": "github:jspm/nodelibs-url@0.1.0",
|
||||
"util": "github:jspm/nodelibs-util@0.1.0",
|
||||
"zlib": "github:jspm/nodelibs-zlib@0.1.0"
|
||||
|
@ -822,14 +827,14 @@ System.config({
|
|||
"amdefine": "npm:amdefine@1.0.0",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2"
|
||||
},
|
||||
"npm:sshpk@1.8.2": {
|
||||
"npm:sshpk@1.8.3": {
|
||||
"asn1": "npm:asn1@0.2.3",
|
||||
"assert-plus": "npm:assert-plus@1.0.0",
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"crypto": "github:jspm/nodelibs-crypto@0.1.0",
|
||||
"dashdash": "npm:dashdash@1.13.1",
|
||||
"ecc-jsbn": "npm:ecc-jsbn@0.1.1",
|
||||
"getpass": "npm:getpass@0.1.5",
|
||||
"getpass": "npm:getpass@0.1.6",
|
||||
"jodid25519": "npm:jodid25519@1.0.2",
|
||||
"jsbn": "npm:jsbn@0.1.0",
|
||||
"stream": "github:jspm/nodelibs-stream@0.1.0",
|
||||
|
@ -871,31 +876,8 @@ System.config({
|
|||
"npm:supports-color@2.0.0": {
|
||||
"process": "github:jspm/nodelibs-process@0.1.2"
|
||||
},
|
||||
"npm:swagger-parser@4.0.0-beta.2": {
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"call-me-maybe": "npm:call-me-maybe@1.0.1",
|
||||
"debug": "npm:debug@2.2.0",
|
||||
"es6-promise": "npm:es6-promise@3.1.2",
|
||||
"events": "github:jspm/nodelibs-events@0.1.1",
|
||||
"fs": "github:jspm/nodelibs-fs@0.1.2",
|
||||
"http": "github:jspm/nodelibs-http@1.7.1",
|
||||
"https": "github:jspm/nodelibs-https@0.1.0",
|
||||
"json-schema-ref-parser": "npm:json-schema-ref-parser@3.1.2",
|
||||
"ono": "npm:ono@2.2.1",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2",
|
||||
"punycode": "github:jspm/nodelibs-punycode@0.1.0",
|
||||
"querystring": "github:jspm/nodelibs-querystring@0.1.0",
|
||||
"stream": "github:jspm/nodelibs-stream@0.1.0",
|
||||
"string_decoder": "github:jspm/nodelibs-string_decoder@0.1.0",
|
||||
"swagger-methods": "npm:swagger-methods@1.0.0",
|
||||
"swagger-schema-official": "npm:swagger-schema-official@2.0.0-bab6bed",
|
||||
"systemjs-json": "github:systemjs/plugin-json@0.1.2",
|
||||
"url": "github:jspm/nodelibs-url@0.1.0",
|
||||
"util": "github:jspm/nodelibs-util@0.1.0",
|
||||
"z-schema": "npm:z-schema@3.17.0"
|
||||
},
|
||||
"npm:timers-browserify@1.4.2": {
|
||||
"process": "npm:process@0.11.2"
|
||||
"process": "npm:process@0.11.3"
|
||||
},
|
||||
"npm:to-arraybuffer@1.0.1": {
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
|
@ -908,7 +890,7 @@ System.config({
|
|||
"url": "github:jspm/nodelibs-url@0.1.0",
|
||||
"util": "github:jspm/nodelibs-util@0.1.0"
|
||||
},
|
||||
"npm:tunnel-agent@0.4.2": {
|
||||
"npm:tunnel-agent@0.4.3": {
|
||||
"assert": "github:jspm/nodelibs-assert@0.1.0",
|
||||
"buffer": "github:jspm/nodelibs-buffer@0.1.0",
|
||||
"events": "github:jspm/nodelibs-events@0.1.1",
|
||||
|
@ -946,7 +928,7 @@ System.config({
|
|||
},
|
||||
"npm:z-schema@3.17.0": {
|
||||
"commander": "npm:commander@2.9.0",
|
||||
"lodash.get": "npm:lodash.get@4.2.1",
|
||||
"lodash.get": "npm:lodash.get@4.3.0",
|
||||
"process": "github:jspm/nodelibs-process@0.1.2",
|
||||
"request": "npm:request@2.72.0",
|
||||
"systemjs-json": "github:systemjs/plugin-json@0.1.2",
|
||||
|
|
|
@ -72,6 +72,8 @@ describe('Language tabs sync', () => {
|
|||
var $item = $$('[operation-id="addPet"] tabs > ul > li').last();
|
||||
// check if correct item
|
||||
expect($item.getText()).toContain('PHP');
|
||||
var EC = protractor.ExpectedConditions;
|
||||
browser.wait(EC.elementToBeClickable($item), 2000);
|
||||
$item.click().then(() => {
|
||||
expect($('[operation-id="updatePet"] li.active').getText()).toContain('PHP');
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue
Block a user