From bcf40825a4ec637a8ee19c5da67241dbe4dd23dd Mon Sep 17 00:00:00 2001 From: kyubisation Date: Fri, 24 May 2019 21:39:25 +0200 Subject: [PATCH] feat(ci): Set up ci/cd with Travis CI --- .npmignore | 2 - .travis.yml | 27 + README.md | 20 +- angular.json | 14 +- package-lock.json | 4969 ++++++++++++----- package.json | 94 +- projects/angular-showcase/karma.conf.js | 8 +- projects/angular-showcase/package.json | 16 + .../angular-showcase/src/app/app.module.ts | 8 +- .../accordion-showcase.component.ts | 2 +- .../src/app/examples/examples.module.ts | 2 +- .../file-selector-showcase.component.ts | 2 +- .../ghettobox-showcase.component.ts | 4 +- .../tag-showcase/tag-showcase.component.ts | 2 +- .../sbb-esta/angular-business/karma.conf.js | 10 +- .../sbb-esta/angular-business/package.json | 3 + projects/sbb-esta/angular-icons/karma.conf.js | 10 +- projects/sbb-esta/angular-icons/package.json | 3 + .../sbb-esta/angular-public/karma.conf.js | 76 +- projects/sbb-esta/angular-public/package.json | 3 + .../src/lib/_common/host-class.spec.ts | 15 +- .../accordion/accordion.component.spec.ts | 6 +- .../expansion-panel.component.spec.ts | 7 +- .../breadcrumb/breadcrumb.component.spec.ts | 9 +- .../breadcrumbs/breadcrumbs.component.spec.ts | 37 +- .../button/button/button.component.spec.ts | 8 +- .../checkbox-panel.component.spec.ts | 13 +- .../checkbox/checkbox.component.spec.ts | 28 +- .../calendar-body.component.spec.ts | 9 +- .../calendar/calendar-header.spec.ts | 9 +- .../calendar/calendar.component.spec.ts | 16 +- .../month-view/month-view.component.spec.ts | 11 +- .../angular-public/src/lib/datepicker/test.ts | 10 +- .../dropdown/dropdown.component.spec.ts | 13 +- .../file-selector.component.spec.ts | 9 +- .../ghettobox-container.component.spec.ts | 12 +- .../ghettobox/ghettobox.component.spec.ts | 10 +- .../src/lib/links/link/link.component.spec.ts | 15 +- .../social-link/social-link.component.spec.ts | 15 +- .../loading/loading/loading.component.spec.ts | 9 +- .../notification.component.spec.ts | 16 +- .../navigation/navigation.component.spec.ts | 9 +- .../navigation/navigation.component.ts | 1 - .../pagination/pagination.component.spec.ts | 37 +- .../processflow/processflow.component.spec.ts | 15 +- .../radio-button-panel.component.spec.ts | 13 +- .../radio-button-registry.service.spec.ts | 45 +- .../radio-button-registry.service.ts | 48 +- .../radio-button.component.spec.ts | 32 +- .../radio-button/radio-button.component.ts | 17 +- .../radio-button/radio-button.model.ts | 5 + .../search/search/search.component.spec.ts | 33 +- .../src/lib/tabs/tabs/tabs.component.spec.ts | 15 +- .../src/lib/tabs/tabs/tabs.component.ts | 19 +- .../src/lib/tag/tags/tags.component.spec.ts | 21 +- .../textarea/textarea.component.spec.ts | 37 +- .../textexpand-collapsed.component.spec.ts | 9 +- .../textexpand-expanded.component.spec.ts | 9 +- .../textexpand/textexpand.component.spec.ts | 20 +- .../time-input/time-input.directive.spec.ts | 9 +- .../angular-public/src/lib/toggle/test.ts | 25 + .../toggle-option/toggle-option.component.ts | 6 +- .../toggle/toggle/toggle.component.spec.ts | 21 +- .../tooltip/tooltip/tooltip.component.spec.ts | 21 +- .../usermenu/usermenu.component.spec.ts | 27 +- .../components/ghettobox/_ghettobox-base.scss | 2 - .../components/pagination/_navigation.scss | 1 - .../pagination/_pagination-base.scss | 1 - .../src/styles/legacy/_mixins.scss | 1 - .../angular-public/tsconfig.spec.json | 2 +- scripts/publish.js | 165 + scripts/sonar.js | 13 + sonar-project.properties | 6 +- 73 files changed, 4366 insertions(+), 1871 deletions(-) delete mode 100644 .npmignore create mode 100644 .travis.yml create mode 100644 projects/angular-showcase/package.json create mode 100644 projects/sbb-esta/angular-public/src/lib/toggle/test.ts create mode 100644 scripts/publish.js create mode 100644 scripts/sonar.js diff --git a/.npmignore b/.npmignore deleted file mode 100644 index b811c3518c..0000000000 --- a/.npmignore +++ /dev/null @@ -1,2 +0,0 @@ -**/* -!dist/angular-showcase/**/* \ No newline at end of file diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000000..b833d164bb --- /dev/null +++ b/.travis.yml @@ -0,0 +1,27 @@ +language: node_js +node_js: + - '10' +dist: trusty +sudo: required + +cache: npm + +script: + - npm run build + - if [ "$TRAVIS_TAG" == "" ] && [[ "$TRAVIS_COMMIT_MESSAGE" != *"skip-tests"* ]]; then npm run test; fi + - if [ "$TRAVIS_TAG" == "" ] && [[ "$TRAVIS_COMMIT_MESSAGE" != *"skip-tests"* ]]; then npm run lint; fi + - if [ "$TRAVIS_TAG" == "" ] && [[ "$TRAVIS_COMMIT_MESSAGE" != *"skip-tests"* ]]; then npm run sonar; fi +before_deploy: + - echo "//registry.npmjs.org/:_authToken=\${NPM_AUTH_TOKEN}" > ~/.npmrc +deploy: + - provider: script + script: npm run publish:library + skip_cleanup: true + on: + tags: true + - provider: script + script: npm run publish:staging + skip_cleanup: true + on: + all_branches: true + tags: false diff --git a/README.md b/README.md index d59caaae3f..12ae015ad2 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,24 @@ This is the repository for the Angular component library for SBB. -[Documentation/Showcase](https://sbb-angular.app.sbb.ch/latest/) +[Documentation/Showcase](https://angular.app.sbb.ch/latest/) [Design Specification](https://digital.sbb.ch/) + +## Packages + +`npm install --save @sbb-esta/angular-icons @sbb-esta/angular-public` + +### [@sbb-esta/angular-icons](https://www.npmjs.com/package/@sbb-esta/angular-icons) + +The package containing SBB icons as components. + +[Icon List](https://angular.app.sbb.ch/latest/icons-list) + +[SVG Origin](https://digital.sbb.ch/de/icons-und-piktogramme/sbb-icons) + +### [@sbb-esta/angular-public](https://www.npmjs.com/package/@sbb-esta/angular-public) + +The package containg the components/modules for public SBB websites. + +[Component List](https://angular.app.sbb.ch/latest/components-list) diff --git a/angular.json b/angular.json index 36ace847e8..633e7806fd 100644 --- a/angular.json +++ b/angular.json @@ -174,14 +174,18 @@ "ci": { "watch": false, "codeCoverage": true, - "browsers": "ChromeHeadless", - "sourceMap": true + "browsers": "BsChrome", + "sourceMap": false, + "progress": false }, "local": { "codeCoverage": true }, "datepicker": { "main": "projects/sbb-esta/angular-public/src/lib/datepicker/test.ts" + }, + "toggle": { + "main": "projects/sbb-esta/angular-public/src/lib/datepicker/test.ts" } } }, @@ -224,7 +228,8 @@ "watch": false, "codeCoverage": true, "browsers": "ChromeHeadless", - "sourceMap": true + "sourceMap": false, + "progress": false }, "local": { "codeCoverage": true @@ -270,7 +275,8 @@ "watch": false, "codeCoverage": true, "browsers": "ChromeHeadless", - "sourceMap": true + "sourceMap": false, + "progress": false }, "local": { "codeCoverage": true diff --git a/package-lock.json b/package-lock.json index 00057d0bcb..f8a554398d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,30 +1,30 @@ { - "name": "@sbb-esta/angular-showcase", - "version": "0.0.0-PLACEHOLDER", + "name": "sbb-angular", + "version": "7.0.0-1", "lockfileVersion": 1, "requires": true, "dependencies": { "@angular-devkit/architect": { - "version": "0.13.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@angular-devkit/architect/-/architect-0.13.8.tgz", - "integrity": "sha1-w7dGnhXicQ1Itv5OVO/qJrVXvxQ=", + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.13.9.tgz", + "integrity": "sha512-EAFtCs9dsGhpMRC45PoYsrkiExpWz9Ax15qXfzwdDRacz5DmdOVt+QpkLW1beUOwiyj/bhFyj23eaONK2RTn/w==", "dev": true, "requires": { - "@angular-devkit/core": "7.3.8", + "@angular-devkit/core": "7.3.9", "rxjs": "6.3.3" } }, "@angular-devkit/build-angular": { - "version": "0.13.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@angular-devkit/build-angular/-/build-angular-0.13.8.tgz", - "integrity": "sha1-f/lJ20bHgRXgvEWzovnK1kRZwBY=", + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.13.9.tgz", + "integrity": "sha512-onh07LhdxotDFjja0KKsDWNCwgpM/ymuRr5h0e+vT4AgklP2Uioz1CpzVOgxPIKkdVdGR9QgDinVsWAmY90J8g==", "dev": true, "requires": { - "@angular-devkit/architect": "0.13.8", - "@angular-devkit/build-optimizer": "0.13.8", - "@angular-devkit/build-webpack": "0.13.8", - "@angular-devkit/core": "7.3.8", - "@ngtools/webpack": "7.3.8", + "@angular-devkit/architect": "0.13.9", + "@angular-devkit/build-optimizer": "0.13.9", + "@angular-devkit/build-webpack": "0.13.9", + "@angular-devkit/core": "7.3.9", + "@ngtools/webpack": "7.3.9", "ajv": "6.9.1", "autoprefixer": "9.4.6", "circular-dependency-plugin": "5.0.2", @@ -40,7 +40,7 @@ "loader-utils": "1.2.3", "mini-css-extract-plugin": "0.5.0", "minimatch": "3.0.4", - "node-sass": "4.11.0", + "node-sass": "4.12.0", "open": "6.0.0", "parse5": "4.0.0", "postcss": "7.0.14", @@ -69,8 +69,8 @@ "dependencies": { "ajv": { "version": "6.9.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ajv/-/ajv-6.9.1.tgz", - "integrity": "sha1-pNNoPXSrxWcOdfCxZSD3CiDqjcE=", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -79,10 +79,17 @@ "uri-js": "^4.2.2" } }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true, + "optional": true + }, "autoprefixer": { "version": "9.4.6", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/autoprefixer/-/autoprefixer-9.4.6.tgz", - "integrity": "sha1-Cs4nXjOzfeFrCaVUfb/nOpjB1EY=", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.4.6.tgz", + "integrity": "sha512-Yp51mevbOEdxDUy5WjiKtpQaecqYq9OqZSL04rSoCiry7Tc5I9FEyo3bfxiTJc1DfHeKwSFCUYbBAiOQ2VGfiw==", "dev": true, "requires": { "browserslist": "^4.4.1", @@ -93,16 +100,72 @@ "postcss-value-parser": "^3.3.1" } }, + "nan": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "dev": true, + "optional": true + }, + "node-sass": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.12.0.tgz", + "integrity": "sha512-A1Iv4oN+Iel6EPv77/HddXErL2a+gZ4uBeZUy+a8O35CFYTXhgA8MgLCWBtwpGZdCvTvQ9d+bQxX/QC36GDPpQ==", + "dev": true, + "optional": true, + "requires": { + "async-foreach": "^0.1.3", + "chalk": "^1.1.1", + "cross-spawn": "^3.0.0", + "gaze": "^1.0.0", + "get-stdin": "^4.0.1", + "glob": "^7.0.3", + "in-publish": "^2.0.0", + "lodash": "^4.17.11", + "meow": "^3.7.0", + "mkdirp": "^0.5.1", + "nan": "^2.13.2", + "node-gyp": "^3.8.0", + "npmlog": "^4.0.0", + "request": "^2.88.0", + "sass-graph": "^2.2.4", + "stdout-stream": "^1.4.0", + "true-case-path": "^1.0.2" + }, + "dependencies": { + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "optional": true, + "requires": { + "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" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true, + "optional": true + } + } + }, "parse5": { "version": "4.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/parse5/-/parse5-4.0.0.tgz", - "integrity": "sha1-bXhlbj2o14tOwLkG98CO8d/j9gg=", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", "dev": true }, "postcss": { "version": "7.0.14", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/postcss/-/postcss-7.0.14.tgz", - "integrity": "sha1-RSftaxyg2CxTzl7BogQcI0a71uU=", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.14.tgz", + "integrity": "sha512-NsbD6XUUMZvBxtQAJuWDJeeC4QFsmWsfozWxCJPWf3M55K9iu2iMDaKqyoOdTJ1R4usBXuxlVFAIo8rZPQD4Bg==", "dev": true, "requires": { "chalk": "^2.4.2", @@ -112,14 +175,14 @@ }, "source-map": { "version": "0.6.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true }, "source-map-support": { "version": "0.5.10", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/source-map-support/-/source-map-support-0.5.10.tgz", - "integrity": "sha1-IhQIC8nVGDJRHuK6uW48L5NTEgw=", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.10.tgz", + "integrity": "sha512-YfQ3tQFTK/yzlGJuX8pTwa4tifQj4QS2Mj7UegOu8jAz59MqIiMGPXxQhVQiIMNzayuUSF/jEuVnfFF5JqybmQ==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -129,21 +192,21 @@ } }, "@angular-devkit/build-ng-packagr": { - "version": "0.13.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@angular-devkit/build-ng-packagr/-/build-ng-packagr-0.13.8.tgz", - "integrity": "sha1-VpqNGME6iDpJxCizOXFX/lIuOX0=", + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-ng-packagr/-/build-ng-packagr-0.13.9.tgz", + "integrity": "sha512-hWneqiiKJred4r3wKHsHBMIKh/tjbHKy2zNTyvEKl5jcgGGDUlp51YjnUtkFeRWM8E6WUOyIHcoCNdFvwFSRDQ==", "dev": true, "requires": { - "@angular-devkit/architect": "0.13.8", - "@angular-devkit/core": "7.3.8", + "@angular-devkit/architect": "0.13.9", + "@angular-devkit/core": "7.3.9", "rxjs": "6.3.3", "semver": "5.6.0" } }, "@angular-devkit/build-optimizer": { - "version": "0.13.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@angular-devkit/build-optimizer/-/build-optimizer-0.13.8.tgz", - "integrity": "sha1-C8uhpO9ZjBoByqYN02A7rFKlexY=", + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.13.9.tgz", + "integrity": "sha512-GQtCntthQHSBv5l1ZY5p00JOECb/WcE1qUBo5kFjp84z0fszDkhOy52M1kcWCX4PFzJaY4DKk58hbUE/2UN0jw==", "dev": true, "requires": { "loader-utils": "1.2.3", @@ -161,20 +224,20 @@ } }, "@angular-devkit/build-webpack": { - "version": "0.13.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@angular-devkit/build-webpack/-/build-webpack-0.13.8.tgz", - "integrity": "sha1-gedURCKF3U7OfRak0U7YDX6qnic=", + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.13.9.tgz", + "integrity": "sha512-6ypu6pzNmQxzATF4rTWEhGSl5hyGQ8a/3aCZF/ux+XGc3d4hi2HW+NWlDm1UEna6ZjNtgEPlgfP4q8BKrjRmfA==", "dev": true, "requires": { - "@angular-devkit/architect": "0.13.8", - "@angular-devkit/core": "7.3.8", + "@angular-devkit/architect": "0.13.9", + "@angular-devkit/core": "7.3.9", "rxjs": "6.3.3" } }, "@angular-devkit/core": { - "version": "7.3.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@angular-devkit/core/-/core-7.3.8.tgz", - "integrity": "sha1-cCsJRKaccczjoUkuDWLeGN8iqZM=", + "version": "7.3.9", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-7.3.9.tgz", + "integrity": "sha512-SaxD+nKFW3iCBKsxNR7+66J30EexW/y7tm8m5AvUH+GwSAgIj0ZYmRUzFEPggcaLVA4WnE/YWqIXZMJW5dT7gw==", "dev": true, "requires": { "ajv": "6.9.1", @@ -186,8 +249,8 @@ "dependencies": { "ajv": { "version": "6.9.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ajv/-/ajv-6.9.1.tgz", - "integrity": "sha1-pNNoPXSrxWcOdfCxZSD3CiDqjcE=", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -199,40 +262,30 @@ } }, "@angular-devkit/schematics": { - "version": "7.3.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@angular-devkit/schematics/-/schematics-7.3.8.tgz", - "integrity": "sha1-cL/Hh295JP9Tq5MQoAti8grPL1w=", + "version": "7.3.9", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-7.3.9.tgz", + "integrity": "sha512-xzROGCYp7aQbeJ3V6YC0MND7wKEAdWqmm/GaCufEk0dDS8ZGe0sQhcM2oBRa2nQqGQNeThFIH51kx+FayrJP0w==", "dev": true, "requires": { - "@angular-devkit/core": "7.3.8", + "@angular-devkit/core": "7.3.9", "rxjs": "6.3.3" } }, "@angular-devkit/schematics-cli": { - "version": "0.13.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@angular-devkit/schematics-cli/-/schematics-cli-0.13.8.tgz", - "integrity": "sha1-j0wxTN17i3YhFBrWOwLo+MALLkM=", + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-0.13.9.tgz", + "integrity": "sha512-DcKPm+I+8X3Rn5O/5YTuez3zt5jlxzRCdo6lPQqOX6bmuz6a676/6fYMfB16OuMjgxLUKjzlsCg7DMf0fKpxxg==", "dev": true, "requires": { - "@angular-devkit/core": "7.3.8", - "@angular-devkit/schematics": "7.3.8", - "@schematics/schematics": "0.13.8", + "@angular-devkit/core": "7.3.9", + "@angular-devkit/schematics": "7.3.9", + "@schematics/schematics": "0.13.9", "inquirer": "6.2.1", "minimist": "1.2.0", "rxjs": "6.3.3", "symbol-observable": "1.2.0" }, "dependencies": { - "@angular-devkit/schematics": { - "version": "7.3.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@angular-devkit/schematics/-/schematics-7.3.8.tgz", - "integrity": "sha1-cL/Hh295JP9Tq5MQoAti8grPL1w=", - "dev": true, - "requires": { - "@angular-devkit/core": "7.3.8", - "rxjs": "6.3.3" - } - }, "minimist": { "version": "1.2.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/minimist/-/minimist-1.2.0.tgz", @@ -242,33 +295,33 @@ } }, "@angular/animations": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-7.2.4.tgz", - "integrity": "sha512-Wx6cqU6koFOASlyl4aCygtbtROoehU6OKwV2EZTkfzHx6Eu/QyTiSa5kyoApVM5LMmCNeb8SxJMSAnKXztNl0A==", + "version": "7.2.15", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-7.2.15.tgz", + "integrity": "sha512-8oBt3HLgd2+kyJHUgsd7OzKCCss67t2sch15XNoIWlOLfxclqU+EfFE6t/vCzpT8/+lpZS6LU9ZrTnb+UBj5jg==", "requires": { "tslib": "^1.9.0" } }, "@angular/cdk": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-7.3.2.tgz", - "integrity": "sha512-jnthvY1Kt+DpJTrkgyKTiVuYgBdp4iG7QDeZJPBQm0e8mL2K0Pi9AqFbo01E4CGPqZpvtEggvqM0OJpR8J+amw==", + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-7.3.7.tgz", + "integrity": "sha512-xbXxhHHKGkVuW6K7pzPmvpJXIwpl0ykBnvA2g+/7Sgy5Pd35wCC+UtHD9RYczDM/mkygNxMQtagyCErwFnDtQA==", "requires": { "parse5": "^5.0.0", "tslib": "^1.7.1" } }, "@angular/cli": { - "version": "7.3.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@angular/cli/-/cli-7.3.8.tgz", - "integrity": "sha1-oIkeCL7n1oue8sAKmn6TxsWsddc=", + "version": "7.3.9", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-7.3.9.tgz", + "integrity": "sha512-7oJj7CKDlFUbQav1x1CV4xKKcbt0pnxY4unKcm7Q1tVXhu8bU2bc3cDA0aJnbofcYb6TJcd/C2qHgCt78q7edA==", "dev": true, "requires": { - "@angular-devkit/architect": "0.13.8", - "@angular-devkit/core": "7.3.8", - "@angular-devkit/schematics": "7.3.8", - "@schematics/angular": "7.3.8", - "@schematics/update": "0.13.8", + "@angular-devkit/architect": "0.13.9", + "@angular-devkit/core": "7.3.9", + "@angular-devkit/schematics": "7.3.9", + "@schematics/angular": "7.3.9", + "@schematics/update": "0.13.9", "@yarnpkg/lockfile": "1.1.0", "ini": "1.3.5", "inquirer": "6.2.1", @@ -280,29 +333,29 @@ } }, "@angular/common": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-7.2.4.tgz", - "integrity": "sha512-3/i8RtnLTx/90gJHk5maE8zwsSiHgHvLItaa0qVfNlWiU0eCId/PL6TgDkut5vN9SQYL0oxhxFaVd35HmwsmuQ==", + "version": "7.2.15", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-7.2.15.tgz", + "integrity": "sha512-2b5JY2HWVHCf3D1GZjmde7jdAXSTXkYtmjLtA9tQkjOOTr80eHpNSujQqnzb97dk9VT9OjfjqTQd7K3pxZz8jw==", "requires": { "tslib": "^1.9.0" } }, "@angular/compiler": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-7.2.4.tgz", - "integrity": "sha512-+zyMzPCL45ePEV9nrnYJvhAVgp2Y19bDaq0f0YdZAqAjgDqHzXGGR6wX8GueyJWmUYWx5vwK6Apla4HwDrYA1w==", + "version": "7.2.15", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-7.2.15.tgz", + "integrity": "sha512-5yb4NcLk8GuXkYf7Dcor4XkGueYp4dgihzDmMjYDUrV0NPhubKlr+SwGtLOtzgRBWJ1I2bO0S3zwa0q0OgIPOw==", "requires": { "tslib": "^1.9.0" } }, "@angular/compiler-cli": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-7.2.4.tgz", - "integrity": "sha512-UhLosSeuwFIfaGqGcYOh9WSOuzEpeuhIRAOt81MeqOQEqkoreUjfxrQq8XWNkdqsPZHtiptF5ZwXlMBxlj9jJg==", + "version": "7.2.15", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-7.2.15.tgz", + "integrity": "sha512-+AsfyKawmj/sa+m4Pz8VSRFbCfx/3IOjAuuEjhopbyr154YpPDSu8NTbcwzq3yfbVcPwK4/4exmbQzpsndaCTg==", "dev": true, "requires": { "canonical-path": "1.0.0", - "chokidar": "^1.4.2", + "chokidar": "^2.1.1", "convert-source-map": "^1.5.1", "dependency-graph": "^0.7.2", "magic-string": "^0.25.0", @@ -320,42 +373,6 @@ "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, - "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", - "dev": true, - "requires": { - "micromatch": "^2.1.5", - "normalize-path": "^2.0.0" - } - }, - "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1" - } - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true - }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true, - "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" - } - }, "camelcase": { "version": "4.1.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/camelcase/-/camelcase-4.1.0.tgz", @@ -363,20 +380,23 @@ "dev": true }, "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.6.tgz", + "integrity": "sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g==", "dev": true, "requires": { - "anymatch": "^1.3.0", - "async-each": "^1.0.0", - "fsevents": "^1.0.0", - "glob-parent": "^2.0.0", - "inherits": "^2.0.1", + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", "is-binary-path": "^1.0.0", - "is-glob": "^2.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0" + "readdirp": "^2.2.1", + "upath": "^1.1.1" } }, "cross-spawn": { @@ -405,63 +425,12 @@ "strip-eof": "^1.0.0" } }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true, - "requires": { - "is-posix-bracket": "^0.1.0" - } - }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "^2.0.0" - } - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, "load-json-file": { "version": "2.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/load-json-file/-/load-json-file-2.0.0.tgz", @@ -483,33 +452,18 @@ "mimic-fn": "^1.0.0" } }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" - } - }, "minimist": { "version": "1.2.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, "os-locale": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", @@ -588,6 +542,12 @@ "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true }, + "upath": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.2.tgz", + "integrity": "sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q==", + "dev": true + }, "which-module": { "version": "2.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/which-module/-/which-module-2.0.0.tgz", @@ -633,55 +593,55 @@ } }, "@angular/core": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-7.2.4.tgz", - "integrity": "sha512-kfAxhIxl89PmB7y81FR/RAv0yWRFcEYxEnTwV+o8jKGfemAXtQ0g/Vh+lJR0SD/TBgFilMxotN1mhwH4A8GShw==", + "version": "7.2.15", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-7.2.15.tgz", + "integrity": "sha512-XsuYm0jEU/mOqwDOk2utThv8J9kESkAerfuCHClE9rB2TtHUOGCfekF7lJWqjjypu6/J9ygoPFo7hdAE058ZGg==", "requires": { "tslib": "^1.9.0" } }, "@angular/forms": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-7.2.4.tgz", - "integrity": "sha512-DAtOrdlTRsgvmZrsvczCAkY8dhTwZb5DXBmPuSXh0UR9lvEiCgNHGbwEiIiIkAHpw1wSeXZrq0qyy/oJRvf18g==", + "version": "7.2.15", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-7.2.15.tgz", + "integrity": "sha512-p0kcIQLtBBC1qeTA6M3nOuXf/k91E80FKquVM9zEsO2kDjI0oZJVfFYL2UMov5samlJOPN+t6lRHEIUa7ApPsw==", "requires": { "tslib": "^1.9.0" } }, "@angular/http": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@angular/http/-/http-7.2.4.tgz", - "integrity": "sha512-kazJREm7MtSCYbE+9zU/CcUXI5Csu53PooeQlAp80/TOHqry6fVKIMHCI892Db9ScY2ds0SzbyTmrxEQo7PP1A==", + "version": "7.2.15", + "resolved": "https://registry.npmjs.org/@angular/http/-/http-7.2.15.tgz", + "integrity": "sha512-TR7PEdmLWNIre3Zn8lvyb4lSrvPUJhKLystLnp4hBMcWsJqq5iK8S3bnlR4viZ9HMlf7bW7+Hm4SI6aB3tdUtw==", "requires": { "tslib": "^1.9.0" } }, "@angular/language-service": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-7.2.4.tgz", - "integrity": "sha512-A9Rud/27hHMSUUjpgn57nVeLsoYgdvFwJhtlZA/oCuSpmlD+LqqBsEpPhivwn++u44+DSrFXsic29jlFnsBotw==", + "version": "7.2.15", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-7.2.15.tgz", + "integrity": "sha512-Ig5Jr7mnDelaZvSbUd9YhI5am3q1ku9xelAuwvtyDKvQJeKQj3BtTagcOgWrnQBfrJ/FsA/M5Zo48ncSsV0tqQ==", "dev": true }, "@angular/platform-browser": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-7.2.4.tgz", - "integrity": "sha512-Klt8aKR5SP9bqfMfpSY5vQOY7AQEs8JGuZOk5Bfc2dUtYT2IEIvK2IqO8v2rcFRVO13HOPUxl328efyHqLgI7g==", + "version": "7.2.15", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-7.2.15.tgz", + "integrity": "sha512-aYgmPsbC9Tvp9vmKWD8voeAp4crwCay7/D6lM3ClEe2EeK934LuEXq3/uczMrFVbnIX7BBIo8fh03Tl7wbiGPw==", "requires": { "tslib": "^1.9.0" } }, "@angular/platform-browser-dynamic": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-7.2.4.tgz", - "integrity": "sha512-J/xWlmaYOPUoCHZ5TiIRiyYa4uRMtCz3aGdBfY8k/NWtNo8SCYaS3aut7Sk4RS5rK8aAVi+aYFlY5YOrlW+Hbg==", + "version": "7.2.15", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-7.2.15.tgz", + "integrity": "sha512-UL2PqhzXMD769NQ6Lh6pxlBDKvN9Qol3XLRFil80lwJ1GRW16ITeYbCamcafIH2GOyd88IhmYcbMfUQ/6q4MMQ==", "requires": { "tslib": "^1.9.0" } }, "@angular/router": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-7.2.4.tgz", - "integrity": "sha512-T8Uqf2H1SV1MQI38WwYJ4aa+4NNnvlp2Tp/rkfg6tKcp/cLkKqE6OOfiy9lmW+i/624v8tMgYoBMOUNBjAG23g==", + "version": "7.2.15", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-7.2.15.tgz", + "integrity": "sha512-qAubRJRQanguUqJQ76J9GSZ4JFtoyhJKRmX5P23ANZJXpB6YLzF2fJmOGi+E6cV8F0tKBMEq1pjxFTisx0MXwQ==", "requires": { "tslib": "^1.9.0" } @@ -696,14 +656,14 @@ } }, "@babel/generator": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.3.2.tgz", - "integrity": "sha512-f3QCuPppXxtZOEm5GWPra/uYUjmNQlu9pbAD8D/9jze4pTY83rTtB1igTBSwvkeNlC5gR24zFFkz+2WHLFQhqQ==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.4.tgz", + "integrity": "sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ==", "dev": true, "requires": { - "@babel/types": "^7.3.2", + "@babel/types": "^7.4.4", "jsesc": "^2.5.1", - "lodash": "^4.17.10", + "lodash": "^4.17.11", "source-map": "^0.5.0", "trim-right": "^1.0.1" }, @@ -743,12 +703,12 @@ } }, "@babel/helper-split-export-declaration": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", - "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", + "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.4.4" } }, "@babel/highlight": { @@ -771,37 +731,37 @@ } }, "@babel/parser": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.3.2.tgz", - "integrity": "sha512-QzNUC2RO1gadg+fs21fi0Uu0OuGNzRKEmgCxoLNzbCdoprLwjfmZwzUrpUNfJPaVRwBpDY47A17yYEGWyRelnQ==", + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.5.tgz", + "integrity": "sha512-9mUqkL1FF5T7f0WDFfAoDdiMVPWsdD1gZYzSnaXsxUCUqzuch/8of9G3VUSNiZmMBoRxT3neyVsqeiL/ZPcjew==", "dev": true }, "@babel/template": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.2.2.tgz", - "integrity": "sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.4.tgz", + "integrity": "sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.2.2", - "@babel/types": "^7.2.2" + "@babel/parser": "^7.4.4", + "@babel/types": "^7.4.4" } }, "@babel/traverse": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.2.3.tgz", - "integrity": "sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw==", + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.5.tgz", + "integrity": "sha512-Vc+qjynwkjRmIFGxy0KYoPj4FdVDxLej89kMHFsWScq999uX+pwcX4v9mWRjW0KcAYTPAuVQl2LKP1wEVLsp+A==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.2.2", + "@babel/generator": "^7.4.4", "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "@babel/parser": "^7.2.3", - "@babel/types": "^7.2.2", + "@babel/helper-split-export-declaration": "^7.4.4", + "@babel/parser": "^7.4.5", + "@babel/types": "^7.4.4", "debug": "^4.1.0", "globals": "^11.1.0", - "lodash": "^4.17.10" + "lodash": "^4.17.11" }, "dependencies": { "debug": { @@ -814,9 +774,9 @@ } }, "globals": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", - "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true }, "ms": { @@ -828,13 +788,13 @@ } }, "@babel/types": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.3.2.tgz", - "integrity": "sha512-3Y6H8xlUlpbGR+XvawiH0UXehqydTmNmEpozWcXymqwcrwYAl5KMvKtQ+TF6f6E08V6Jur7v/ykdDSF+WDEIXQ==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.4.tgz", + "integrity": "sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ==", "dev": true, "requires": { "esutils": "^2.0.2", - "lodash": "^4.17.10", + "lodash": "^4.17.11", "to-fast-properties": "^2.0.0" }, "dependencies": { @@ -887,9 +847,9 @@ } }, "@ng-bootstrap/ng-bootstrap": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@ng-bootstrap/ng-bootstrap/-/ng-bootstrap-3.3.1.tgz", - "integrity": "sha512-awty+5Kil0i/xIV7SSmKa5YozU83EdIx2EenF2AUDTczSKhHNhRByo82rjtwIhshN25/ZEss4aSDhgILLI88fw==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@ng-bootstrap/ng-bootstrap/-/ng-bootstrap-4.1.3.tgz", + "integrity": "sha512-aW6qhBUfKQ0qnqwkZAZT5SmJsT5Bh/mKKO3kZH3MWcIN9gxQ/8/Bva6O+w8IYrbm3Os0+XlRdBXbu/mybYn7yw==", "requires": { "tslib": "^1.9.0" } @@ -901,12 +861,12 @@ "dev": true }, "@ngtools/webpack": { - "version": "7.3.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@ngtools/webpack/-/webpack-7.3.8.tgz", - "integrity": "sha1-yHYdD2lZaC4DAy+NPecY0fgRQQ4=", + "version": "7.3.9", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-7.3.9.tgz", + "integrity": "sha512-+ROpqfCXLdQwfP+UNDLk4p959ZrocpStkdd2Iy9CeOJ8yDkityqpstTwQC3oHzzu/95BiyZ0hrHbM6AsPPIvJg==", "dev": true, "requires": { - "@angular-devkit/core": "7.3.8", + "@angular-devkit/core": "7.3.9", "enhanced-resolve": "4.1.0", "rxjs": "6.3.3", "tree-kill": "1.2.1", @@ -914,46 +874,34 @@ } }, "@schematics/angular": { - "version": "7.3.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@schematics/angular/-/angular-7.3.8.tgz", - "integrity": "sha1-nN7UlreYMBZKy8L8OCtm5bX3zwI=", + "version": "7.3.9", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-7.3.9.tgz", + "integrity": "sha512-B3lytFtFeYNLfWdlrIzvy3ulFRccD2/zkoL0734J+DAGfUz7vbysJ50RwYL46sQUcKdZdvb48ktfu1S8yooP6Q==", "dev": true, "requires": { - "@angular-devkit/core": "7.3.8", - "@angular-devkit/schematics": "7.3.8", + "@angular-devkit/core": "7.3.9", + "@angular-devkit/schematics": "7.3.9", "typescript": "3.2.4" } }, "@schematics/schematics": { - "version": "0.13.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@schematics/schematics/-/schematics-0.13.8.tgz", - "integrity": "sha1-pVyNo9yz5f51tkEcLOnxFftZDvs=", + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/@schematics/schematics/-/schematics-0.13.9.tgz", + "integrity": "sha512-tEa0gs8H5UOEwhwc9k4dgrGITs3P24p+uY4HB658a7cNIemPqYNQO+Dpp86RuAgZZ7+ns/xazw+wGzNHjr5/Yw==", "dev": true, "requires": { - "@angular-devkit/core": "7.3.8", - "@angular-devkit/schematics": "7.3.8" - }, - "dependencies": { - "@angular-devkit/schematics": { - "version": "7.3.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@angular-devkit/schematics/-/schematics-7.3.8.tgz", - "integrity": "sha1-cL/Hh295JP9Tq5MQoAti8grPL1w=", - "dev": true, - "requires": { - "@angular-devkit/core": "7.3.8", - "rxjs": "6.3.3" - } - } + "@angular-devkit/core": "7.3.9", + "@angular-devkit/schematics": "7.3.9" } }, "@schematics/update": { - "version": "0.13.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@schematics/update/-/update-0.13.8.tgz", - "integrity": "sha1-FJwzNfOF6U4Fk7zk36yOkctKVsE=", + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.13.9.tgz", + "integrity": "sha512-4MQcaKFxhMzZyE//+DknDh3h3duy3avg2oxSHxdwXlCZ8Q92+4lpegjJcSRiqlEwO4qeJ5XnrjrvzfIiaIZOmA==", "dev": true, "requires": { - "@angular-devkit/core": "7.3.8", - "@angular-devkit/schematics": "7.3.8", + "@angular-devkit/core": "7.3.9", + "@angular-devkit/schematics": "7.3.9", "@yarnpkg/lockfile": "1.1.0", "ini": "1.3.5", "pacote": "9.4.0", @@ -962,6 +910,12 @@ "semver-intersect": "1.4.0" } }, + "@sindresorhus/is": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz", + "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==", + "dev": true + }, "@types/chokidar": { "version": "1.7.5", "resolved": "http://registry.npmjs.org/@types/chokidar/-/chokidar-1.7.5.tgz", @@ -1055,6 +1009,21 @@ "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, + "@types/lodash": { + "version": "4.14.130", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.130.tgz", + "integrity": "sha512-H++wk0tbneBsRVfLkgAAd0IIpmpVr2Bj4T0HncoOsQf3/xrJexRYQK2Tqo0Ej3pFslM8GkMgdis9bu6xIb1ycw==", + "dev": true + }, + "@types/lodash.debounce": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@types/lodash.debounce/-/lodash.debounce-4.0.6.tgz", + "integrity": "sha512-4WTmnnhCfDvvuLMaF3KV4Qfki93KebocUF45msxhYyjMttZDQYzHkO639ohhk8+oco2cluAFL3t5+Jn4mleylQ==", + "dev": true, + "requires": { + "@types/lodash": "*" + } + }, "@types/minimatch": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", @@ -1097,8 +1066,8 @@ }, "@types/source-list-map": { "version": "0.1.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha1-AHiDYGP/rxdBI0m7o2QIfgrALsk=", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", "dev": true }, "@types/through2": { @@ -1148,8 +1117,8 @@ }, "@types/webpack-sources": { "version": "0.1.5", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@types/webpack-sources/-/webpack-sources-0.1.5.tgz", - "integrity": "sha1-vkfBD3g9PW7+FHH/fwQmEb1GSpI=", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-0.1.5.tgz", + "integrity": "sha512-zfvjpp7jiafSmrzJ2/i3LqOyTYTuJ7u1KOXlKgDlvsj9Rr0x7ZiYu5lZbXwobL7lmsRNtPXlBfmaUD8eU2Hu8w==", "dev": true, "requires": { "@types/node": "*", @@ -1159,16 +1128,16 @@ "dependencies": { "source-map": { "version": "0.6.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true } } }, "@webassemblyjs/ast": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/ast/-/ast-1.7.11.tgz", - "integrity": "sha1-uYhYLK+7Kwlei1VlJvMMkNBXys4=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.11.tgz", + "integrity": "sha512-ZEzy4vjvTzScC+SH8RBssQUawpaInUdMTYwYYLh54/s8TuT0gBLuyUnppKsVyZEi876VmmStKsUs28UxPgdvrA==", "dev": true, "requires": { "@webassemblyjs/helper-module-context": "1.7.11", @@ -1178,26 +1147,26 @@ }, "@webassemblyjs/floating-point-hex-parser": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.11.tgz", - "integrity": "sha1-pp8K9lAuuaPARVVbGmEp09Py4xM=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.11.tgz", + "integrity": "sha512-zY8dSNyYcgzNRNT666/zOoAyImshm3ycKdoLsyDw/Bwo6+/uktb7p4xyApuef1dwEBo/U/SYQzbGBvV+nru2Xg==", "dev": true }, "@webassemblyjs/helper-api-error": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.11.tgz", - "integrity": "sha1-x7a7gQX4QDlRGis5zklPGTgYoyo=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.11.tgz", + "integrity": "sha512-7r1qXLmiglC+wPNkGuXCvkmalyEstKVwcueZRP2GNC2PAvxbLYwLLPr14rcdJaE4UtHxQKfFkuDFuv91ipqvXg==", "dev": true }, "@webassemblyjs/helper-buffer": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.11.tgz", - "integrity": "sha1-MSLUjcxslFbtmC3r4WyPNxAd85s=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.11.tgz", + "integrity": "sha512-MynuervdylPPh3ix+mKZloTcL06P8tenNH3sx6s0qE8SLR6DdwnfgA7Hc9NSYeob2jrW5Vql6GVlsQzKQCa13w==", "dev": true }, "@webassemblyjs/helper-code-frame": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.11.tgz", - "integrity": "sha1-z48QbnRmYqDaKb3vY1/NPRJINks=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.11.tgz", + "integrity": "sha512-T8ESC9KMXFTXA5urJcyor5cn6qWeZ4/zLPyWeEXZ03hj/x9weSokGNkVCdnhSabKGYWxElSdgJ+sFa9G/RdHNw==", "dev": true, "requires": { "@webassemblyjs/wast-printer": "1.7.11" @@ -1205,26 +1174,26 @@ }, "@webassemblyjs/helper-fsm": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.11.tgz", - "integrity": "sha1-3ziIKmJAgNA/dQP5Pj8XrFrAEYE=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.11.tgz", + "integrity": "sha512-nsAQWNP1+8Z6tkzdYlXT0kxfa2Z1tRTARd8wYnc/e3Zv3VydVVnaeePgqUzFrpkGUyhUUxOl5ML7f1NuT+gC0A==", "dev": true }, "@webassemblyjs/helper-module-context": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.11.tgz", - "integrity": "sha1-2HTXIuUeYqwgJHaTXWScgC+g4gk=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.11.tgz", + "integrity": "sha512-JxfD5DX8Ygq4PvXDucq0M+sbUFA7BJAv/GGl9ITovqE+idGX+J3QSzJYz+LwQmL7fC3Rs+utvWoJxDb6pmC0qg==", "dev": true }, "@webassemblyjs/helper-wasm-bytecode": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.11.tgz", - "integrity": "sha1-3ZoegX8cLrEFtM8QEwk8ufPJywY=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.11.tgz", + "integrity": "sha512-cMXeVS9rhoXsI9LLL4tJxBgVD/KMOKXuFqYb5oCJ/opScWpkCMEz9EJtkonaNcnLv2R3K5jIeS4TRj/drde1JQ==", "dev": true }, "@webassemblyjs/helper-wasm-section": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.11.tgz", - "integrity": "sha1-nJrEHs+fvP/8lvbSZ14t4zgR5oo=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.11.tgz", + "integrity": "sha512-8ZRY5iZbZdtNFE5UFunB8mmBEAbSI3guwbrsCl4fWdfRiAcvqQpeqd5KHhSWLL5wuxo53zcaGZDBU64qgn4I4Q==", "dev": true, "requires": { "@webassemblyjs/ast": "1.7.11", @@ -1235,8 +1204,8 @@ }, "@webassemblyjs/ieee754": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/ieee754/-/ieee754-1.7.11.tgz", - "integrity": "sha1-yVg562N1ejGICq7HtlEtQZGsZAs=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.11.tgz", + "integrity": "sha512-Mmqx/cS68K1tSrvRLtaV/Lp3NZWzXtOHUW2IvDvl2sihAwJh4ACE0eL6A8FvMyDG9abes3saB6dMimLOs+HMoQ==", "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" @@ -1244,8 +1213,8 @@ }, "@webassemblyjs/leb128": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/leb128/-/leb128-1.7.11.tgz", - "integrity": "sha1-1yZ6HunEWU/T9+NymIGOxlaH22M=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.11.tgz", + "integrity": "sha512-vuGmgZjjp3zjcerQg+JA+tGOncOnJLWVkt8Aze5eWQLwTQGNgVLcyOTqgSCxWTR4J42ijHbBxnuRaL1Rv7XMdw==", "dev": true, "requires": { "@xtuc/long": "4.2.1" @@ -1253,14 +1222,14 @@ }, "@webassemblyjs/utf8": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/utf8/-/utf8-1.7.11.tgz", - "integrity": "sha1-Btchjqn9yUpnk6qSIIFg2z0m7oI=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.11.tgz", + "integrity": "sha512-C6GFkc7aErQIAH+BMrIdVSmW+6HSe20wg57HEC1uqJP8E/xpMjXqQUxkQw07MhNDSDcGpxI9G5JSNOQCqJk4sA==", "dev": true }, "@webassemblyjs/wasm-edit": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.11.tgz", - "integrity": "sha1-jHTKR01PlR0B266b1wgU7iKoIAU=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.11.tgz", + "integrity": "sha512-FUd97guNGsCZQgeTPKdgxJhBXkUbMTY6hFPf2Y4OedXd48H97J+sOY2Ltaq6WGVpIH8o/TGOVNiVz/SbpEMJGg==", "dev": true, "requires": { "@webassemblyjs/ast": "1.7.11", @@ -1275,8 +1244,8 @@ }, "@webassemblyjs/wasm-gen": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.11.tgz", - "integrity": "sha1-m7upQvIjdWhqb7dZr816ycRdoag=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.11.tgz", + "integrity": "sha512-U/KDYp7fgAZX5KPfq4NOupK/BmhDc5Kjy2GIqstMhvvdJRcER/kUsMThpWeRP8BMn4LXaKhSTggIJPOeYHwISA==", "dev": true, "requires": { "@webassemblyjs/ast": "1.7.11", @@ -1288,8 +1257,8 @@ }, "@webassemblyjs/wasm-opt": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.11.tgz", - "integrity": "sha1-szHo5874+OLwB9QsOjagWAp9bKc=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.11.tgz", + "integrity": "sha512-XynkOwQyiRidh0GLua7SkeHvAPXQV/RxsUeERILmAInZegApOUAIJfRuPYe2F7RcjOC9tW3Cb9juPvAC/sCqvg==", "dev": true, "requires": { "@webassemblyjs/ast": "1.7.11", @@ -1300,8 +1269,8 @@ }, "@webassemblyjs/wasm-parser": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.11.tgz", - "integrity": "sha1-bj0g+mo1GfawhO+Tka1YIR77Cho=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.11.tgz", + "integrity": "sha512-6lmXRTrrZjYD8Ng8xRyvyXQJYUQKYSXhJqXOBLw24rdiXsHAOlvw5PhesjdcaMadU/pyPQOJ5dHreMjBxwnQKg==", "dev": true, "requires": { "@webassemblyjs/ast": "1.7.11", @@ -1314,8 +1283,8 @@ }, "@webassemblyjs/wast-parser": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/wast-parser/-/wast-parser-1.7.11.tgz", - "integrity": "sha1-Jb0RdWLKjAAnIP+BFu+QctnKhpw=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.11.tgz", + "integrity": "sha512-lEyVCg2np15tS+dm7+JJTNhNWq9yTZvi3qEhAIIOaofcYlUp0UR5/tVqOwa/gXYr3gjwSZqw+/lS9dscyLelbQ==", "dev": true, "requires": { "@webassemblyjs/ast": "1.7.11", @@ -1328,8 +1297,8 @@ }, "@webassemblyjs/wast-printer": { "version": "1.7.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@webassemblyjs/wast-printer/-/wast-printer-1.7.11.tgz", - "integrity": "sha1-xCRbbeJCy1CizJUBdP2/ZceNeBM=", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.11.tgz", + "integrity": "sha512-m5vkAsuJ32QpkdkDOUPGSltrg8Cuk3KBx4YrmAGQwCZPRdUHXxG4phIOuuycLemHFr74sWL9Wthqss4fzdzSwg==", "dev": true, "requires": { "@webassemblyjs/ast": "1.7.11", @@ -1339,20 +1308,20 @@ }, "@xtuc/ieee754": { "version": "1.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha1-7vAUoxRa5Hehy8AM0eVSM23Ot5A=", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", "dev": true }, "@xtuc/long": { "version": "4.2.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@xtuc/long/-/long-4.2.1.tgz", - "integrity": "sha1-XIXWYvdvodNFdXZsXc1mFavNMNg=", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.1.tgz", + "integrity": "sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g==", "dev": true }, "@yarnpkg/lockfile": { "version": "1.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha1-53qX+9NFt22DJF7c0X05OxtB+zE=", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", "dev": true }, "JSONStream": { @@ -1401,8 +1370,8 @@ }, "acorn-dynamic-import": { "version": "4.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz", - "integrity": "sha1-SCIQFAWCo2uDw+NC4c/ryqkkCUg=", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz", + "integrity": "sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw==", "dev": true }, "acorn-globals": { @@ -1457,8 +1426,8 @@ }, "agentkeepalive": { "version": "3.5.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/agentkeepalive/-/agentkeepalive-3.5.2.tgz", - "integrity": "sha1-oROSTdP6JKC8O3gQjEUMKr7gD2c=", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", + "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", "dev": true, "requires": { "humanize-ms": "^1.2.1" @@ -1478,14 +1447,14 @@ }, "ajv-errors": { "version": "1.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha1-81mGrOuRr63sQQL72FAUlQzvpk0=", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", "dev": true }, "ajv-keywords": { "version": "3.4.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ajv-keywords/-/ajv-keywords-3.4.0.tgz", - "integrity": "sha1-S4Mee1MUFafMUYzUBOc/YZPGNJ0=", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.0.tgz", + "integrity": "sha512-aUjdRFISbuFOl0EIZc+9e4FfZp0bDZgAdOOf30bJmw8VM9v84SHyVyxDfbWxpGYbdZD/9XoKxfHVNmxPkhwyGw==", "dev": true }, "amdefine": { @@ -1538,8 +1507,8 @@ }, "ansi-colors": { "version": "3.2.4", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha1-46PaS/uubIapwoViXeEkojQCb78=", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", + "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", "dev": true }, "ansi-cyan": { @@ -1708,8 +1677,8 @@ }, "array-flatten": { "version": "2.1.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha1-JO+AoowaiTYX4hSbDG0NeIKTsJk=", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", "dev": true }, "array-ify": { @@ -1805,8 +1774,8 @@ }, "asn1.js": { "version": "4.10.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha1-ucK/WAXx5kqt7tbfOiv6+1pz9aA=", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", "dev": true, "requires": { "bn.js": "^4.0.0", @@ -1815,11 +1784,12 @@ } }, "assert": { - "version": "1.4.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/assert/-/assert-1.4.1.tgz", - "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", "dev": true, "requires": { + "object-assign": "^4.1.1", "util": "0.10.3" }, "dependencies": { @@ -1854,8 +1824,8 @@ }, "async": { "version": "2.6.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/async/-/async-2.6.2.tgz", - "integrity": "sha1-GDMOp+bjE4h/XS8qkEusb+TdU4E=", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", + "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", "dev": true, "requires": { "lodash": "^4.17.11" @@ -1956,8 +1926,8 @@ }, "babel-generator": { "version": "6.26.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha1-GERAjTuPDTWkBOp6wYDwh6YBvZA=", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", "dev": true, "requires": { "babel-messages": "^6.23.0", @@ -2060,8 +2030,8 @@ }, "babylon": { "version": "6.18.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha1-ry87iPpvXB5MY00aD46sT1WzleM=", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", "dev": true }, "backo2": { @@ -2138,8 +2108,8 @@ }, "base64-js": { "version": "1.3.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/base64-js/-/base64-js-1.3.0.tgz", - "integrity": "sha1-yrHmEY8FEJXli1KBrqjBzSK/wOM=", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", "dev": true }, "base64id": { @@ -2178,34 +2148,28 @@ "callsite": "1.0.0" } }, - "big-integer": { - "version": "1.6.41", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.41.tgz", - "integrity": "sha512-d5AT9lMTYJ/ZE/4gzxb+5ttPcRWljVsvv7lF1w9KzkPhVUhBtHrjDo1J8swfZKepfLsliDhYa31zRYwcD0Yg9w==", - "dev": true - }, "big.js": { "version": "5.2.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg=", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", "dev": true }, - "binary": { - "version": "0.3.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/binary/-/binary-0.3.0.tgz", - "integrity": "sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk=", - "dev": true, - "requires": { - "buffers": "~0.1.1", - "chainsaw": "~0.1.0" - } - }, "binary-extensions": { "version": "1.13.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.0.tgz", "integrity": "sha512-EgmjVLMn22z7eGGv3kcnHwSnJXmFHjISTY9E/S5lIcTD3Oxw05QTcBLNkJFzcb3cNueUdF/IN4U+d78V0zO8Hw==", "dev": true }, + "bl": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", + "dev": true, + "requires": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, "blob": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", @@ -2246,8 +2210,8 @@ }, "bn.js": { "version": "4.11.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha1-LN4J617jQfSEdGuwMJsyU7GxRC8=", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", "dev": true }, "body": { @@ -2325,9 +2289,9 @@ "dev": true }, "bootstrap": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.3.0.tgz", - "integrity": "sha512-M0vqY0Z6UDweV2nLFl5dXcb+GIo53EBCGMMVxCGH5vJxl/jsr+HkULBMd4kn9rdpdBZwd3BduCgMOYOwJybo4Q==" + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.3.1.tgz", + "integrity": "sha512-rXqOmH1VilAt2DyPzluTi2blhk17bO7ef+zLLPlWvG494pDxcM234pJ8wTc/6R40UWizAIIMgxjvxZg5kmsbag==" }, "boxen": { "version": "1.3.0", @@ -2435,8 +2399,8 @@ }, "browserify-aes": { "version": "1.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha1-Mmc0ZC9APavDADIJhTu3CtQo70g=", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, "requires": { "buffer-xor": "^1.0.3", @@ -2449,8 +2413,8 @@ }, "browserify-cipher": { "version": "1.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha1-jWR0wbhwv9q807z8wZNKEOlPFfA=", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", "dev": true, "requires": { "browserify-aes": "^1.0.4", @@ -2460,8 +2424,8 @@ }, "browserify-des": { "version": "1.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha1-OvTx9Zg5QDVy8cZiBDdfen9wPpw=", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", "dev": true, "requires": { "cipher-base": "^1.0.1", @@ -2497,8 +2461,8 @@ }, "browserify-zlib": { "version": "0.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha1-KGlFnZqjviRf6P4sofRuLn9U1z8=", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "dev": true, "requires": { "pako": "~1.0.5" @@ -2524,14 +2488,17 @@ "https-proxy-agent": "^2.2.1" } }, - "browserstacktunnel-wrapper": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/browserstacktunnel-wrapper/-/browserstacktunnel-wrapper-2.0.4.tgz", - "integrity": "sha512-GCV599FUUxNOCFl3WgPnfc5dcqq9XTmMXoxWpqkvmk0R9TOIoqmjENNU6LY6DtgIL6WfBVbg/jmWtnM5K6UYSg==", + "browserstack-local": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/browserstack-local/-/browserstack-local-1.4.0.tgz", + "integrity": "sha512-BUJWxIsJkJxqfTPJIvGWTsf+IYSqSFUeFNW9tnuyTG7va/0LkXLhIi/ErFGDle1urQkol48HlQUXj4QrliXFpg==", "dev": true, "requires": { "https-proxy-agent": "^2.2.1", - "unzipper": "^0.9.3" + "is-running": "^2.0.0", + "ps-tree": "=1.1.1", + "sinon": "^1.17.6", + "temp-fs": "^0.9.9" } }, "buffer": { @@ -2561,6 +2528,12 @@ "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", "dev": true }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "dev": true + }, "buffer-fill": { "version": "1.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/buffer-fill/-/buffer-fill-1.0.0.tgz", @@ -2574,14 +2547,8 @@ }, "buffer-indexof": { "version": "1.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha1-Uvq8xqYG0aADAoAmSO9o9jnaJow=", - "dev": true - }, - "buffer-indexof-polyfill": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.1.tgz", - "integrity": "sha1-qfuAbOgUXVQoUQznLyeLs2OmOL8=", + "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", "dev": true }, "buffer-xor": { @@ -2590,12 +2557,6 @@ "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", "dev": true }, - "buffers": { - "version": "0.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/buffers/-/buffers-0.1.1.tgz", - "integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s=", - "dev": true - }, "builtin-modules": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.0.0.tgz", @@ -2622,8 +2583,8 @@ }, "cacache": { "version": "10.0.4", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cacache/-/cacache-10.0.4.tgz", - "integrity": "sha1-ZFI2eZnv+dQYiu/ZoU6dfGomNGA=", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", + "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", "dev": true, "requires": { "bluebird": "^3.5.1", @@ -2658,6 +2619,29 @@ "unset-value": "^1.0.0" } }, + "cacheable-request": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz", + "integrity": "sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=", + "dev": true, + "requires": { + "clone-response": "1.0.2", + "get-stream": "3.0.0", + "http-cache-semantics": "3.8.1", + "keyv": "3.0.0", + "lowercase-keys": "1.0.0", + "normalize-url": "2.0.1", + "responselike": "1.0.2" + }, + "dependencies": { + "lowercase-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", + "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=", + "dev": true + } + } + }, "callsite": { "version": "1.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/callsite/-/callsite-1.0.0.tgz", @@ -2723,13 +2707,16 @@ "underscore-contrib": "~0.3.0" } }, - "chainsaw": { - "version": "0.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/chainsaw/-/chainsaw-0.1.0.tgz", - "integrity": "sha1-XqtQsor+WAdNDVgpE4iCi15fvJg=", + "caw": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/caw/-/caw-2.0.1.tgz", + "integrity": "sha512-Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA==", "dev": true, "requires": { - "traverse": ">=0.3.0 <0.4" + "get-proxy": "^2.0.0", + "isurl": "^1.0.0-alpha5", + "tunnel-agent": "^0.6.0", + "url-to-options": "^1.0.1" } }, "chalk": { @@ -2809,14 +2796,14 @@ }, "chownr": { "version": "1.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/chownr/-/chownr-1.1.1.tgz", - "integrity": "sha1-VHJri4//TfBTxCGH6AH7RBLfFJQ=", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", "dev": true }, "chrome-trace-event": { "version": "1.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz", - "integrity": "sha1-Rakb0sIMlBHwljtarrmhuV4JzEg=", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz", + "integrity": "sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A==", "dev": true, "requires": { "tslib": "^1.9.0" @@ -2830,8 +2817,8 @@ }, "cipher-base": { "version": "1.0.4", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha1-h2Dk7MJy9MNjUy+SbYdKriwTl94=", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "dev": true, "requires": { "inherits": "^2.0.1", @@ -2840,8 +2827,8 @@ }, "circular-dependency-plugin": { "version": "5.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/circular-dependency-plugin/-/circular-dependency-plugin-5.0.2.tgz", - "integrity": "sha1-2haMCzfntDVj+5+RLBwAfCEzie8=", + "resolved": "https://registry.npmjs.org/circular-dependency-plugin/-/circular-dependency-plugin-5.0.2.tgz", + "integrity": "sha512-oC7/DVAyfcY3UWKm0sN/oVoDedQDQiw/vIiAnuTWTpE5s0zWf7l3WY417Xw/Fbi/QbAjctAkxgMiS9P0s3zkmA==", "dev": true }, "circular-json": { @@ -2936,8 +2923,8 @@ }, "clone-deep": { "version": "2.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/clone-deep/-/clone-deep-2.0.2.tgz", - "integrity": "sha1-ANs6Hhc2VnMNEYjD1qztbX6pdxM=", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-2.0.2.tgz", + "integrity": "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==", "dev": true, "requires": { "for-own": "^1.0.0", @@ -2956,6 +2943,15 @@ "is-supported-regexp-flag": "^1.0.0" } }, + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dev": true, + "requires": { + "mimic-response": "^1.0.0" + } + }, "clone-stats": { "version": "0.0.1", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/clone-stats/-/clone-stats-0.0.1.tgz", @@ -2991,9 +2987,9 @@ }, "dependencies": { "@types/q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.1.tgz", - "integrity": "sha512-eqz8c/0kwNi/OEHQfvIuJVLTst3in0e7uTKeuY+WL/zfKn0xVujOTp42bS/vUUokhK5P2BppLd9JXMOMHcgbjA==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.2.tgz", + "integrity": "sha512-ce5d3q03Ex0sy4R14722Rmt6MT07Ua+k4FwDfdcToYJcMKNtRVQvJ6JCAPdAmAnbRb6CsX6aYb9m96NGod9uTw==", "dev": true } } @@ -3171,8 +3167,8 @@ }, "compressible": { "version": "2.0.17", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/compressible/-/compressible-2.0.17.tgz", - "integrity": "sha1-bowQihatWDhKl386SCyiC/8vOME=", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.17.tgz", + "integrity": "sha512-BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw==", "dev": true, "requires": { "mime-db": ">= 1.40.0 < 2" @@ -3180,16 +3176,16 @@ "dependencies": { "mime-db": { "version": "1.40.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha1-plBX6ZjbCQ9zKmj2wnbTh9QSbDI=", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", "dev": true } } }, "compression": { "version": "1.7.4", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/compression/-/compression-1.7.4.tgz", - "integrity": "sha1-lVI+/xcMpXwpoMpB5v4TH0Hlu48=", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", "dev": true, "requires": { "accepts": "~1.3.5", @@ -3289,8 +3285,8 @@ }, "connect-history-api-fallback": { "version": "1.6.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha1-izIIk1kwjRERFdgcrT/Oq4iPl7w=", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", "dev": true }, "connect-livereload": { @@ -3331,10 +3327,13 @@ "dev": true }, "content-disposition": { - "version": "0.5.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", - "dev": true + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } }, "content-type": { "version": "1.0.4", @@ -3394,6 +3393,22 @@ "q": "^1.5.1" } }, + "conventional-changelog-config-spec": { + "version": "1.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-changelog-config-spec/-/conventional-changelog-config-spec-1.0.0.tgz", + "integrity": "sha1-/Be/Cre38qawyRvMwb1VgZ0+554=", + "dev": true + }, + "conventional-changelog-conventionalcommits": { + "version": "3.0.2", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-3.0.2.tgz", + "integrity": "sha1-OjgKFOzW9QVtptRg4w3WwMnxrr4=", + "dev": true, + "requires": { + "compare-func": "^1.3.1", + "q": "^1.5.1" + } + }, "conventional-changelog-core": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-3.1.5.tgz", @@ -3823,49 +3838,253 @@ } } }, - "convert-source-map": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", - "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookie": { - "version": "0.3.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha1-kilzmMrjSTf8r9bsgTnBgFHwteA=", + "conventional-recommended-bump": { + "version": "5.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-recommended-bump/-/conventional-recommended-bump-5.0.0.tgz", + "integrity": "sha1-AZ1FofPSzBSibputGZJAbe1bqiM=", "dev": true, "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true - }, - "copy-props": { - "version": "2.0.4", + "concat-stream": "^2.0.0", + "conventional-changelog-preset-loader": "^2.1.1", + "conventional-commits-filter": "^2.0.2", + "conventional-commits-parser": "^3.0.2", + "git-raw-commits": "2.0.0", + "git-semver-tags": "^2.0.2", + "meow": "^4.0.0", + "q": "^1.5.1" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, + "concat-stream": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha1-QUz1r3kKSMYKub5FJ9VtXkETPLE=", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } + }, + "conventional-changelog-preset-loader": { + "version": "2.1.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.1.1.tgz", + "integrity": "sha1-ZbtgBUfFbVYn0jE1FUvNmpB2aMQ=", + "dev": true + }, + "conventional-commits-filter": { + "version": "2.0.2", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-commits-filter/-/conventional-commits-filter-2.0.2.tgz", + "integrity": "sha1-8SL4n7zVu4Hiry/KwCVNBi0QOcE=", + "dev": true, + "requires": { + "lodash.ismatch": "^4.4.0", + "modify-values": "^1.0.0" + } + }, + "conventional-commits-parser": { + "version": "3.0.2", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-commits-parser/-/conventional-commits-parser-3.0.2.tgz", + "integrity": "sha1-EpVZDdGV9k9T1vjrfEERS7mmB0I=", + "dev": true, + "requires": { + "JSONStream": "^1.0.4", + "is-text-path": "^1.0.0", + "lodash": "^4.2.1", + "meow": "^4.0.0", + "split2": "^2.0.0", + "through2": "^3.0.0", + "trim-off-newlines": "^1.0.0" + } + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "meow": { + "version": "4.0.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/meow/-/meow-4.0.1.tgz", + "integrity": "sha1-1IWY9vSxRy81v2MXqVlFrONH+XU=", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist": "^1.1.3", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "readable-stream": { + "version": "3.3.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/readable-stream/-/readable-stream-3.3.0.tgz", + "integrity": "sha1-y4ARqtAC63F78EApH+uoVpyYb7k=", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "through2": { + "version": "3.0.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/through2/-/through2-3.0.1.tgz", + "integrity": "sha1-OSducTwzAu3544jdnIEt07glvVo=", + "dev": true, + "requires": { + "readable-stream": "2 || 3" + } + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + } + } + }, + "convert-source-map": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", + "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookie": { + "version": "0.3.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "copy-props": { + "version": "2.0.4", "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.4.tgz", "integrity": "sha512-7cjuUME+p+S3HZlbllgsn2CDwS+5eCCX16qBgNC4jgSTf49qR1VKy/Zhl400m0IQXl/bPGEVqncgUUMjrr4s8A==", "dev": true, @@ -3876,8 +4095,8 @@ }, "copy-webpack-plugin": { "version": "4.6.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/copy-webpack-plugin/-/copy-webpack-plugin-4.6.0.tgz", - "integrity": "sha1-5/QN2KaEd9QF3Rt6hUquMksVi64=", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.6.0.tgz", + "integrity": "sha512-Y+SQCF+0NoWQryez2zXn5J5knmr9z/9qSQt7fbL78u83rxmigOy8X5+BFn8CFSuX+nKT8gpYwJX68ekqtQt6ZA==", "dev": true, "requires": { "cacache": "^10.0.4", @@ -4053,8 +4272,8 @@ }, "cosmiconfig": { "version": "4.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cosmiconfig/-/cosmiconfig-4.0.0.tgz", - "integrity": "sha1-dgORVJWAu9LfHlYrwXexPCkJctw=", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-4.0.0.tgz", + "integrity": "sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==", "dev": true, "requires": { "is-directory": "^0.3.1", @@ -4077,8 +4296,8 @@ }, "create-ecdh": { "version": "4.0.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha1-yREbbzMEXEaX8UR4f5JUzcd8Rf8=", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", "dev": true, "requires": { "bn.js": "^4.1.0", @@ -4096,8 +4315,8 @@ }, "create-hash": { "version": "1.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha1-iJB4rxGmN1a8+1m9IhmWvjqe8ZY=", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dev": true, "requires": { "cipher-base": "^1.0.1", @@ -4109,8 +4328,8 @@ }, "create-hmac": { "version": "1.1.7", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha1-aRcMeLOrlXFHsriwRXLkfq0iQ/8=", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "dev": true, "requires": { "cipher-base": "^1.0.3", @@ -4158,8 +4377,8 @@ }, "crypto-browserify": { "version": "3.12.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha1-OWz58xN/A+S45TLFj2mCVOAPgOw=", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "dev": true, "requires": { "browserify-cipher": "^1.0.0", @@ -4241,9 +4460,9 @@ "dev": true }, "css-what": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.2.tgz", - "integrity": "sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", "dev": true }, "cssauron": { @@ -4422,64 +4641,211 @@ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", "dev": true }, - "deep-equal": { - "version": "1.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "deepmerge": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", - "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", - "dev": true - }, - "default-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz", - "integrity": "sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ==", + "decompress": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.0.tgz", + "integrity": "sha1-eu3YVCflqS2s/lVnSnxQXpbQH50=", "dev": true, "requires": { - "kind-of": "^5.0.2" + "decompress-tar": "^4.0.0", + "decompress-tarbz2": "^4.0.0", + "decompress-targz": "^4.0.0", + "decompress-unzip": "^4.0.1", + "graceful-fs": "^4.1.10", + "make-dir": "^1.0.0", + "pify": "^2.3.0", + "strip-dirs": "^2.0.0" }, "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true } } }, - "default-gateway": { - "version": "2.7.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/default-gateway/-/default-gateway-2.7.2.tgz", - "integrity": "sha1-t+8znl4CSwRUZ69APVA0jbRkLQ8=", + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", "dev": true, "requires": { - "execa": "^0.10.0", - "ip-regex": "^2.1.0" + "mimic-response": "^1.0.0" } }, - "default-require-extensions": { - "version": "2.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/default-require-extensions/-/default-require-extensions-2.0.0.tgz", - "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", + "decompress-tar": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", + "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", "dev": true, "requires": { - "strip-bom": "^3.0.0" + "file-type": "^5.2.0", + "is-stream": "^1.1.0", + "tar-stream": "^1.5.2" + }, + "dependencies": { + "file-type": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", + "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=", + "dev": true + } + } + }, + "decompress-tarbz2": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", + "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", + "dev": true, + "requires": { + "decompress-tar": "^4.1.0", + "file-type": "^6.1.0", + "is-stream": "^1.1.0", + "seek-bzip": "^1.0.5", + "unbzip2-stream": "^1.0.9" + }, + "dependencies": { + "file-type": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", + "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==", + "dev": true + } + } + }, + "decompress-targz": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", + "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", + "dev": true, + "requires": { + "decompress-tar": "^4.1.1", + "file-type": "^5.2.0", + "is-stream": "^1.1.0" + }, + "dependencies": { + "file-type": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", + "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=", + "dev": true + } + } + }, + "decompress-unzip": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", + "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", + "dev": true, + "requires": { + "file-type": "^3.8.0", + "get-stream": "^2.2.0", + "pify": "^2.3.0", + "yauzl": "^2.4.2" + }, + "dependencies": { + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, + "file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=", + "dev": true + }, + "get-stream": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", + "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", + "dev": true, + "requires": { + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + } + } + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "deepmerge": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", + "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", + "dev": true + }, + "default-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz", + "integrity": "sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ==", + "dev": true, + "requires": { + "kind-of": "^5.0.2" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "default-gateway": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-2.7.2.tgz", + "integrity": "sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ==", + "dev": true, + "requires": { + "execa": "^0.10.0", + "ip-regex": "^2.1.0" + } + }, + "default-require-extensions": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/default-require-extensions/-/default-require-extensions-2.0.0.tgz", + "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", + "dev": true, + "requires": { + "strip-bom": "^3.0.0" }, "dependencies": { "strip-bom": { @@ -4655,10 +5021,16 @@ "repeating": "^2.0.0" } }, + "detect-newline": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/detect-newline/-/detect-newline-3.0.0.tgz", + "integrity": "sha1-iuR3wInlGHLCZFMc1lR3GcC4ay8=", + "dev": true + }, "detect-node": { "version": "2.0.4", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/detect-node/-/detect-node-2.0.4.tgz", - "integrity": "sha1-AU7o+PZpxcWAI9pkuBecCDooxGw=", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", "dev": true }, "dgeni": { @@ -4781,8 +5153,8 @@ }, "diffie-hellman": { "version": "5.0.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha1-QOjumPVaIUlgcUaSHGPhrl89KHU=", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", "dev": true, "requires": { "bn.js": "^4.1.0", @@ -4792,8 +5164,8 @@ }, "dir-glob": { "version": "2.2.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/dir-glob/-/dir-glob-2.2.2.tgz", - "integrity": "sha1-+gnwaUFTyJGLGLoN6vrpR2n8UMQ=", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", + "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", "dev": true, "requires": { "path-type": "^3.0.0" @@ -4807,8 +5179,8 @@ }, "dns-packet": { "version": "1.3.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/dns-packet/-/dns-packet-1.3.1.tgz", - "integrity": "sha1-EqpCaYEHW+UAuRDu3NC0fdfe2lo=", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz", + "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", "dev": true, "requires": { "ip": "^1.1.0", @@ -4856,8 +5228,8 @@ }, "domain-browser": { "version": "1.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha1-PTH1AZGmdJ3RN1p/Ui6CPULlTto=", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", "dev": true }, "domelementtype": { @@ -4912,6 +5284,128 @@ "is-obj": "^1.0.0" } }, + "dotgitignore": { + "version": "2.1.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/dotgitignore/-/dotgitignore-2.1.0.tgz", + "integrity": "sha1-pLFaTk7zzzg1mKrx36SgS8wIm3s=", + "dev": true, + "requires": { + "find-up": "^3.0.0", + "minimatch": "^3.0.4" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha1-QXyZQeYCepq8ulCS3SkE4lW1+8I=", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", + "dev": true + } + } + }, + "download": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/download/-/download-7.0.0.tgz", + "integrity": "sha512-0Fe/CAjKycx12IG9We9gYlLP03BEcWTpttg7P5mwfOiQTg584kpuHqP7F61RkUJM+mfEdEU9TJonm0PJp5rQLw==", + "dev": true, + "requires": { + "caw": "^2.0.1", + "content-disposition": "^0.5.2", + "decompress": "^4.2.0", + "ext-name": "^5.0.0", + "file-type": "^7.7.1", + "filenamify": "^2.0.0", + "get-stream": "^3.0.0", + "got": "^8.3.1", + "make-dir": "^1.2.0", + "p-event": "^1.3.0", + "pify": "^3.0.0" + }, + "dependencies": { + "got": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz", + "integrity": "sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==", + "dev": true, + "requires": { + "@sindresorhus/is": "^0.7.0", + "cacheable-request": "^2.1.1", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "into-stream": "^3.1.0", + "is-retry-allowed": "^1.1.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "mimic-response": "^1.0.0", + "p-cancelable": "^0.4.0", + "p-timeout": "^2.0.1", + "pify": "^3.0.0", + "safe-buffer": "^5.1.1", + "timed-out": "^4.0.1", + "url-parse-lax": "^3.0.0", + "url-to-options": "^1.0.1" + } + }, + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "dev": true + }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dev": true, + "requires": { + "prepend-http": "^2.0.0" + } + } + } + }, + "duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", + "dev": true + }, "duplexer2": { "version": "0.0.2", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/duplexer2/-/duplexer2-0.0.2.tgz", @@ -5027,8 +5521,8 @@ }, "elliptic": { "version": "6.4.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/elliptic/-/elliptic-6.4.1.tgz", - "integrity": "sha1-wtC3d2kRuGcixjLDwGxg8vgZk5o=", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", "dev": true, "requires": { "bn.js": "^4.4.0", @@ -5040,6 +5534,12 @@ "minimalistic-crypto-utils": "^1.0.0" } }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=", + "dev": true + }, "emojis-list": { "version": "2.1.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/emojis-list/-/emojis-list-2.1.0.tgz", @@ -5171,8 +5671,8 @@ }, "enhanced-resolve": { "version": "4.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", - "integrity": "sha1-Qcfgv9/nSsH/4eV61qXGyfN0Kn8=", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", + "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", "dev": true, "requires": { "graceful-fs": "^4.1.2", @@ -5314,6 +5814,37 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "escodegen": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", + "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", + "dev": true, + "requires": { + "esprima": "^2.7.1", + "estraverse": "^1.9.1", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.2.0" + }, + "dependencies": { + "estraverse": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", + "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=", + "dev": true + }, + "source-map": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", + "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", + "dev": true, + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, "eslint-plugin-prettier": { "version": "2.7.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/eslint-plugin-prettier/-/eslint-plugin-prettier-2.7.0.tgz", @@ -5326,18 +5857,24 @@ }, "eslint-scope": { "version": "4.0.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha1-ygODMxD2iJoyZHgaqC5j65z+eEg=", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", "dev": true, "requires": { "esrecurse": "^4.1.0", "estraverse": "^4.1.1" } }, + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true + }, "esrecurse": { "version": "4.2.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha1-AHo7n9vCs7uH5IeeoZyS/b05Qs8=", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", "dev": true, "requires": { "estraverse": "^4.1.0" @@ -5367,6 +5904,38 @@ "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", "dev": true }, + "event-stream": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz", + "integrity": "sha1-SrTJoPWlTbkzi0w02Gv86PSzVXE=", + "dev": true, + "requires": { + "duplexer": "~0.1.1", + "from": "~0", + "map-stream": "~0.1.0", + "pause-stream": "0.0.11", + "split": "0.3", + "stream-combiner": "~0.0.4", + "through": "~2.3.1" + }, + "dependencies": { + "map-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz", + "integrity": "sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ=", + "dev": true + }, + "split": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz", + "integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=", + "dev": true, + "requires": { + "through": "2" + } + } + } + }, "eventemitter3": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz", @@ -5375,14 +5944,14 @@ }, "events": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/events/-/events-3.0.0.tgz", - "integrity": "sha1-mgoN+vYok9krh1uPJpjKQRSXPog=", + "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", + "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", "dev": true }, "eventsource": { "version": "1.0.7", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/eventsource/-/eventsource-1.0.7.tgz", - "integrity": "sha1-j7xyyT/NNAiAkLwKTmT0tc7m2NA=", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", + "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", "dev": true, "requires": { "original": "^1.0.0" @@ -5390,8 +5959,8 @@ }, "evp_bytestokey": { "version": "1.0.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha1-f8vbGY3HGVlDLv4ThCaE4FJaywI=", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "dev": true, "requires": { "md5.js": "^1.3.4", @@ -5400,8 +5969,8 @@ }, "execa": { "version": "0.10.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/execa/-/execa-0.10.0.tgz", - "integrity": "sha1-/0Vqj1P5D47MxxqW0Rvfx/CCy1A=", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", + "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", "dev": true, "requires": { "cross-spawn": "^6.0.0", @@ -5415,8 +5984,8 @@ "dependencies": { "cross-spawn": { "version": "6.0.5", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha1-Sl7Hxk364iw6FBJNus3uhG2Ay8Q=", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "dev": true, "requires": { "nice-try": "^1.0.4", @@ -5586,62 +6155,255 @@ } }, "express": { - "version": "4.16.4", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/express/-/express-4.16.4.tgz", - "integrity": "sha1-/d72GSYQniTFFeqX/S8b2/Yt8S4=", + "version": "4.17.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.0.tgz", + "integrity": "sha512-1Z7/t3Z5ZnBG252gKUPyItc4xdeaA0X934ca2ewckAsVsw9EG71i++ZHZPYnus8g/s5Bty8IMpSVEuRkmwwPRQ==", "dev": true, "requires": { - "accepts": "~1.3.5", + "accepts": "~1.3.7", "array-flatten": "1.1.1", - "body-parser": "1.18.3", - "content-disposition": "0.5.2", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", "content-type": "~1.0.4", - "cookie": "0.3.1", + "cookie": "0.4.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "~1.1.2", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.1.1", + "finalhandler": "~1.1.2", "fresh": "0.5.2", "merge-descriptors": "1.0.1", "methods": "~1.1.2", "on-finished": "~2.3.0", - "parseurl": "~1.3.2", + "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.4", - "qs": "6.5.2", - "range-parser": "~1.2.0", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", "safe-buffer": "5.1.2", - "send": "0.16.2", - "serve-static": "1.13.2", - "setprototypeof": "1.1.0", - "statuses": "~1.4.0", - "type-is": "~1.6.16", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" }, "dependencies": { + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dev": true, + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, "array-flatten": { "version": "1.1.1", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/array-flatten/-/array-flatten-1.1.1.tgz", "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, + }, + "body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "dev": true, + "requires": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + } + }, + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true + }, + "cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "dev": true + }, + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", + "dev": true + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "dev": true, + "requires": { + "mime-db": "1.40.0" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "dev": true + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true + }, + "raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "dev": true, + "requires": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + } + }, + "serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "dev": true, + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + } + }, + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + } + } + }, + "ext-list": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz", + "integrity": "sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==", + "dev": true, + "requires": { + "mime-db": "^1.28.0" + } + }, + "ext-name": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ext-name/-/ext-name-5.0.0.tgz", + "integrity": "sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==", + "dev": true, + "requires": { + "ext-list": "^2.0.0", + "sort-keys-length": "^1.0.0" + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, "requires": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" @@ -5843,8 +6605,8 @@ }, "figgy-pudding": { "version": "3.5.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/figgy-pudding/-/figgy-pudding-3.5.1.tgz", - "integrity": "sha1-hiRwESkBxyeg5JWoB0S9W6odZ5A=", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", + "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", "dev": true }, "figures": { @@ -5858,20 +6620,43 @@ }, "file-loader": { "version": "3.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/file-loader/-/file-loader-3.0.1.tgz", - "integrity": "sha1-+OC6C1mZGLUa3+RdZtHnca1WD6o=", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-3.0.1.tgz", + "integrity": "sha512-4sNIOXgtH/9WZq4NvlfU3Opn5ynUsqBwSLyM+I7UOwdGigTBYfVVQEwe/msZNX/j4pCJTIM14Fsw66Svo1oVrw==", "dev": true, "requires": { "loader-utils": "^1.0.2", "schema-utils": "^1.0.0" } }, + "file-type": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-7.7.1.tgz", + "integrity": "sha512-bTrKkzzZI6wH+NXhyD3SOXtb2zXTw2SbwI2RxUlRcXVsnN7jNL5hJzVQLYv7FOQhxFkK4XWdAflEaWFpaLLWpQ==", + "dev": true + }, "filename-regex": { "version": "2.0.1", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/filename-regex/-/filename-regex-2.0.1.tgz", "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", "dev": true }, + "filename-reserved-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz", + "integrity": "sha1-q/c9+rc10EVECr/qLZHzieu/oik=", + "dev": true + }, + "filenamify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-2.1.0.tgz", + "integrity": "sha512-ICw7NTT6RsDp2rnYKVd8Fu4cr6ITzGy3+u4vUujPkabyaz+03F24NWEX7fs5fp+kBonlaqPH8fAO2NM+SXt/JA==", + "dev": true, + "requires": { + "filename-reserved-regex": "^2.0.0", + "strip-outer": "^1.0.0", + "trim-repeated": "^1.0.0" + } + }, "fileset": { "version": "2.0.3", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/fileset/-/fileset-2.0.3.tgz", @@ -5906,18 +6691,32 @@ } }, "finalhandler": { - "version": "1.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/finalhandler/-/finalhandler-1.1.1.tgz", - "integrity": "sha1-7r9O2EAHnIP0JJA4ydcDAIMBsQU=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "dev": true, "requires": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "statuses": "~1.4.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", "unpipe": "~1.0.0" + }, + "dependencies": { + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true + } } }, "find-cache-dir": { @@ -6008,8 +6807,8 @@ }, "flush-write-stream": { "version": "1.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha1-jdfYc6G6vCB9lOrQwuDkQnbr8ug=", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", "dev": true, "requires": { "inherits": "^2.0.3", @@ -6079,6 +6878,15 @@ "mime-types": "^2.1.12" } }, + "formatio": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/formatio/-/formatio-1.1.1.tgz", + "integrity": "sha1-XtPM1jZVEJc4NGXZlhmRAOhhYek=", + "dev": true, + "requires": { + "samsam": "~1.1" + } + }, "forwarded": { "version": "0.1.2", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/forwarded/-/forwarded-0.1.2.tgz", @@ -6100,6 +6908,12 @@ "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", "dev": true }, + "from": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", + "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=", + "dev": true + }, "from2": { "version": "2.3.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/from2/-/from2-2.3.0.tgz", @@ -6119,6 +6933,12 @@ "null-check": "^1.0.0" } }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true + }, "fs-extra": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", @@ -6131,9 +6951,9 @@ } }, "fs-minipass": { - "version": "1.2.5", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/fs-minipass/-/fs-minipass-1.2.5.tgz", - "integrity": "sha1-BsJ3IYRU7CiN93raVKA7hwKqy50=", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.6.tgz", + "integrity": "sha512-crhvyXcMejjv3Z5d2Fa9sf5xLYVCF5O1c71QxbVnbLsmYMBEvDAftewesN/HhY03YRoA7zOMxjNGrF5svGaaeQ==", "dev": true, "requires": { "minipass": "^2.2.1" @@ -6169,24 +6989,28 @@ "dependencies": { "abbrev": { "version": "1.1.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "dev": true, "optional": true }, "ansi-regex": { "version": "2.1.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", "dev": true }, "aproba": { "version": "1.2.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", "dev": true, "optional": true }, "are-we-there-yet": { "version": "1.1.5", - "bundled": true, + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", "dev": true, "optional": true, "requires": { @@ -6196,12 +7020,14 @@ }, "balanced-match": { "version": "1.0.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", "dev": true }, "brace-expansion": { "version": "1.1.11", - "bundled": true, + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "requires": { "balanced-match": "^1.0.0", @@ -6210,34 +7036,40 @@ }, "chownr": { "version": "1.1.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", "dev": true, "optional": true }, "code-point-at": { "version": "1.1.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", "dev": true }, "concat-map": { "version": "0.0.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, "console-control-strings": { "version": "1.1.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", "dev": true }, "core-util-is": { "version": "1.0.2", - "bundled": true, + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", "dev": true, "optional": true }, "debug": { "version": "4.1.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "optional": true, "requires": { @@ -6246,25 +7078,29 @@ }, "deep-extend": { "version": "0.6.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "dev": true, "optional": true }, "delegates": { "version": "1.0.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", "dev": true, "optional": true }, "detect-libc": { "version": "1.0.3", - "bundled": true, + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", "dev": true, "optional": true }, "fs-minipass": { "version": "1.2.5", - "bundled": true, + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", + "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", "dev": true, "optional": true, "requires": { @@ -6273,13 +7109,15 @@ }, "fs.realpath": { "version": "1.0.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true, "optional": true }, "gauge": { "version": "2.7.4", - "bundled": true, + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "dev": true, "optional": true, "requires": { @@ -6295,7 +7133,8 @@ }, "glob": { "version": "7.1.3", - "bundled": true, + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "dev": true, "optional": true, "requires": { @@ -6309,13 +7148,15 @@ }, "has-unicode": { "version": "2.0.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", "dev": true, "optional": true }, "iconv-lite": { "version": "0.4.24", - "bundled": true, + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, "optional": true, "requires": { @@ -6324,7 +7165,8 @@ }, "ignore-walk": { "version": "3.0.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", + "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", "dev": true, "optional": true, "requires": { @@ -6333,7 +7175,8 @@ }, "inflight": { "version": "1.0.6", - "bundled": true, + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "optional": true, "requires": { @@ -6343,18 +7186,21 @@ }, "inherits": { "version": "2.0.3", - "bundled": true, + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", "dev": true }, "ini": { "version": "1.3.5", - "bundled": true, + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", "dev": true, "optional": true }, "is-fullwidth-code-point": { "version": "1.0.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { "number-is-nan": "^1.0.0" @@ -6362,13 +7208,15 @@ }, "isarray": { "version": "1.0.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", "dev": true, "optional": true }, "minimatch": { "version": "3.0.4", - "bundled": true, + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { "brace-expansion": "^1.1.7" @@ -6376,12 +7224,14 @@ }, "minimist": { "version": "0.0.8", - "bundled": true, + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, "minipass": { "version": "2.3.5", - "bundled": true, + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", + "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", "dev": true, "requires": { "safe-buffer": "^5.1.2", @@ -6390,7 +7240,8 @@ }, "minizlib": { "version": "1.2.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", "dev": true, "optional": true, "requires": { @@ -6399,7 +7250,8 @@ }, "mkdirp": { "version": "0.5.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { "minimist": "0.0.8" @@ -6407,13 +7259,15 @@ }, "ms": { "version": "2.1.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true, "optional": true }, "needle": { "version": "2.3.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/needle/-/needle-2.3.0.tgz", + "integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==", "dev": true, "optional": true, "requires": { @@ -6424,7 +7278,8 @@ }, "node-pre-gyp": { "version": "0.12.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz", + "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", "dev": true, "optional": true, "requires": { @@ -6442,7 +7297,8 @@ }, "nopt": { "version": "4.0.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", + "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", "dev": true, "optional": true, "requires": { @@ -6452,13 +7308,15 @@ }, "npm-bundled": { "version": "1.0.6", - "bundled": true, + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", + "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", "dev": true, "optional": true }, "npm-packlist": { "version": "1.4.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.1.tgz", + "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", "dev": true, "optional": true, "requires": { @@ -6468,7 +7326,8 @@ }, "npmlog": { "version": "4.1.2", - "bundled": true, + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", "dev": true, "optional": true, "requires": { @@ -6480,18 +7339,21 @@ }, "number-is-nan": { "version": "1.0.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", "dev": true }, "object-assign": { "version": "4.1.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "dev": true, "optional": true }, "once": { "version": "1.4.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { "wrappy": "1" @@ -6499,19 +7361,22 @@ }, "os-homedir": { "version": "1.0.2", - "bundled": true, + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", "dev": true, "optional": true }, "os-tmpdir": { "version": "1.0.2", - "bundled": true, + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "dev": true, "optional": true }, "osenv": { "version": "0.1.5", - "bundled": true, + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", "dev": true, "optional": true, "requires": { @@ -6521,19 +7386,22 @@ }, "path-is-absolute": { "version": "1.0.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true, "optional": true }, "process-nextick-args": { "version": "2.0.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", "dev": true, "optional": true }, "rc": { "version": "1.2.8", - "bundled": true, + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "dev": true, "optional": true, "requires": { @@ -6545,7 +7413,8 @@ "dependencies": { "minimist": { "version": "1.2.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true, "optional": true } @@ -6553,7 +7422,8 @@ }, "readable-stream": { "version": "2.3.6", - "bundled": true, + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "dev": true, "optional": true, "requires": { @@ -6568,7 +7438,8 @@ }, "rimraf": { "version": "2.6.3", - "bundled": true, + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", "dev": true, "optional": true, "requires": { @@ -6577,42 +7448,49 @@ }, "safe-buffer": { "version": "5.1.2", - "bundled": true, + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true }, "safer-buffer": { "version": "2.1.2", - "bundled": true, + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true, "optional": true }, "sax": { "version": "1.2.4", - "bundled": true, + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "dev": true, "optional": true }, "semver": { "version": "5.7.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", "dev": true, "optional": true }, "set-blocking": { "version": "2.0.0", - "bundled": true, + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", "dev": true, "optional": true }, "signal-exit": { "version": "3.0.2", - "bundled": true, + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", "dev": true, "optional": true }, "string-width": { "version": "1.0.2", - "bundled": true, + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { "code-point-at": "^1.0.0", @@ -6622,7 +7500,8 @@ }, "string_decoder": { "version": "1.1.1", - "bundled": true, + "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": { @@ -6631,7 +7510,8 @@ }, "strip-ansi": { "version": "3.0.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { "ansi-regex": "^2.0.0" @@ -6639,13 +7519,15 @@ }, "strip-json-comments": { "version": "2.0.1", - "bundled": true, + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "dev": true, "optional": true }, "tar": { "version": "4.4.8", - "bundled": true, + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.8.tgz", + "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", "dev": true, "optional": true, "requires": { @@ -6660,13 +7542,15 @@ }, "util-deprecate": { "version": "1.0.2", - "bundled": true, + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", "dev": true, "optional": true }, "wide-align": { "version": "1.1.3", - "bundled": true, + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", "dev": true, "optional": true, "requires": { @@ -6675,12 +7559,14 @@ }, "wrappy": { "version": "1.0.2", - "bundled": true, + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, "yallist": { "version": "3.0.3", - "bundled": true, + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", "dev": true } } @@ -6730,8 +7616,8 @@ }, "genfun": { "version": "5.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/genfun/-/genfun-5.0.0.tgz", - "integrity": "sha1-ndlxCgaQClxKW/V6yl2k5S/nZTc=", + "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", + "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==", "dev": true }, "get-caller-file": { @@ -6753,6 +7639,15 @@ "through2": "^2.0.0" } }, + "get-proxy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/get-proxy/-/get-proxy-2.1.0.tgz", + "integrity": "sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw==", + "dev": true, + "requires": { + "npm-conf": "^1.1.0" + } + }, "get-stdin": { "version": "4.0.1", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/get-stdin/-/get-stdin-4.0.1.tgz", @@ -7360,8 +8255,8 @@ }, "globals": { "version": "9.18.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/globals/-/globals-9.18.0.tgz", - "integrity": "sha1-qjiWs+abSH8X4x7SFD1pqOMMLYo=", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", "dev": true }, "globby": { @@ -7432,6 +8327,12 @@ "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", "dev": true }, + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", + "dev": true + }, "gulp": { "version": "3.9.1", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/gulp/-/gulp-3.9.1.tgz", @@ -8011,8 +8912,8 @@ }, "handle-thing": { "version": "2.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/handle-thing/-/handle-thing-2.0.0.tgz", - "integrity": "sha1-DgOWlf9QyT/CiFV9aW88HcZ3Z1Q=", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz", + "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==", "dev": true }, "handlebars": { @@ -8116,12 +9017,27 @@ "sparkles": "^1.0.0" } }, + "has-symbol-support-x": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", + "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", + "dev": true + }, "has-symbols": { "version": "1.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/has-symbols/-/has-symbols-1.0.0.tgz", "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", "dev": true }, + "has-to-string-tag-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", + "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", + "dev": true, + "requires": { + "has-symbol-support-x": "^1.4.1" + } + }, "has-unicode": { "version": "2.0.1", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/has-unicode/-/has-unicode-2.0.1.tgz", @@ -8172,8 +9088,8 @@ }, "hash.js": { "version": "1.1.7", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha1-C6vKU46NTuSg+JiNaIZlN6ADz0I=", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", "dev": true, "requires": { "inherits": "^2.0.3", @@ -8197,9 +9113,9 @@ } }, "highlight.js": { - "version": "9.14.2", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.14.2.tgz", - "integrity": "sha512-Nc6YNECYpxyJABGYJAyw7dBAYbXEuIzwzkqoJnwbc1nIpCiN+3ioYf0XrBnLiyyG0JLuJhpPtt2iTSbXiKLoyA==", + "version": "9.15.6", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.15.6.tgz", + "integrity": "sha512-zozTAWM1D6sozHo8kqhfYgsac+B+q0PmsjXeyDrYIHHcBN0zTVT66+s2GW1GZv7DbyaROdLXKdabwS/WqPyIdQ==", "dev": true }, "hmac-drbg": { @@ -8299,8 +9215,8 @@ }, "http-cache-semantics": { "version": "3.8.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha1-ObDhat2bYFvwqe89nar0hDtMrNI=", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", + "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", "dev": true }, "http-deceiver": { @@ -8340,8 +9256,8 @@ }, "http-proxy-agent": { "version": "2.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha1-5IIb7vWyFCogJr1zkm/lN2McVAU=", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", + "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", "dev": true, "requires": { "agent-base": "4", @@ -8350,8 +9266,8 @@ "dependencies": { "debug": { "version": "3.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/debug/-/debug-3.1.0.tgz", - "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "dev": true, "requires": { "ms": "2.0.0" @@ -8361,8 +9277,8 @@ }, "http-proxy-middleware": { "version": "0.18.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz", - "integrity": "sha1-CYfmu1pWBuWmkWjY+WeofxXdiqs=", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz", + "integrity": "sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q==", "dev": true, "requires": { "http-proxy": "^1.16.2", @@ -8432,8 +9348,8 @@ }, "ieee754": { "version": "1.1.13", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha1-7BaFWOlaoYH9h9N/VcMrvLZwi4Q=", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", "dev": true }, "iferr": { @@ -8444,14 +9360,14 @@ }, "ignore": { "version": "3.3.10", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha1-Cpf7h2mG6AgcYxFg+PnziRV/AEM=", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", "dev": true }, "ignore-walk": { "version": "3.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ignore-walk/-/ignore-walk-3.0.1.tgz", - "integrity": "sha1-qD5i59JyrA47VRqqgoMaGbafgvg=", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", + "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", "dev": true, "requires": { "minimatch": "^3.0.4" @@ -8502,8 +9418,8 @@ }, "import-local": { "version": "2.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/import-local/-/import-local-2.0.0.tgz", - "integrity": "sha1-VQcL44pZk88Y72236WH1vuXFoJ0=", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", "dev": true, "requires": { "pkg-dir": "^3.0.0", @@ -8512,8 +9428,8 @@ "dependencies": { "find-up": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { "locate-path": "^3.0.0" @@ -8521,8 +9437,8 @@ }, "locate-path": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { "p-locate": "^3.0.0", @@ -8531,8 +9447,8 @@ }, "p-limit": { "version": "2.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha1-QXyZQeYCepq8ulCS3SkE4lW1+8I=", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -8540,8 +9456,8 @@ }, "p-locate": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { "p-limit": "^2.0.0" @@ -8549,14 +9465,14 @@ }, "p-try": { "version": "2.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, "pkg-dir": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", "dev": true, "requires": { "find-up": "^3.0.0" @@ -8672,18 +9588,18 @@ } }, "strip-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.0.0.tgz", - "integrity": "sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "ansi-regex": "^4.0.0" + "ansi-regex": "^4.1.0" }, "dependencies": { "ansi-regex": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.0.0.tgz", - "integrity": "sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true } } @@ -8692,8 +9608,8 @@ }, "internal-ip": { "version": "3.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/internal-ip/-/internal-ip-3.0.1.tgz", - "integrity": "sha1-31yZh24dLrLqLXT1IOP2aaAOzic=", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-3.0.1.tgz", + "integrity": "sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q==", "dev": true, "requires": { "default-gateway": "^2.6.0", @@ -8706,10 +9622,28 @@ "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==", "dev": true }, + "into-stream": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", + "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", + "dev": true, + "requires": { + "from2": "^2.1.1", + "p-is-promise": "^1.1.0" + }, + "dependencies": { + "p-is-promise": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", + "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", + "dev": true + } + } + }, "invariant": { "version": "2.2.4", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha1-YQ88ksk1nOHbYW5TgAjSP/NRWOY=", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", "dev": true, "requires": { "loose-envify": "^1.0.0" @@ -8741,8 +9675,8 @@ }, "ipaddr.js": { "version": "1.9.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ipaddr.js/-/ipaddr.js-1.9.0.tgz", - "integrity": "sha1-N9905DCg5HVQ/lSi3v4w2KzZX2U=", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", + "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==", "dev": true }, "is-absolute": { @@ -8941,6 +9875,12 @@ "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", "dev": true }, + "is-natural-number": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", + "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=", + "dev": true + }, "is-npm": { "version": "1.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/is-npm/-/is-npm-1.0.0.tgz", @@ -8973,6 +9913,12 @@ "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", "dev": true }, + "is-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz", + "integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA=", + "dev": true + }, "is-path-cwd": { "version": "1.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/is-path-cwd/-/is-path-cwd-1.0.0.tgz", @@ -9066,6 +10012,12 @@ "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", "dev": true }, + "is-running": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-running/-/is-running-2.1.0.tgz", + "integrity": "sha1-MKc/9cw4VOT8JUkICen1q/jeCeA=", + "dev": true + }, "is-stream": { "version": "1.1.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/is-stream/-/is-stream-1.1.0.tgz", @@ -9176,86 +10128,181 @@ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", "dev": true }, - "istanbul-api": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-2.1.0.tgz", - "integrity": "sha512-+Ygg4t1StoiNlBGc6x0f8q/Bv26FbZqP/+jegzfNpU7Q8o+4ZRoJxJPhBkgE/UonpAjtxnE4zCZIyJX+MwLRMQ==", + "istanbul": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", + "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=", "dev": true, "requires": { - "async": "^2.6.1", - "compare-versions": "^3.2.1", - "fileset": "^2.0.3", - "istanbul-lib-coverage": "^2.0.3", - "istanbul-lib-hook": "^2.0.3", - "istanbul-lib-instrument": "^3.1.0", - "istanbul-lib-report": "^2.0.4", - "istanbul-lib-source-maps": "^3.0.2", - "istanbul-reports": "^2.1.0", - "js-yaml": "^3.12.0", - "make-dir": "^1.3.0", - "minimatch": "^3.0.4", - "once": "^1.4.0" + "abbrev": "1.0.x", + "async": "1.x", + "escodegen": "1.8.x", + "esprima": "2.7.x", + "glob": "^5.0.15", + "handlebars": "^4.0.1", + "js-yaml": "3.x", + "mkdirp": "0.5.x", + "nopt": "3.x", + "once": "1.x", + "resolve": "1.1.x", + "supports-color": "^3.1.0", + "which": "^1.1.1", + "wordwrap": "^1.0.0" }, "dependencies": { "async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", - "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", "dev": true, "requires": { - "lodash": "^4.17.10" + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-dKWuzRGCs4G+67VfW9pBFFz2Jpi4vSp/k7zBcJ888ofV5Mi1g5CUML5GvMvV6u9Cjybftu+E8Cgp+k0dI1E5lw==", + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", "dev": true }, - "istanbul-lib-instrument": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.1.0.tgz", - "integrity": "sha512-ooVllVGT38HIk8MxDj/OIHXSYvH+1tq/Vb38s8ixt9GoJadXska4WkGY+0wkmtYCZNYtaARniH/DixUGGLZ0uA==", + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", "dev": true, "requires": { - "@babel/generator": "^7.0.0", - "@babel/parser": "^7.0.0", - "@babel/template": "^7.0.0", - "@babel/traverse": "^7.0.0", - "@babel/types": "^7.0.0", - "istanbul-lib-coverage": "^2.0.3", - "semver": "^5.5.0" + "has-flag": "^1.0.0" } } } }, - "istanbul-instrumenter-loader": { - "version": "3.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/istanbul-instrumenter-loader/-/istanbul-instrumenter-loader-3.0.1.tgz", - "integrity": "sha1-mVe9WSUrNz+uXFK3tRiOb94qCUk=", + "istanbul-api": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-2.1.6.tgz", + "integrity": "sha512-x0Eicp6KsShG1k1rMgBAi/1GgY7kFGEBwQpw3PXGEmu+rBcBNhqU8g2DgY9mlepAsLPzrzrbqSgCGANnki4POA==", "dev": true, "requires": { - "convert-source-map": "^1.5.0", - "istanbul-lib-instrument": "^1.7.3", - "loader-utils": "^1.1.0", - "schema-utils": "^0.3.0" + "async": "^2.6.2", + "compare-versions": "^3.4.0", + "fileset": "^2.0.3", + "istanbul-lib-coverage": "^2.0.5", + "istanbul-lib-hook": "^2.0.7", + "istanbul-lib-instrument": "^3.3.0", + "istanbul-lib-report": "^2.0.8", + "istanbul-lib-source-maps": "^3.0.6", + "istanbul-reports": "^2.2.4", + "js-yaml": "^3.13.1", + "make-dir": "^2.1.0", + "minimatch": "^3.0.4", + "once": "^1.4.0" }, "dependencies": { - "ajv": { - "version": "5.5.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", "dev": true, "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" + "@babel/generator": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/template": "^7.4.0", + "@babel/traverse": "^7.4.3", + "@babel/types": "^7.4.0", + "istanbul-lib-coverage": "^2.0.5", + "semver": "^6.0.0" } }, - "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "semver": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.0.tgz", + "integrity": "sha512-kCqEOOHoBcFs/2Ccuk4Xarm/KiWRSLEX9CAZF8xkJ6ZPlIoTZ8V5f7J16vYLJqDbR7KrxTJpR2lqjIEm2Qx9cQ==", + "dev": true + } + } + }, + "istanbul-instrumenter-loader": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-instrumenter-loader/-/istanbul-instrumenter-loader-3.0.1.tgz", + "integrity": "sha512-a5SPObZgS0jB/ixaKSMdn6n/gXSrK2S6q/UfRJBT3e6gQmVjwZROTODQsYW5ZNwOu78hG62Y3fWlebaVOL0C+w==", + "dev": true, + "requires": { + "convert-source-map": "^1.5.0", + "istanbul-lib-instrument": "^1.7.3", + "loader-utils": "^1.1.0", + "schema-utils": "^0.3.0" + }, + "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" + } + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", "dev": true }, @@ -9278,14 +10325,14 @@ }, "istanbul-lib-coverage": { "version": "1.2.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz", - "integrity": "sha1-zPftzQoLubj3Kf7rCTBHD5r2ZPA=", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz", + "integrity": "sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ==", "dev": true }, "istanbul-lib-hook": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.3.tgz", - "integrity": "sha512-CLmEqwEhuCYtGcpNVJjLV1DQyVnIqavMLFHV/DP+np/g3qvdxu3gsPqYoJMXm15sN84xOlckFB3VNvRbf5yEgA==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", + "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", "dev": true, "requires": { "append-transform": "^1.0.0" @@ -9293,8 +10340,8 @@ }, "istanbul-lib-instrument": { "version": "1.10.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz", - "integrity": "sha1-H1XtEKw8R/K93dUweTUSZ1TQqco=", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz", + "integrity": "sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A==", "dev": true, "requires": { "babel-generator": "^6.18.0", @@ -9307,34 +10354,50 @@ } }, "istanbul-lib-report": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.4.tgz", - "integrity": "sha512-sOiLZLAWpA0+3b5w5/dq0cjm2rrNdAfHWaGhmn7XEFW6X++IV9Ohn+pnELAl9K3rfpaeBfbmH9JU5sejacdLeA==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", "dev": true, "requires": { - "istanbul-lib-coverage": "^2.0.3", - "make-dir": "^1.3.0", - "supports-color": "^6.0.0" + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "supports-color": "^6.1.0" }, "dependencies": { "istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-dKWuzRGCs4G+67VfW9pBFFz2Jpi4vSp/k7zBcJ888ofV5Mi1g5CUML5GvMvV6u9Cjybftu+E8Cgp+k0dI1E5lw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "dev": true + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true } } }, "istanbul-lib-source-maps": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.2.tgz", - "integrity": "sha512-JX4v0CiKTGp9fZPmoxpu9YEkPbEqCqBbO3403VabKjH+NRXo72HafD5UgnjTEqHL2SAjaZK1XDuDOkn6I5QVfQ==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", "dev": true, "requires": { "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.3", - "make-dir": "^1.3.0", - "rimraf": "^2.6.2", + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "rimraf": "^2.6.3", "source-map": "^0.6.1" }, "dependencies": { @@ -9348,17 +10411,33 @@ } }, "istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-dKWuzRGCs4G+67VfW9pBFFz2Jpi4vSp/k7zBcJ888ofV5Mi1g5CUML5GvMvV6u9Cjybftu+E8Cgp+k0dI1E5lw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", "dev": true }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, "ms": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -9368,12 +10447,42 @@ } }, "istanbul-reports": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.1.0.tgz", - "integrity": "sha512-azQdSX+dtTtkQEfqq20ICxWi6eOHXyHIgMFw1VOOVi8iIPWeCWRgCyFh/CsBKIhcgskMI8ExXmU7rjXTRCIJ+A==", + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.6.tgz", + "integrity": "sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==", + "dev": true, + "requires": { + "handlebars": "^4.1.2" + }, + "dependencies": { + "handlebars": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", + "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", + "dev": true, + "requires": { + "neo-async": "^2.6.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "isurl": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", + "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", "dev": true, "requires": { - "handlebars": "^4.0.11" + "has-to-string-tag-x": "^1.2.0", + "is-object": "^1.0.1" } }, "jasmine": { @@ -9579,6 +10688,12 @@ "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", "dev": true }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true + }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", @@ -9611,8 +10726,8 @@ }, "json5": { "version": "1.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/json5/-/json5-1.0.1.tgz", - "integrity": "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4=", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, "requires": { "minimist": "^1.2.0" @@ -9769,13 +10884,13 @@ } }, "karma-browserstack-launcher": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/karma-browserstack-launcher/-/karma-browserstack-launcher-1.4.0.tgz", - "integrity": "sha512-bUQK84U+euDfOUfEjcF4IareySMOBNRLrrl9q6cttIe8f011Ir6olLITTYMOJDcGY58wiFIdhPHSPd9Pi6+NfQ==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/karma-browserstack-launcher/-/karma-browserstack-launcher-1.5.1.tgz", + "integrity": "sha512-zt9Ukow5A9WZHZXCFVO/h5kRsAdaZYeMNJK9Uan8v42amQXt3B/DZVxl24NCcAIxufKjW13UWd9iJ9knG9OCYw==", "dev": true, "requires": { "browserstack": "~1.5.1", - "browserstacktunnel-wrapper": "~2.0.2", + "browserstack-local": "^1.3.7", "q": "~1.5.0" } }, @@ -9790,12 +10905,12 @@ } }, "karma-coverage-istanbul-reporter": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.0.4.tgz", - "integrity": "sha512-xJS7QSQIVU6VK9HuJ/ieE5yynxKhjCCkd96NLY/BX/HXsx0CskU9JJiMQbd4cHALiddMwI4OWh1IIzeWrsavJw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.0.5.tgz", + "integrity": "sha512-yPvAlKtY3y+rKKWbOo0CzBMVTvJEeMOgbMXuVv3yWvS8YtYKC98AU9vFF0mVBZ2RP1E9SgS90+PT6Kf14P3S4w==", "dev": true, "requires": { - "istanbul-api": "^2.0.5", + "istanbul-api": "^2.1.1", "minimatch": "^3.0.4" } }, @@ -9820,6 +10935,34 @@ "karma-jasmine": "^1.0.2" } }, + "karma-junit-reporter": { + "version": "1.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/karma-junit-reporter/-/karma-junit-reporter-1.2.0.tgz", + "integrity": "sha1-T5xAzt+xo5X4rvh2q/lhiZF8Y5Y=", + "dev": true, + "requires": { + "path-is-absolute": "^1.0.0", + "xmlbuilder": "8.2.2" + }, + "dependencies": { + "xmlbuilder": { + "version": "8.2.2", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/xmlbuilder/-/xmlbuilder-8.2.2.tgz", + "integrity": "sha1-aSSGc0ELS6QuGmE2VR0pIjNap3M=", + "dev": true + } + } + }, + "karma-parallel": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/karma-parallel/-/karma-parallel-0.3.1.tgz", + "integrity": "sha512-64jxNYamYi/9Y67h4+FfViSYhwDgod3rLuq+ZdZ0c3XeZFp/3q3v3HVkd8b5Czp3hCB+LLF8DIv4zlR4xFqbRw==", + "dev": true, + "requires": { + "istanbul": "^0.4.5", + "lodash": "^4.17.11" + } + }, "karma-sonarqube-reporter": { "version": "1.2.3", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/karma-sonarqube-reporter/-/karma-sonarqube-reporter-1.2.3.tgz", @@ -9874,8 +11017,8 @@ }, "karma-source-map-support": { "version": "1.3.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/karma-source-map-support/-/karma-source-map-support-1.3.0.tgz", - "integrity": "sha1-Nt1NjKFUtirOlWliNvrjfK8Kfd4=", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.3.0.tgz", + "integrity": "sha512-HcPqdAusNez/ywa+biN4EphGz62MmQyPggUsDfsHqa7tSe4jdsxgvTKuDfIazjL+IOxpVWyT7Pr4dhAV+sxX5Q==", "dev": true, "requires": { "source-map-support": "^0.5.5" @@ -9890,10 +11033,19 @@ "graceful-fs": "^4.1.2" } }, + "keyv": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", + "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", + "dev": true, + "requires": { + "json-buffer": "3.0.0" + } + }, "killable": { "version": "1.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/killable/-/killable-1.0.1.tgz", - "integrity": "sha1-TIzkQRh6Bhx0dPuHygjipjgZSJI=", + "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", + "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", "dev": true }, "kind-of": { @@ -9957,8 +11109,8 @@ }, "less-loader": { "version": "4.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/less-loader/-/less-loader-4.1.0.tgz", - "integrity": "sha1-LBNSxbCaT4QQFJAnT9UWdN5BNj4=", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-4.1.0.tgz", + "integrity": "sha512-KNTsgCE9tMOM70+ddxp9yyt9iHqgmSs0yTZc5XH5Wo+g80RWRIYNqE58QJKm/yMud5wZEvz50ugRDuzVIkyahg==", "dev": true, "requires": { "clone": "^2.1.1", @@ -9999,8 +11151,8 @@ }, "license-webpack-plugin": { "version": "2.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/license-webpack-plugin/-/license-webpack-plugin-2.1.0.tgz", - "integrity": "sha1-g6yqbonDxTFu/92Ay07Jxc2O/C8=", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-2.1.0.tgz", + "integrity": "sha512-vDiBeMWxjE9n6TabQ9J4FH8urFdsRK0Nvxn1cit9biCiR9aq1zBR0X2BlAkEiIG6qPamLeU0GzvIgLkrFc398A==", "dev": true, "requires": { "@types/webpack-sources": "^0.1.5", @@ -10038,12 +11190,6 @@ "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", "dev": true }, - "listenercount": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz", - "integrity": "sha1-hMinKrWcRyUyFIDJdeZQg0LnCTc=", - "dev": true - }, "livereload-js": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", @@ -10073,14 +11219,14 @@ }, "loader-runner": { "version": "2.4.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha1-7UcGa/5TTX6ExMe5mYwqdWB9k1c=", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", "dev": true }, "loader-utils": { "version": "1.2.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha1-H/XcaRHJ8KBiUxpMBLYJQGEIwsc=", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", "dev": true, "requires": { "big.js": "^5.2.2", @@ -10185,6 +11331,12 @@ "lodash._root": "^3.0.0" } }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true + }, "lodash.isarguments": { "version": "3.1.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", @@ -10197,6 +11349,12 @@ "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=", "dev": true }, + "lodash.ismatch": { + "version": "4.4.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz", + "integrity": "sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc=", + "dev": true + }, "lodash.keys": { "version": "3.1.2", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/lodash.keys/-/lodash.keys-3.1.2.tgz", @@ -10259,6 +11417,12 @@ "lodash.escape": "^3.0.0" } }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true + }, "log4js": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/log4js/-/log4js-3.0.6.tgz", @@ -10322,10 +11486,16 @@ "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=", "dev": true }, + "lolex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-1.3.2.tgz", + "integrity": "sha1-fD2mL/yzDw9agKJWbKJORdigHzE=", + "dev": true + }, "loose-envify": { "version": "1.4.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8=", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, "requires": { "js-tokens": "^3.0.0 || ^4.0.0" @@ -10398,8 +11568,8 @@ }, "make-fetch-happen": { "version": "4.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/make-fetch-happen/-/make-fetch-happen-4.0.1.tgz", - "integrity": "sha1-FBSXy4ePJDupMTbIPYq6EsIWwIM=", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-4.0.1.tgz", + "integrity": "sha512-7R5ivfy9ilRJ1EMKIOziwrns9fGeAD4bAha8EB7BIiBBLHm2KeTUGCrICFt2rbHfzheTLynv50GnNTK1zDTrcQ==", "dev": true, "requires": { "agentkeepalive": "^3.4.1", @@ -10417,8 +11587,8 @@ "dependencies": { "cacache": { "version": "11.3.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cacache/-/cacache-11.3.2.tgz", - "integrity": "sha1-LYHjCOPSWMo4Eltna5iyrJzmm/o=", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.2.tgz", + "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", "dev": true, "requires": { "bluebird": "^3.5.3", @@ -10439,8 +11609,8 @@ "dependencies": { "lru-cache": { "version": "5.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, "requires": { "yallist": "^3.0.2" @@ -10450,8 +11620,8 @@ }, "mississippi": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha1-6goykfl+C16HdrNj1fChLZTGcCI=", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", "dev": true, "requires": { "concat-stream": "^1.5.0", @@ -10468,8 +11638,8 @@ }, "pump": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pump/-/pump-3.0.0.tgz", - "integrity": "sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ=", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "requires": { "end-of-stream": "^1.1.0", @@ -10478,8 +11648,8 @@ }, "ssri": { "version": "6.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg=", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", "dev": true, "requires": { "figgy-pudding": "^3.5.1" @@ -10487,8 +11657,8 @@ }, "yallist": { "version": "3.0.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha1-tLBJ4xS+VF486AIjbWzSLNkcPek=", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", "dev": true } } @@ -10575,8 +11745,8 @@ }, "md5.js": { "version": "1.3.5", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha1-tdB7jjIW4+J81yjXL3DR5qNCAF8=", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dev": true, "requires": { "hash-base": "^3.0.0", @@ -10701,8 +11871,8 @@ }, "miller-rabin": { "version": "4.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha1-8IA1HIZbDcViqEYpZtqlNUPHik0=", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", "dev": true, "requires": { "bn.js": "^4.0.0", @@ -10713,8 +11883,7 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "optional": true + "dev": true }, "mime-db": { "version": "1.37.0", @@ -10737,10 +11906,16 @@ "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", "dev": true }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true + }, "mini-css-extract-plugin": { "version": "0.5.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/mini-css-extract-plugin/-/mini-css-extract-plugin-0.5.0.tgz", - "integrity": "sha1-rABZsCuWklFaY3EVsMyf7To1x7A=", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.5.0.tgz", + "integrity": "sha512-IuaLjruM0vMKhUUT51fQdQzBYTX49dLj8w68ALEAe2A4iYNpIC4eMac67mt3NzycvjOlf07/kYxJDc0RTl1Wqw==", "dev": true, "requires": { "loader-utils": "^1.1.0", @@ -10750,8 +11925,8 @@ }, "minimalistic-assert": { "version": "1.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha1-LhlN4ERibUoQ5/f7wAznPoPk1cc=", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", "dev": true }, "minimalistic-crypto-utils": { @@ -10785,8 +11960,8 @@ }, "minipass": { "version": "2.3.5", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/minipass/-/minipass-2.3.5.tgz", - "integrity": "sha1-ys6+SSAiSX9law8PUeJoKp7S2Eg=", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", + "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", "dev": true, "requires": { "safe-buffer": "^5.1.2", @@ -10795,16 +11970,16 @@ "dependencies": { "yallist": { "version": "3.0.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha1-tLBJ4xS+VF486AIjbWzSLNkcPek=", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", "dev": true } } }, "minizlib": { "version": "1.2.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/minizlib/-/minizlib-1.2.1.tgz", - "integrity": "sha1-3SfqYTYkPHyIBoToZyuzpF/ZthQ=", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", "dev": true, "requires": { "minipass": "^2.2.1" @@ -10812,8 +11987,8 @@ }, "mississippi": { "version": "2.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/mississippi/-/mississippi-2.0.0.tgz", - "integrity": "sha1-NEKlCPr8KFAEhv7qmUCWduTuWm8=", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", + "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", "dev": true, "requires": { "concat-stream": "^1.5.0", @@ -10911,8 +12086,8 @@ }, "multicast-dns": { "version": "6.2.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/multicast-dns/-/multicast-dns-6.2.3.tgz", - "integrity": "sha1-oOx72QVcQoL3kMPIL04o2zsxsik=", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", + "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", "dev": true, "requires": { "dns-packet": "^1.3.1", @@ -10984,9 +12159,9 @@ "dev": true }, "neo-async": { - "version": "2.6.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/neo-async/-/neo-async-2.6.0.tgz", - "integrity": "sha1-udFeTXHGdikIZUtRg+04t1M0CDU=", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", "dev": true }, "next-tick": { @@ -10995,6 +12170,15 @@ "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", "dev": true }, + "ng-bullet": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ng-bullet/-/ng-bullet-1.0.3.tgz", + "integrity": "sha512-qacsE/w/pLlBxebort1rkrE2B4Vc3idutcpe7tYiHVarz0V6Q5SN8E3d6NUp4UFBMOucpHlCpaASp7qEOsxM1Q==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, "ng-packagr": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-4.7.0.tgz", @@ -11141,9 +12325,9 @@ "integrity": "sha512-sgNZblVUsIYHaWIKUqHopX3+rDL3DsjH9nsQoCuD7aA4p7Oppmd7UXwyT8OYTmimfcoufiA0tiIcH41XCZW58w==" }, "ngx-perfect-scrollbar": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/ngx-perfect-scrollbar/-/ngx-perfect-scrollbar-7.2.0.tgz", - "integrity": "sha512-vPw4SeAIE7laPOXHzgpyCIMCsdafHHGPRGb2tADvCAU9s5h6Ogmg3eZmN0KV6uQoepnX2cYrZjM42WAlcwiL9Q==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/ngx-perfect-scrollbar/-/ngx-perfect-scrollbar-7.2.1.tgz", + "integrity": "sha512-2Dyzx2M3ihGSlcTNwb+o8XGJr4ukkeCMz9J6A0cXyL7eX1Tez6BnRqTcpKe9JWkVEdRVd8+WT0uZ2O0tMiRF3A==", "requires": { "perfect-scrollbar": "^1.4.0", "resize-observer-polyfill": "^1.5.0" @@ -11176,8 +12360,8 @@ }, "node-fetch-npm": { "version": "2.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz", - "integrity": "sha1-cljJBGGC3KNFtCCO2pGNrzNpf/c=", + "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz", + "integrity": "sha512-nJIxm1QmAj4v3nfCvEeCrYSoVwXyxLnaPBK5W1W5DGEJwjlKuC2VEUycGw5oxk+4zZahRrB84PUJJgEmhFTDFw==", "dev": true, "requires": { "encoding": "^0.1.11", @@ -11187,8 +12371,8 @@ }, "node-forge": { "version": "0.7.5", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/node-forge/-/node-forge-0.7.5.tgz", - "integrity": "sha1-bBUsNFzhHFL0ZcKr2VfoY5zWdN8=", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz", + "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==", "dev": true }, "node-gyp": { @@ -11227,8 +12411,8 @@ }, "node-libs-browser": { "version": "2.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/node-libs-browser/-/node-libs-browser-2.2.0.tgz", - "integrity": "sha1-xy9g2dRt4IqUDe27JfP/ovm7qnc=", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.0.tgz", + "integrity": "sha512-5MQunG/oyOaBdttrL40dA7bUfPORLRWMUJLQtMg7nluxUvk5XwnLdL9twQHFAjRx/y7mIMkLKT9++qPbbk6BZA==", "dev": true, "requires": { "assert": "^1.1.1", @@ -11264,8 +12448,8 @@ }, "util": { "version": "0.11.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/util/-/util-0.11.1.tgz", - "integrity": "sha1-MjZzNyDsZLsn9uJvQhqqLhtYjWE=", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", "dev": true, "requires": { "inherits": "2.0.3" @@ -11428,16 +12612,54 @@ "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", "dev": true }, + "normalize-url": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", + "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", + "dev": true, + "requires": { + "prepend-http": "^2.0.0", + "query-string": "^5.0.1", + "sort-keys": "^2.0.0" + }, + "dependencies": { + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "dev": true + }, + "sort-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", + "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "dev": true, + "requires": { + "is-plain-obj": "^1.0.0" + } + } + } + }, "npm-bundled": { "version": "1.0.6", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/npm-bundled/-/npm-bundled-1.0.6.tgz", - "integrity": "sha1-57qarc75YrthJI+RchzZMrP+a90=", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", + "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", "dev": true }, + "npm-conf": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz", + "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", + "dev": true, + "requires": { + "config-chain": "^1.1.11", + "pify": "^3.0.0" + } + }, "npm-package-arg": { "version": "6.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/npm-package-arg/-/npm-package-arg-6.1.0.tgz", - "integrity": "sha1-Fa4eJ1ilAn77TCUFVLhac323/ME=", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.0.tgz", + "integrity": "sha512-zYbhP2k9DbJhA0Z3HKUePUgdB1x7MfIfKssC+WLPFMKTBZKpZh5m13PgexJjCq6KW7j17r0jHWcCpxEqnnncSA==", "dev": true, "requires": { "hosted-git-info": "^2.6.0", @@ -11448,8 +12670,8 @@ }, "npm-packlist": { "version": "1.4.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/npm-packlist/-/npm-packlist-1.4.1.tgz", - "integrity": "sha1-GQZM35iNqA6jzuRVM4edkBkrv7w=", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.1.tgz", + "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", "dev": true, "requires": { "ignore-walk": "^3.0.1", @@ -11458,8 +12680,8 @@ }, "npm-pick-manifest": { "version": "2.2.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/npm-pick-manifest/-/npm-pick-manifest-2.2.3.tgz", - "integrity": "sha1-MhEdKpViY4uyyPK/J/fzCSyPrkA=", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-2.2.3.tgz", + "integrity": "sha512-+IluBC5K201+gRU85vFlUwX3PFShZAbAgDNp2ewJdWMVSppdo/Zih0ul2Ecky/X7b51J7LrrUAP+XOmOCvYZqA==", "dev": true, "requires": { "figgy-pudding": "^3.5.1", @@ -11469,8 +12691,8 @@ }, "npm-registry-fetch": { "version": "3.9.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/npm-registry-fetch/-/npm-registry-fetch-3.9.0.tgz", - "integrity": "sha1-RNhBeA4oM/BqzLNEiPjHRQ0aaFY=", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-3.9.0.tgz", + "integrity": "sha512-srwmt8YhNajAoSAaDWndmZgx89lJwIZ1GWxOuckH4Coek4uHv5S+o/l9FLQe/awA+JwTnj4FJHldxhlXdZEBmw==", "dev": true, "requires": { "JSONStream": "^1.3.4", @@ -11787,8 +13009,8 @@ }, "obuf": { "version": "1.1.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha1-Cb6jND1BhZ69RGKS0RydTbYZCE4=", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", "dev": true }, "on-finished": { @@ -11802,8 +13024,8 @@ }, "on-headers": { "version": "1.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha1-dysK5qqlJcOZ5Imt+tkMQD6zwo8=", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", "dev": true }, "once": { @@ -11831,8 +13053,8 @@ }, "open": { "version": "6.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/open/-/open-6.0.0.tgz", - "integrity": "sha1-yuXiwaOhv67g0KzIxLdgk3R1A0Y=", + "resolved": "https://registry.npmjs.org/open/-/open-6.0.0.tgz", + "integrity": "sha512-/yb5mVZBz7mHLySMiSj2DcLtMBbFPJk5JBKEkHVZFxZAPzeg3L026O0T+lbdz1B2nyDnkClRSwRQJdeVUIF7zw==", "dev": true, "requires": { "is-wsl": "^1.1.0" @@ -11974,8 +13196,8 @@ }, "opn": { "version": "5.5.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/opn/-/opn-5.5.0.tgz", - "integrity": "sha1-/HFk+rVtI1kExRw7J9pnWMo7m/w=", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", + "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", "dev": true, "requires": { "is-wsl": "^1.1.0" @@ -12052,8 +13274,8 @@ }, "original": { "version": "1.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/original/-/original-1.0.2.tgz", - "integrity": "sha1-5EKmHP/hxf0gpl8yYcJmY7MD8l8=", + "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", + "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", "dev": true, "requires": { "url-parse": "^1.4.3" @@ -12096,12 +13318,38 @@ "os-tmpdir": "^1.0.0" } }, + "p-cancelable": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", + "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==", + "dev": true + }, "p-defer": { "version": "1.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-defer/-/p-defer-1.0.0.tgz", "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", "dev": true }, + "p-event": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-1.3.0.tgz", + "integrity": "sha1-jmtPT2XHK8W2/ii3XtqHT5akoIU=", + "dev": true, + "requires": { + "p-timeout": "^1.1.1" + }, + "dependencies": { + "p-timeout": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", + "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", + "dev": true, + "requires": { + "p-finally": "^1.0.0" + } + } + } + }, "p-finally": { "version": "1.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-finally/-/p-finally-1.0.0.tgz", @@ -12134,10 +13382,19 @@ }, "p-map": { "version": "1.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-map/-/p-map-1.2.0.tgz", - "integrity": "sha1-5OlPMR6rvIYzoeeZCBZfyiYkG2s=", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", + "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==", "dev": true }, + "p-timeout": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", + "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", + "dev": true, + "requires": { + "p-finally": "^1.0.0" + } + }, "p-try": { "version": "1.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-try/-/p-try-1.0.0.tgz", @@ -12158,8 +13415,8 @@ }, "pacote": { "version": "9.4.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pacote/-/pacote-9.4.0.tgz", - "integrity": "sha1-r5eavesXXNNHw+M74yQa8e0lSAc=", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.4.0.tgz", + "integrity": "sha512-WQ1KL/phGMkedYEQx9ODsjj7xvwLSpdFJJdEXrLyw5SILMxcTNt5DTxT2Z93fXuLFYJBlZJdnwdalrQdB/rX5w==", "dev": true, "requires": { "bluebird": "^3.5.3", @@ -12193,8 +13450,8 @@ "dependencies": { "cacache": { "version": "11.3.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cacache/-/cacache-11.3.2.tgz", - "integrity": "sha1-LYHjCOPSWMo4Eltna5iyrJzmm/o=", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.2.tgz", + "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", "dev": true, "requires": { "bluebird": "^3.5.3", @@ -12215,8 +13472,8 @@ }, "get-stream": { "version": "4.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha1-wbJVV189wh1Zv8ec09K0axw6VLU=", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", "dev": true, "requires": { "pump": "^3.0.0" @@ -12224,8 +13481,8 @@ }, "lru-cache": { "version": "5.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, "requires": { "yallist": "^3.0.2" @@ -12233,8 +13490,8 @@ }, "mississippi": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha1-6goykfl+C16HdrNj1fChLZTGcCI=", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", "dev": true, "requires": { "concat-stream": "^1.5.0", @@ -12251,8 +13508,8 @@ }, "pump": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pump/-/pump-3.0.0.tgz", - "integrity": "sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ=", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "requires": { "end-of-stream": "^1.1.0", @@ -12261,8 +13518,8 @@ }, "ssri": { "version": "6.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg=", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", "dev": true, "requires": { "figgy-pudding": "^3.5.1" @@ -12270,8 +13527,8 @@ }, "tar": { "version": "4.4.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/tar/-/tar-4.4.8.tgz", - "integrity": "sha1-sZ7sP94qluZGZt+f20DFyhvDdH0=", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.8.tgz", + "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", "dev": true, "requires": { "chownr": "^1.1.1", @@ -12285,8 +13542,8 @@ }, "yallist": { "version": "3.0.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha1-tLBJ4xS+VF486AIjbWzSLNkcPek=", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", "dev": true } } @@ -12319,8 +13576,8 @@ }, "parse-asn1": { "version": "5.1.4", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/parse-asn1/-/parse-asn1-5.1.4.tgz", - "integrity": "sha1-N/Zij4I/vesic7TVQENKIvPvH8w=", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", + "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", "dev": true, "requires": { "asn1.js": "^4.0.0", @@ -12523,10 +13780,19 @@ "pify": "^3.0.0" } }, + "pause-stream": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", + "integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=", + "dev": true, + "requires": { + "through": "~2.3" + } + }, "pbkdf2": { "version": "3.0.17", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pbkdf2/-/pbkdf2-3.0.17.tgz", - "integrity": "sha1-l2wgZTBhexTrsyEUI597CTNuk6Y=", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", "dev": true, "requires": { "create-hash": "^1.1.2", @@ -12539,8 +13805,7 @@ "pend": { "version": "1.2.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", - "optional": true + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" }, "perfect-scrollbar": { "version": "1.4.0", @@ -12649,8 +13914,8 @@ }, "portfinder": { "version": "1.0.20", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/portfinder/-/portfinder-1.0.20.tgz", - "integrity": "sha1-vqaGMuVLLhOrewxHdem0G/Jw5Eo=", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.20.tgz", + "integrity": "sha512-Yxe4mTyDzTd59PZJY4ojZR8F+E5e97iq2ZOHPz3HDgSvYC5siNad2tLooQ5y5QHyQhc3xVqvyk/eNA3wuoa7Sw==", "dev": true, "requires": { "async": "^1.5.2", @@ -12693,8 +13958,8 @@ }, "postcss-import": { "version": "12.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/postcss-import/-/postcss-import-12.0.1.tgz", - "integrity": "sha1-z4x6sLXMq1ZJAkU25WX4QZKLcVM=", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-12.0.1.tgz", + "integrity": "sha512-3Gti33dmCjyKBgimqGxL3vcV8w9+bsHwO5UrBawp796+jdardbcFl4RP5w/76BwNL7aGzpKstIfF9I+kdE8pTw==", "dev": true, "requires": { "postcss": "^7.0.1", @@ -12705,8 +13970,8 @@ }, "postcss-load-config": { "version": "2.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/postcss-load-config/-/postcss-load-config-2.0.0.tgz", - "integrity": "sha1-8TEt2/WRLNdHF3CDxe96GdYu5IQ=", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.0.0.tgz", + "integrity": "sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ==", "dev": true, "requires": { "cosmiconfig": "^4.0.0", @@ -12715,8 +13980,8 @@ }, "postcss-loader": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/postcss-loader/-/postcss-loader-3.0.0.tgz", - "integrity": "sha1-a5eUPkfHLYRfqeA/Jzdz1OjdbC0=", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", + "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", "dev": true, "requires": { "loader-utils": "^1.1.0", @@ -12802,8 +14067,7 @@ "progress": { "version": "2.0.3", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/progress/-/progress-2.0.3.tgz", - "integrity": "sha1-foz42PW48jnBvGi+tOt4Vn1XLvg=", - "optional": true + "integrity": "sha1-foz42PW48jnBvGi+tOt4Vn1XLvg=" }, "promise": { "version": "7.3.1", @@ -12839,8 +14103,8 @@ }, "protoduck": { "version": "5.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/protoduck/-/protoduck-5.0.1.tgz", - "integrity": "sha1-A8NlnKGAB7aaUP2Cp+vMUWJhFR8=", + "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", + "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", "dev": true, "requires": { "genfun": "^5.0.0" @@ -12979,8 +14243,8 @@ }, "proxy-addr": { "version": "2.0.5", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/proxy-addr/-/proxy-addr-2.0.5.tgz", - "integrity": "sha1-NMvWSi2B9LH9IedvnwbIpFKZ7jQ=", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz", + "integrity": "sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==", "dev": true, "requires": { "forwarded": "~0.1.2", @@ -12999,6 +14263,15 @@ "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", "dev": true }, + "ps-tree": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ps-tree/-/ps-tree-1.1.1.tgz", + "integrity": "sha512-kef7fYYSKVqQffmzTMsVcUD1ObNJMp8sNSmHGlGKsZQyL/ht9MZKk86u0Rd1NhpTOAuhqwKCLLpktwkqz+MF8A==", + "dev": true, + "requires": { + "event-stream": "=3.3.4" + } + }, "pseudomap": { "version": "1.0.2", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pseudomap/-/pseudomap-1.0.2.tgz", @@ -13013,8 +14286,8 @@ }, "public-encrypt": { "version": "4.0.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha1-T8ydd6B+SLp1J+fL4N4z0HATMeA=", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", "dev": true, "requires": { "bn.js": "^4.1.0", @@ -13027,8 +14300,8 @@ }, "pump": { "version": "2.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pump/-/pump-2.0.1.tgz", - "integrity": "sha1-Ejma3W5M91Jtlzy8i1zi4pCLOQk=", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", "dev": true, "requires": { "end-of-stream": "^1.1.0", @@ -13037,8 +14310,8 @@ }, "pumpify": { "version": "1.5.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha1-NlE74karJ1cLGjdKXOJ4v9dDcM4=", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", "dev": true, "requires": { "duplexify": "^3.6.0", @@ -13109,6 +14382,17 @@ "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", "dev": true }, + "query-string": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", + "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "dev": true, + "requires": { + "decode-uri-component": "^0.2.0", + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + } + }, "querystring": { "version": "0.2.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/querystring/-/querystring-0.2.0.tgz", @@ -13123,8 +14407,8 @@ }, "querystringify": { "version": "2.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/querystringify/-/querystringify-2.1.1.tgz", - "integrity": "sha1-YOWl/WSn+L+k0qsu1v30yFutFU4=", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz", + "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==", "dev": true }, "quick-lru": { @@ -13154,8 +14438,8 @@ }, "randombytes": { "version": "2.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha1-32+ENy8CcNxlzfYpE0mrekc9Tyo=", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, "requires": { "safe-buffer": "^5.1.0" @@ -13163,8 +14447,8 @@ }, "randomfill": { "version": "1.0.4", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha1-ySGW/IarQr6YPxvzF3giSTHWFFg=", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", "dev": true, "requires": { "randombytes": "^2.0.5", @@ -13191,8 +14475,8 @@ }, "raw-loader": { "version": "1.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/raw-loader/-/raw-loader-1.0.0.tgz", - "integrity": "sha1-P5iJ5z2tvamkJLznmAm0EzrUZAU=", + "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-1.0.0.tgz", + "integrity": "sha512-Uqy5AqELpytJTRxYT4fhltcKPj0TyaEpzJDcGz7DFJi+pQOOi3GjR/DOdxTkTsF+NzhnldIoG6TORaBlInUuqA==", "dev": true, "requires": { "loader-utils": "^1.1.0", @@ -13564,8 +14848,8 @@ }, "require-from-string": { "version": "2.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha1-iaf92TgmEmcxjq/hT5wy5ZjDaQk=", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true }, "require-main-filename": { @@ -13622,6 +14906,15 @@ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", "dev": true }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dev": true, + "requires": { + "lowercase-keys": "^1.0.0" + } + }, "restore-cursor": { "version": "2.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/restore-cursor/-/restore-cursor-2.0.0.tgz", @@ -13660,8 +14953,8 @@ }, "ripemd160": { "version": "2.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha1-ocGm9iR1FXe6XQeRTLyShQWFiQw=", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", "dev": true, "requires": { "hash-base": "^3.0.0", @@ -13669,26 +14962,20 @@ } }, "rollup": { - "version": "1.10.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/rollup/-/rollup-1.10.1.tgz", - "integrity": "sha1-rrdju+mPcH3GSWcI24g3L6Zmh+c=", + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-1.12.3.tgz", + "integrity": "sha512-ueWhPijWN+GaPgD3l77hXih/gcDXmYph6sWeQegwBYtaqAE834e8u+MC2wT6FKIUsz1DBOyOXAQXUZB+rjWDoQ==", "dev": true, "requires": { "@types/estree": "0.0.39", - "@types/node": "^11.13.5", + "@types/node": "^12.0.2", "acorn": "^6.1.1" }, "dependencies": { "@types/node": { - "version": "11.13.8", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/@types/node/-/node-11.13.8.tgz", - "integrity": "sha1-5dcRc8lVM76YQrLHmJePCV+RKqs=", - "dev": true - }, - "acorn": { - "version": "6.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/acorn/-/acorn-6.1.1.tgz", - "integrity": "sha1-fSWuBbuK0fm2mRCOEJTs14hK3B8=", + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.2.tgz", + "integrity": "sha512-5tabW/i+9mhrfEOUcLDu2xBPsHJ+X5Orqy9FKpale3SjDA17j5AEpYq5vfy3oAeAHGcvANRCO3NV3d2D6q3NiA==", "dev": true } } @@ -13778,36 +15065,36 @@ } }, "rollup-plugin-typescript2": { - "version": "0.20.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/rollup-plugin-typescript2/-/rollup-plugin-typescript2-0.20.1.tgz", - "integrity": "sha1-+x1BGXXNh10kiC6mb19P0R0vIkA=", + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-typescript2/-/rollup-plugin-typescript2-0.21.1.tgz", + "integrity": "sha512-jM2tn8/fUKDRmDtH++/6CHYHv2R9dxfXnuW0rxbOq1Zrxdsg4g6w+WwbK0X2ma21WQcT9l/U9bA3RO+2SBIJ/A==", "dev": true, "requires": { "fs-extra": "7.0.1", - "resolve": "1.10.0", - "rollup-pluginutils": "2.4.1", + "resolve": "1.10.1", + "rollup-pluginutils": "2.6.0", "tslib": "1.9.3" }, "dependencies": { "estree-walker": { "version": "0.6.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/estree-walker/-/estree-walker-0.6.0.tgz", - "integrity": "sha1-XYZTJ8RKYY3eVpn3Y4ka4x8lfa4=", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.0.tgz", + "integrity": "sha512-peq1RfVAVzr3PU/jL31RaOjUKLoZJpObQWJJ+LgfcxDUifyLZ1RjPQZTl0pzj2uJ45b7A7XpyppXvxdEqzo4rw==", "dev": true }, "resolve": { - "version": "1.10.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/resolve/-/resolve-1.10.0.tgz", - "integrity": "sha1-O9qur0XMB/N1ZW39LlTtCBCxAbo=", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.1.tgz", + "integrity": "sha512-KuIe4mf++td/eFb6wkaPbMDnP6kObCaEtIDuHOUED6MNUo4K670KZUHuuvYPZDxNF0WVLw49n06M2m2dXphEzA==", "dev": true, "requires": { "path-parse": "^1.0.6" } }, "rollup-pluginutils": { - "version": "2.4.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/rollup-pluginutils/-/rollup-pluginutils-2.4.1.tgz", - "integrity": "sha1-3kOrVJZbv0eENZmn863OtyPeONs=", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.6.0.tgz", + "integrity": "sha512-aGQwspEF8oPKvg37u3p7h0cYNwmJR1sCBMZGZ5b9qy8HGtETknqjzcxrDRrcAnJNXN18lBH4Q9vZYth/p4n8jQ==", "dev": true, "requires": { "estree-walker": "^0.6.0", @@ -14013,6 +15300,12 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, + "samsam": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/samsam/-/samsam-1.1.2.tgz", + "integrity": "sha1-vsEf3IOp/aBjQBIQ5AF2wwJNFWc=", + "dev": true + }, "sass-graph": { "version": "2.2.4", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/sass-graph/-/sass-graph-2.2.4.tgz", @@ -14027,8 +15320,8 @@ }, "sass-loader": { "version": "7.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/sass-loader/-/sass-loader-7.1.0.tgz", - "integrity": "sha1-Fv1ROMuLQkv4p1lSihly1yqtBp0=", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz", + "integrity": "sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w==", "dev": true, "requires": { "clone-deep": "^2.0.1", @@ -14065,8 +15358,8 @@ }, "schema-utils": { "version": "1.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A=", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", "dev": true, "requires": { "ajv": "^6.1.0", @@ -14075,62 +15368,68 @@ } }, "scss-bundle": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/scss-bundle/-/scss-bundle-2.4.0.tgz", - "integrity": "sha512-wK+plVq1aLhWaldyXIfRgnMk1ylvWn//pirqzL5HyFrS7ysfvKSn+z48Mg5W7cAV6IXjcDjf1naJ6RF5Xbb39Q==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/scss-bundle/-/scss-bundle-2.5.1.tgz", + "integrity": "sha512-n5gUfBqbPDuP7LYxG7Oi51jeyErzqhLOtofQl9ctYi8DRwGYpnCJIOl+9L3/o5O5srfM80ADLF/wYg11NUnh3Q==", "dev": true, "requires": { + "@types/chokidar": "^1.7.5", + "@types/lodash.debounce": "^4.0.4", "archy": "^1.0.0", + "chokidar": "^2.0.4", "fs-extra": "^5.0.0", "globs": "^0.1.3", - "node-sass": "^4.9.0", + "lodash.debounce": "^4.0.8", + "node-sass": "^4.10.0", "pretty-bytes": "^4.0.2", "promise": "^8.0.1", - "yargs": "^11.0.0" + "yargs": "^13.1.0" }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, "camelcase": { - "version": "4.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", "dev": true, "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" } }, "cross-spawn": { - "version": "5.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "dev": true, "requires": { - "lru-cache": "^4.0.1", + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", "shebang-command": "^1.2.0", "which": "^1.2.9" } }, "execa": { - "version": "0.7.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", "dev": true, "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", "is-stream": "^1.1.0", "npm-run-path": "^2.0.0", "p-finally": "^1.0.0", @@ -14138,6 +15437,15 @@ "strip-eof": "^1.0.0" } }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, "fs-extra": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-5.0.0.tgz", @@ -14149,58 +15457,130 @@ "universalify": "^0.1.0" } }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, - "mem": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", - "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", "dev": true, "requires": { - "mimic-fn": "^1.0.0" + "invert-kv": "^2.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" } }, "os-locale": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", - "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", "dev": true, "requires": { - "execa": "^0.7.0", - "lcid": "^1.0.0", - "mem": "^1.1.0" + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" } }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, "promise": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/promise/-/promise-8.0.2.tgz", - "integrity": "sha512-EIyzM39FpVOMbqgzEHhxdrEhtOSDOtjMZQ0M6iVfCE+kWNgCkAyOdnuCWqfmflylftfadU6FkiMgHZA2kUzwRw==", + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/promise/-/promise-8.0.3.tgz", + "integrity": "sha512-HeRDUL1RJiLhyA0/grn+PTShlBAcLuh/1BJGtrvjwbvRDCTLLMEz9rOGCV+R3vHY4MixIuoMEd9Yq/XvsTPcjw==", "dev": true, "requires": { "asap": "~2.0.6" } }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "dev": true, "requires": { + "emoji-regex": "^7.0.1", "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "strip-ansi": "^5.1.0" } }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^4.1.0" } }, "which-module": { @@ -14209,39 +15589,44 @@ "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "dev": true }, - "y18n": { - "version": "3.2.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } }, "yargs": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.1.0.tgz", - "integrity": "sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A==", + "version": "13.2.4", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.4.tgz", + "integrity": "sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg==", "dev": true, "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", + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "os-locale": "^3.1.0", "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", + "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^2.0.0", + "string-width": "^3.0.0", "which-module": "^2.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^9.0.2" + "y18n": "^4.0.0", + "yargs-parser": "^13.1.0" } }, "yargs-parser": { - "version": "9.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/yargs-parser/-/yargs-parser-9.0.2.tgz", - "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.0.tgz", + "integrity": "sha512-Yq+32PrijHRri0vVKQEm+ys8mbqWjLiwQkMFNXEENutzLPP0bE4Lcd4iA3OQY5HF+GD3xXxf0MEHb8E4/SA3AA==", "dev": true, "requires": { - "camelcase": "^4.1.0" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } } } @@ -14267,6 +15652,26 @@ } } }, + "seek-bzip": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", + "integrity": "sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w=", + "dev": true, + "requires": { + "commander": "~2.8.1" + }, + "dependencies": { + "commander": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", + "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", + "dev": true, + "requires": { + "graceful-readlink": ">= 1.0.0" + } + } + } + }, "select-hose": { "version": "2.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/select-hose/-/select-hose-2.0.0.tgz", @@ -14298,8 +15703,8 @@ }, "selfsigned": { "version": "1.10.4", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/selfsigned/-/selfsigned-1.10.4.tgz", - "integrity": "sha1-zdfsz8pO12NdR6CL8tXTB0CS4s0=", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.4.tgz", + "integrity": "sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw==", "dev": true, "requires": { "node-forge": "0.7.5" @@ -14340,8 +15745,8 @@ }, "semver-intersect": { "version": "1.4.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/semver-intersect/-/semver-intersect-1.4.0.tgz", - "integrity": "sha1-vdnAa+3N0v7bjNNSw8Q+6MYTIfM=", + "resolved": "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.4.0.tgz", + "integrity": "sha512-d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ==", "dev": true, "requires": { "semver": "^5.0.0" @@ -14394,8 +15799,8 @@ }, "serialize-javascript": { "version": "1.7.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/serialize-javascript/-/serialize-javascript-1.7.0.tgz", - "integrity": "sha1-1uDfsqODKoyURo5usduX5VoZKmU=", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.7.0.tgz", + "integrity": "sha512-ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA==", "dev": true }, "serve-index": { @@ -14468,8 +15873,8 @@ }, "sha.js": { "version": "2.4.11", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha1-N6XPC4HsvGlD3hCbopYNGyZYSuc=", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, "requires": { "inherits": "^2.0.1", @@ -14478,8 +15883,8 @@ }, "shallow-clone": { "version": "1.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/shallow-clone/-/shallow-clone-1.0.0.tgz", - "integrity": "sha1-RIDNBuiC72iyrYij6lSDLixItXE=", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz", + "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", "dev": true, "requires": { "is-extendable": "^0.1.1", @@ -14489,8 +15894,8 @@ "dependencies": { "kind-of": { "version": "5.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", "dev": true } } @@ -14562,16 +15967,34 @@ } } }, + "sinon": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-1.17.7.tgz", + "integrity": "sha1-RUKk9JugxFwF6y6d2dID4rjv4L8=", + "dev": true, + "requires": { + "formatio": "1.1.1", + "lolex": "1.3.2", + "samsam": "1.1.2", + "util": ">=0.10.3 <1" + } + }, "slash": { "version": "1.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/slash/-/slash-1.0.0.tgz", "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", "dev": true }, + "slugify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.3.1.tgz", + "integrity": "sha512-6BwyhjF5tG5P8s+0DPNyJmBSBePG6iMyhjvIW5zGdA3tFik9PtK+yNkZgTeiroCRGZYgkHftFA62tGVK1EI9Kw==", + "dev": true + }, "smart-buffer": { "version": "4.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/smart-buffer/-/smart-buffer-4.0.2.tgz", - "integrity": "sha1-UgeFjDgVzGkRBwPGuU5GwVY0OV0=", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.0.2.tgz", + "integrity": "sha512-JDhEpTKzXusOqXZ0BUIdH+CjFdO/CR3tLlf5CN34IypI+xMmXW1uB16OOY8z3cICbJlDAVJzNbwBhNO0wt9OAw==", "dev": true }, "snake-case": { @@ -14790,8 +16213,8 @@ }, "sockjs": { "version": "0.3.19", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/sockjs/-/sockjs-0.3.19.tgz", - "integrity": "sha1-2Xa76ACve9IK4IWY1YI5NQiZPA0=", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", + "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", "dev": true, "requires": { "faye-websocket": "^0.10.0", @@ -14800,8 +16223,8 @@ }, "sockjs-client": { "version": "1.3.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/sockjs-client/-/sockjs-client-1.3.0.tgz", - "integrity": "sha1-EvydbLZj2lc509xftuhofalcsXc=", + "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.3.0.tgz", + "integrity": "sha512-R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg==", "dev": true, "requires": { "debug": "^3.2.5", @@ -14814,8 +16237,8 @@ "dependencies": { "debug": { "version": "3.2.6", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/debug/-/debug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { "ms": "^2.1.1" @@ -14832,16 +16255,16 @@ }, "ms": { "version": "2.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ms/-/ms-2.1.1.tgz", - "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true } } }, "socks": { "version": "2.3.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/socks/-/socks-2.3.2.tgz", - "integrity": "sha1-reOI6ebYf9sRZJwVdGxXiSKliD4=", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.2.tgz", + "integrity": "sha512-pCpjxQgOByDHLlNqlnh/mNSAxIUkyBBuwwhTcV+enZGbDaClPvHdvm6uvOwZfFJkam7cGhBNbb4JxiP8UZkRvQ==", "dev": true, "requires": { "ip": "^1.1.5", @@ -14850,24 +16273,99 @@ }, "socks-proxy-agent": { "version": "4.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha1-PImR8xRbJ5nnDhG9X7yLGWMRY4Y=", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", + "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", "dev": true, "requires": { "agent-base": "~4.2.1", "socks": "~2.3.2" } }, - "sonar-scanner": { - "version": "3.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/sonar-scanner/-/sonar-scanner-3.1.0.tgz", - "integrity": "sha1-UcHBEB9UuYq8XYVlIJsdkjKXk0M=", - "dev": true + "sonarqube-scanner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/sonarqube-scanner/-/sonarqube-scanner-2.4.0.tgz", + "integrity": "sha512-iuupCnLGJBjz3UfCtWsz2yCqRmdP2KvKVjM8GQFmsZOt8i/nWrAnqhdni38uyw8m+HzbRR4Rwu9VlN1ZE9XPpQ==", + "dev": true, + "requires": { + "download": "7.0.0", + "extend": "3.0.2", + "fancy-log": "^1.1.0", + "lodash.get": "^4.4.2", + "lodash.uniq": "^4.5.0", + "mkdirp": "0.5.1", + "progress": "^2.0.0", + "read-pkg": "2.0.0", + "slugify": "1.3.1" + }, + "dependencies": { + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" + } + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "requires": { + "pify": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "requires": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + } + } + }, + "sort-keys": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", + "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", + "dev": true, + "requires": { + "is-plain-obj": "^1.0.0" + } + }, + "sort-keys-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sort-keys-length/-/sort-keys-length-1.0.1.tgz", + "integrity": "sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg=", + "dev": true, + "requires": { + "sort-keys": "^1.0.0" + } }, "source-list-map": { "version": "2.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha1-OZO9hzv8SEecyp6jpUeDXHwVSzQ=", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", "dev": true }, "source-map": { @@ -14878,8 +16376,8 @@ }, "source-map-loader": { "version": "0.2.4", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/source-map-loader/-/source-map-loader-0.2.4.tgz", - "integrity": "sha1-wYsNxuI79m9nkkN1V8VpoR4HInE=", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.4.tgz", + "integrity": "sha512-OU6UJUty+i2JDpTItnizPrlpOIBLmQbWMuBg9q5bVtnHACqw1tn9nNwqJLbv0/00JjnJb/Ee5g5WS5vrRv7zIQ==", "dev": true, "requires": { "async": "^2.5.0", @@ -14975,8 +16473,8 @@ }, "spdy": { "version": "4.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/spdy/-/spdy-4.0.0.tgz", - "integrity": "sha1-gfIitadDoymqEs6mo5DmDpthPFI=", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.0.tgz", + "integrity": "sha512-ot0oEGT/PGUpzf/6uk4AWLqkq+irlqHXkrdbk51oWONh3bxQmBuljxPNl66zlRRcIJStWq0QkLUCPOPjgjvU0Q==", "dev": true, "requires": { "debug": "^4.1.0", @@ -14988,8 +16486,8 @@ "dependencies": { "debug": { "version": "4.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/debug/-/debug-4.1.1.tgz", - "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { "ms": "^2.1.1" @@ -14997,16 +16495,16 @@ }, "ms": { "version": "2.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ms/-/ms-2.1.1.tgz", - "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true } } }, "spdy-transport": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha1-ANSGOmQArXXfkzYaFghgXl3NzzE=", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", "dev": true, "requires": { "debug": "^4.1.0", @@ -15019,8 +16517,8 @@ "dependencies": { "debug": { "version": "4.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/debug/-/debug-4.1.1.tgz", - "integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { "ms": "^2.1.1" @@ -15028,103 +16526,666 @@ }, "ms": { "version": "2.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ms/-/ms-2.1.1.tgz", - "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true }, "readable-stream": { "version": "3.3.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/readable-stream/-/readable-stream-3.3.0.tgz", - "integrity": "sha1-y4ARqtAC63F78EApH+uoVpyYb7k=", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz", + "integrity": "sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "speed-measure-webpack-plugin": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.3.1.tgz", + "integrity": "sha512-qVIkJvbtS9j/UeZumbdfz0vg+QfG/zxonAjzefZrqzkr7xOncLVXkeGbTpzd1gjCBM4PmVNkWlkeTVhgskAGSQ==", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + }, + "split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "dev": true, + "requires": { + "through": "2" + } + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "split2": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz", + "integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==", + "dev": true, + "requires": { + "through2": "^2.0.2" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "requires": { + "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" + } + }, + "ssri": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", + "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.1" + } + }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "dev": true + }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "dev": true + }, + "standard-version": { + "version": "6.0.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/standard-version/-/standard-version-6.0.1.tgz", + "integrity": "sha1-rVDpdwtzCQ0vj2kuUg2QaBOjzv4=", + "dev": true, + "requires": { + "chalk": "2.4.2", + "conventional-changelog": "3.1.8", + "conventional-changelog-config-spec": "1.0.0", + "conventional-recommended-bump": "5.0.0", + "detect-indent": "6.0.0", + "detect-newline": "3.0.0", + "dotgitignore": "2.1.0", + "figures": "3.0.0", + "find-up": "3.0.0", + "fs-access": "1.0.1", + "git-semver-tags": "2.0.2", + "semver": "6.0.0", + "stringify-package": "1.0.0", + "yargs": "13.2.2" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha1-NIQi2+gtgAswIu709qwQvy5NG0k=", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "string-width": { + "version": "2.1.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + } + } + }, + "conventional-changelog": { + "version": "3.1.8", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-changelog/-/conventional-changelog-3.1.8.tgz", + "integrity": "sha1-CROCtaCCC/jsjnWtJmSjaIwxsH0=", + "dev": true, + "requires": { + "conventional-changelog-angular": "^5.0.3", + "conventional-changelog-atom": "^2.0.1", + "conventional-changelog-codemirror": "^2.0.1", + "conventional-changelog-conventionalcommits": "^3.0.2", + "conventional-changelog-core": "^3.2.2", + "conventional-changelog-ember": "^2.0.2", + "conventional-changelog-eslint": "^3.0.2", + "conventional-changelog-express": "^2.0.1", + "conventional-changelog-jquery": "^3.0.4", + "conventional-changelog-jshint": "^2.0.1", + "conventional-changelog-preset-loader": "^2.1.1" + } + }, + "conventional-changelog-angular": { + "version": "5.0.3", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-changelog-angular/-/conventional-changelog-angular-5.0.3.tgz", + "integrity": "sha1-KZ/dQ99aHwlSg6wWru37CmguyrA=", + "dev": true, + "requires": { + "compare-func": "^1.3.1", + "q": "^1.5.1" + } + }, + "conventional-changelog-core": { + "version": "3.2.2", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-changelog-core/-/conventional-changelog-core-3.2.2.tgz", + "integrity": "sha1-3kHmtKcQEaGLzuWOdE9vjw58KcA=", + "dev": true, + "requires": { + "conventional-changelog-writer": "^4.0.5", + "conventional-commits-parser": "^3.0.2", + "dateformat": "^3.0.0", + "get-pkg-repo": "^1.0.0", + "git-raw-commits": "2.0.0", + "git-remote-origin-url": "^2.0.0", + "git-semver-tags": "^2.0.2", + "lodash": "^4.2.1", + "normalize-package-data": "^2.3.5", + "q": "^1.5.1", + "read-pkg": "^3.0.0", + "read-pkg-up": "^3.0.0", + "through2": "^3.0.0" + } + }, + "conventional-changelog-eslint": { + "version": "3.0.2", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-changelog-eslint/-/conventional-changelog-eslint-3.0.2.tgz", + "integrity": "sha1-6esIjNpr4+WLLealqsY98Cd/PL4=", + "dev": true, + "requires": { + "q": "^1.5.1" + } + }, + "conventional-changelog-preset-loader": { + "version": "2.1.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.1.1.tgz", + "integrity": "sha1-ZbtgBUfFbVYn0jE1FUvNmpB2aMQ=", + "dev": true + }, + "conventional-changelog-writer": { + "version": "4.0.5", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-changelog-writer/-/conventional-changelog-writer-4.0.5.tgz", + "integrity": "sha1-+544S7KU6Oip8laKP00eEZU9hkE=", + "dev": true, + "requires": { + "compare-func": "^1.3.1", + "conventional-commits-filter": "^2.0.2", + "dateformat": "^3.0.0", + "handlebars": "^4.1.0", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.2.1", + "meow": "^4.0.0", + "semver": "^5.5.0", + "split": "^1.0.0", + "through2": "^3.0.0" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/semver/-/semver-5.7.0.tgz", + "integrity": "sha1-eQp89v6lRZuslhELKbYEEtyP+Ws=", + "dev": true + } + } + }, + "conventional-commits-filter": { + "version": "2.0.2", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-commits-filter/-/conventional-commits-filter-2.0.2.tgz", + "integrity": "sha1-8SL4n7zVu4Hiry/KwCVNBi0QOcE=", + "dev": true, + "requires": { + "lodash.ismatch": "^4.4.0", + "modify-values": "^1.0.0" + } + }, + "conventional-commits-parser": { + "version": "3.0.2", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/conventional-commits-parser/-/conventional-commits-parser-3.0.2.tgz", + "integrity": "sha1-EpVZDdGV9k9T1vjrfEERS7mmB0I=", + "dev": true, + "requires": { + "JSONStream": "^1.0.4", + "is-text-path": "^1.0.0", + "lodash": "^4.2.1", + "meow": "^4.0.0", + "split2": "^2.0.0", + "through2": "^3.0.0", + "trim-off-newlines": "^1.0.0" + } + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha1-Sl7Hxk364iw6FBJNus3uhG2Ay8Q=", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/semver/-/semver-5.7.0.tgz", + "integrity": "sha1-eQp89v6lRZuslhELKbYEEtyP+Ws=", + "dev": true + } + } + }, + "dateformat": { + "version": "3.0.3", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha1-puN0maTZqc+F71hyBE1ikByYia4=", + "dev": true + }, + "detect-indent": { + "version": "6.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/detect-indent/-/detect-indent-6.0.0.tgz", + "integrity": "sha1-Cr0PVJ9p/GZZolT+lnhhhrb1KP0=", + "dev": true + }, + "execa": { + "version": "1.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/execa/-/execa-1.0.0.tgz", + "integrity": "sha1-xiNqW7TfbW8V6I5/AXeYIWdJ3dg=", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.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" + } + }, + "figures": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/figures/-/figures-3.0.0.tgz", + "integrity": "sha1-dWJ1yWRkYWPMb5GXx6ApXb/QTek=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + }, + "dependencies": { + "locate-path": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + } + } + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha1-T5RBKoLbMvNuOwuXQfipf+sDH34=", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha1-wbJVV189wh1Zv8ec09K0axw6VLU=", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha1-c5P1r6Weyf9fZ6J2INEcIm4+7AI=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha1-bvXS32DlL4LrIopMNz6NHzlyU88=", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "meow": { + "version": "4.0.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/meow/-/meow-4.0.1.tgz", + "integrity": "sha1-1IWY9vSxRy81v2MXqVlFrONH+XU=", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist": "^1.1.3", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha1-qAKm7hfyTBBIOrmTVxnO9O0Wvxo=", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha1-QXyZQeYCepq8ulCS3SkE4lW1+8I=", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", + "dev": true + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pump/-/pump-3.0.0.tgz", + "integrity": "sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ=", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + } + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha1-0LMp7MfMD2Fkn2IhW+aa9UqomJs=", + "dev": true + }, + "semver": { + "version": "6.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/semver/-/semver-6.0.0.tgz", + "integrity": "sha1-BeNZ7lceWtftZBpu7B5Ue6Ut6mU=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha1-InZ74htirxCBV0MG9prFG2IgOWE=", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=", + "dev": true + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "through2": { + "version": "3.0.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/through2/-/through2-3.0.1.tgz", + "integrity": "sha1-OSducTwzAu3544jdnIEt07glvVo=", + "dev": true, + "requires": { + "readable-stream": "2 || 3" + } + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "yargs": { + "version": "13.2.2", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/yargs/-/yargs-13.2.2.tgz", + "integrity": "sha1-DBAfWArpXOp/Odkn53cOP9yX+ZM=", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "os-locale": "^3.1.0", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.0.0" + } + }, + "yargs-parser": { + "version": "13.1.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/yargs-parser/-/yargs-parser-13.1.0.tgz", + "integrity": "sha1-cBa23QPijhQYpRDiWL5L/1oxE48=", "dev": true, "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=", + "dev": true + } } } } }, - "speed-measure-webpack-plugin": { - "version": "1.3.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.3.1.tgz", - "integrity": "sha1-aYQKXNwItGOGl9rH2wN/WV1/NqA=", - "dev": true, - "requires": { - "chalk": "^2.0.1" - } - }, - "split": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", - "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", - "dev": true, - "requires": { - "through": "2" - } - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "split2": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz", - "integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==", - "dev": true, - "requires": { - "through2": "^2.0.2" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dev": true, - "requires": { - "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" - } - }, - "ssri": { - "version": "5.3.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ssri/-/ssri-5.3.0.tgz", - "integrity": "sha1-ujhyycbTOgcEp9cf8EXl7EiZnQY=", - "dev": true, - "requires": { - "safe-buffer": "^5.1.1" - } - }, - "stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "dev": true - }, - "stack-trace": { - "version": "0.0.10", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", - "dev": true - }, "static-extend": { "version": "0.1.2", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/static-extend/-/static-extend-0.1.2.tgz", @@ -15148,8 +17209,8 @@ }, "stats-webpack-plugin": { "version": "0.7.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/stats-webpack-plugin/-/stats-webpack-plugin-0.7.0.tgz", - "integrity": "sha1-zP/pt0Xei7sVVXHgY/gmP8DivAY=", + "resolved": "https://registry.npmjs.org/stats-webpack-plugin/-/stats-webpack-plugin-0.7.0.tgz", + "integrity": "sha512-NT0YGhwuQ0EOX+uPhhUcI6/+1Sq/pMzNuSCBVT4GbFl/ac6I/JZefBcjlECNfAb1t3GOx5dEj1Z7x0cAxeeVLQ==", "dev": true, "requires": { "lodash": "^4.17.4" @@ -15178,14 +17239,23 @@ }, "stream-browserify": { "version": "2.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha1-h1IdOKRKp+6RzhzSpH3wy0ndZgs=", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", "dev": true, "requires": { "inherits": "~2.0.1", "readable-stream": "^2.0.2" } }, + "stream-combiner": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz", + "integrity": "sha1-TV5DPBhSYd3mI8o/RMWGvPXErRQ=", + "dev": true, + "requires": { + "duplexer": "~0.1.1" + } + }, "stream-consume": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.1.tgz", @@ -15194,8 +17264,8 @@ }, "stream-each": { "version": "1.2.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha1-6+J6DDibBPvMIzZClS4Qcxr6m64=", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", "dev": true, "requires": { "end-of-stream": "^1.1.0", @@ -15204,8 +17274,8 @@ }, "stream-http": { "version": "2.8.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha1-stJCRpKIpaJ+xP6JM6z2I95lFPw=", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", "dev": true, "requires": { "builtin-status-codes": "^3.0.0", @@ -15250,6 +17320,12 @@ } } }, + "strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", + "dev": true + }, "string-template": { "version": "0.2.1", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/string-template/-/string-template-0.2.1.tgz", @@ -15286,6 +17362,12 @@ "safe-buffer": "~5.1.0" } }, + "stringify-package": { + "version": "1.0.0", + "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/stringify-package/-/stringify-package-1.0.0.tgz", + "integrity": "sha1-4CgoCJMz19Rc2MKHwwqpoTN1CBs=", + "dev": true + }, "stringmap": { "version": "0.2.2", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/stringmap/-/stringmap-0.2.2.tgz", @@ -15310,6 +17392,15 @@ "is-utf8": "^0.2.0" } }, + "strip-dirs": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", + "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", + "dev": true, + "requires": { + "is-natural-number": "^4.0.1" + } + }, "strip-eof": { "version": "1.0.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/strip-eof/-/strip-eof-1.0.0.tgz", @@ -15331,10 +17422,19 @@ "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "dev": true }, + "strip-outer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz", + "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.2" + } + }, "style-loader": { "version": "0.23.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/style-loader/-/style-loader-0.23.1.tgz", - "integrity": "sha1-y5FUYG8+dxq2xKtjcCahBJF02SU=", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.23.1.tgz", + "integrity": "sha512-XK+uv9kWwhZMZ1y7mysB+zoihsEj4wneFWAS5qoiLwzW0WzSqMrrsIy+a3zkQJq0ipFtBpX5W3MqyRIBF/WFGg==", "dev": true, "requires": { "loader-utils": "^1.1.0", @@ -15382,8 +17482,8 @@ }, "stylus-loader": { "version": "3.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/stylus-loader/-/stylus-loader-3.0.2.tgz", - "integrity": "sha1-J6cGQgsFo44DjnyssVNXjUUFE8Y=", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-3.0.2.tgz", + "integrity": "sha512-+VomPdZ6a0razP+zinir61yZgpw2NfljeSsdUF5kJuEzlo3khXhY19Fn6l8QQz1GRJGtMCo8nG5C04ePyV7SUA==", "dev": true, "requires": { "loader-utils": "^1.0.2", @@ -15411,33 +17511,43 @@ } }, "svgo": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.1.1.tgz", - "integrity": "sha512-GBkJbnTuFpM4jFbiERHDWhZc/S/kpHToqmZag3aEBjPYK44JAN2QBjvrGIxLOoCyMZjuFQIfTO2eJd8uwLY/9g==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.2.2.tgz", + "integrity": "sha512-rAfulcwp2D9jjdGu+0CuqlrAUin6bBWrpoqXWwKDZZZJfXcUXQSxLJOFJCQCSA0x0pP2U0TxSlJu2ROq5Bq6qA==", "dev": true, "requires": { - "coa": "~2.0.1", - "colors": "~1.1.2", + "chalk": "^2.4.1", + "coa": "^2.0.2", "css-select": "^2.0.0", - "css-select-base-adapter": "~0.1.0", + "css-select-base-adapter": "^0.1.1", "css-tree": "1.0.0-alpha.28", "css-url-regex": "^1.1.0", - "csso": "^3.5.0", - "js-yaml": "^3.12.0", + "csso": "^3.5.1", + "js-yaml": "^3.13.1", "mkdirp": "~0.5.1", - "object.values": "^1.0.4", + "object.values": "^1.1.0", "sax": "~1.2.4", - "stable": "~0.1.6", + "stable": "^0.1.8", "unquote": "~1.1.1", "util.promisify": "~1.0.0" }, "dependencies": { - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", @@ -15470,8 +17580,8 @@ }, "tapable": { "version": "1.1.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha1-ofzMBrWNth/XpF2i2kT186Pme6I=", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", "dev": true }, "tar": { @@ -15485,6 +17595,41 @@ "inherits": "2" } }, + "tar-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", + "dev": true, + "requires": { + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" + } + }, + "temp-fs": { + "version": "0.9.9", + "resolved": "https://registry.npmjs.org/temp-fs/-/temp-fs-0.9.9.tgz", + "integrity": "sha1-gHFzBDeHByDpQxUy/igUNk+IA9c=", + "dev": true, + "requires": { + "rimraf": "~2.5.2" + }, + "dependencies": { + "rimraf": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz", + "integrity": "sha1-loAAk8vxoMhr2VtGJUZ1NcKd+gQ=", + "dev": true, + "requires": { + "glob": "^7.0.5" + } + } + } + }, "term-size": { "version": "1.2.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/term-size/-/term-size-1.2.0.tgz", @@ -15536,8 +17681,8 @@ }, "terser": { "version": "3.17.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/terser/-/terser-3.17.0.tgz", - "integrity": "sha1-+I/77aDetWN/nSSw2mb04VqxDLI=", + "resolved": "https://registry.npmjs.org/terser/-/terser-3.17.0.tgz", + "integrity": "sha512-/FQzzPJmCpjAH9Xvk2paiWrFq+5M6aVOf+2KRbwhByISDX/EujxsK+BAvrhb6H+2rtrLCHK9N01wO014vrIwVQ==", "dev": true, "requires": { "commander": "^2.19.0", @@ -15547,20 +17692,20 @@ "dependencies": { "commander": { "version": "2.20.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/commander/-/commander-2.20.0.tgz", - "integrity": "sha1-1YuytcHuj4ew00ACfp6U4iLFpCI=", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", "dev": true }, "source-map": { "version": "0.6.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true }, "source-map-support": { "version": "0.5.12", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/source-map-support/-/source-map-support-0.5.12.tgz", - "integrity": "sha1-tPOxDVGFelrwE4086AA7IBYT1Zk=", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", + "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -15571,8 +17716,8 @@ }, "terser-webpack-plugin": { "version": "1.2.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/terser-webpack-plugin/-/terser-webpack-plugin-1.2.2.tgz", - "integrity": "sha1-m/86iRrWFIVafd4NcH99takn49k=", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.2.2.tgz", + "integrity": "sha512-1DMkTk286BzmfylAvLXwpJrI7dWa5BnFmscV/2dCr8+c56egFcbaeFAl7+sujAjdmpLam21XRdhA4oifLyiWWg==", "dev": true, "requires": { "cacache": "^11.0.2", @@ -15587,8 +17732,8 @@ "dependencies": { "cacache": { "version": "11.3.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cacache/-/cacache-11.3.2.tgz", - "integrity": "sha1-LYHjCOPSWMo4Eltna5iyrJzmm/o=", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.2.tgz", + "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", "dev": true, "requires": { "bluebird": "^3.5.3", @@ -15609,8 +17754,8 @@ }, "find-cache-dir": { "version": "2.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha1-jQ+UzRP+Q8bHwmGg2GEVypGMBfc=", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", "dev": true, "requires": { "commondir": "^1.0.1", @@ -15620,8 +17765,8 @@ }, "find-up": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { "locate-path": "^3.0.0" @@ -15629,8 +17774,8 @@ }, "locate-path": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { "p-locate": "^3.0.0", @@ -15639,8 +17784,8 @@ }, "lru-cache": { "version": "5.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, "requires": { "yallist": "^3.0.2" @@ -15648,8 +17793,8 @@ }, "make-dir": { "version": "2.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha1-XwMQ4YuL6JjMBwCSlaMK5B6R5vU=", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", "dev": true, "requires": { "pify": "^4.0.1", @@ -15658,8 +17803,8 @@ }, "mississippi": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha1-6goykfl+C16HdrNj1fChLZTGcCI=", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", "dev": true, "requires": { "concat-stream": "^1.5.0", @@ -15676,8 +17821,8 @@ }, "p-limit": { "version": "2.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha1-QXyZQeYCepq8ulCS3SkE4lW1+8I=", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -15685,8 +17830,8 @@ }, "p-locate": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { "p-limit": "^2.0.0" @@ -15694,20 +17839,20 @@ }, "p-try": { "version": "2.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, "pify": { "version": "4.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pify/-/pify-4.0.1.tgz", - "integrity": "sha1-SyzSXFDVmHNcUCkiJP2MbfQeMjE=", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true }, "pkg-dir": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", "dev": true, "requires": { "find-up": "^3.0.0" @@ -15715,8 +17860,8 @@ }, "pump": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pump/-/pump-3.0.0.tgz", - "integrity": "sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ=", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "requires": { "end-of-stream": "^1.1.0", @@ -15725,14 +17870,14 @@ }, "source-map": { "version": "0.6.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true }, "ssri": { "version": "6.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg=", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", "dev": true, "requires": { "figgy-pudding": "^3.5.1" @@ -15740,8 +17885,8 @@ }, "yallist": { "version": "3.0.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha1-tLBJ4xS+VF486AIjbWzSLNkcPek=", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", "dev": true } } @@ -15776,8 +17921,8 @@ }, "thunky": { "version": "1.0.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/thunky/-/thunky-1.0.3.tgz", - "integrity": "sha1-9d9zJFNAewkZHa5z4qjMc/OBqCY=", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.3.tgz", + "integrity": "sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow==", "dev": true }, "tildify": { @@ -15803,8 +17948,8 @@ }, "timers-browserify": { "version": "2.0.10", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/timers-browserify/-/timers-browserify-2.0.10.tgz", - "integrity": "sha1-HSjj0qrfHVpZlsTp+VYBzQU0gK4=", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", + "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", "dev": true, "requires": { "setimmediate": "^1.0.4" @@ -15872,6 +18017,12 @@ "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", "dev": true }, + "to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", + "dev": true + }, "to-fast-properties": { "version": "1.0.3", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/to-fast-properties/-/to-fast-properties-1.0.3.tgz", @@ -15920,6 +18071,12 @@ "repeat-string": "^1.6.1" } }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "dev": true + }, "tough-cookie": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", @@ -15947,16 +18104,10 @@ "punycode": "^2.1.0" } }, - "traverse": { - "version": "0.3.9", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/traverse/-/traverse-0.3.9.tgz", - "integrity": "sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=", - "dev": true - }, "tree-kill": { "version": "1.2.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/tree-kill/-/tree-kill-1.2.1.tgz", - "integrity": "sha1-U5jzdOLykrncx7LnHjClw7tsdDo=", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.1.tgz", + "integrity": "sha512-4hjqbObwlh2dLyW4tcz0Ymw0ggoaVDMveUB9w8kFSQScdRLo0gxO9J7WFcUBo+W3C1TLdFIEwNOWebgZZ0RH9Q==", "dev": true }, "trim-newlines": { @@ -15971,6 +18122,15 @@ "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", "dev": true }, + "trim-repeated": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", + "integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.2" + } + }, "trim-right": { "version": "1.0.1", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/trim-right/-/trim-right-1.0.1.tgz", @@ -16234,6 +18394,28 @@ "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", "dev": true }, + "unbzip2-stream": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.3.3.tgz", + "integrity": "sha512-fUlAF7U9Ah1Q6EieQ4x4zLNejrRvDWUYmxXUpN3uziFYCHapjWFaCAnreY9bGgxzaMCFAPPpYNng57CypwJVhg==", + "dev": true, + "requires": { + "buffer": "^5.2.1", + "through": "^2.3.8" + }, + "dependencies": { + "buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", + "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" + } + } + } + }, "unc-path-regex": { "version": "0.1.2", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/unc-path-regex/-/unc-path-regex-0.1.2.tgz", @@ -16292,8 +18474,8 @@ }, "unique-filename": { "version": "1.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha1-HWl2k2mtoFgxA6HmrodoG1ZXMjA=", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", "dev": true, "requires": { "unique-slug": "^2.0.0" @@ -16301,8 +18483,8 @@ }, "unique-slug": { "version": "2.0.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/unique-slug/-/unique-slug-2.0.1.tgz", - "integrity": "sha1-Xp7cbRzo+yZNsYpQfvm9hURFHKY=", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz", + "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==", "dev": true, "requires": { "imurmurhash": "^0.1.4" @@ -16387,40 +18569,6 @@ "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", "dev": true }, - "unzipper": { - "version": "0.9.10", - "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.9.10.tgz", - "integrity": "sha512-dhxTaR67KGyrmxseXTmsyzdlRWkuN0rMPo9j6lxosR/PkzbHNd3smzMobaApx6o/oYvqU1uv+fAPoWr1P4bd8Q==", - "dev": true, - "requires": { - "big-integer": "^1.6.17", - "binary": "~0.3.0", - "bluebird": "~3.4.1", - "buffer-indexof-polyfill": "~1.0.0", - "duplexer2": "~0.1.4", - "fstream": "~1.0.10", - "listenercount": "~1.0.1", - "readable-stream": "~2.3.6", - "setimmediate": "~1.0.4" - }, - "dependencies": { - "bluebird": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", - "integrity": "sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM=", - "dev": true - }, - "duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - } - } - } - }, "upath": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", @@ -16495,8 +18643,8 @@ }, "url-parse": { "version": "1.4.7", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/url-parse/-/url-parse-1.4.7.tgz", - "integrity": "sha1-qKg1NejACjFuQDpdtKwbm4U64ng=", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz", + "integrity": "sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg==", "dev": true, "requires": { "querystringify": "^2.1.1", @@ -16512,6 +18660,12 @@ "prepend-http": "^1.0.1" } }, + "url-to-options": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", + "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=", + "dev": true + }, "urlencode": { "version": "1.1.0", "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/urlencode/-/urlencode-1.1.0.tgz", @@ -16547,6 +18701,7 @@ "version": "0.10.4", "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dev": true, "requires": { "inherits": "2.0.3" } @@ -16778,8 +18933,8 @@ }, "watchpack": { "version": "1.6.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/watchpack/-/watchpack-1.6.0.tgz", - "integrity": "sha1-S8EsLr6KonenHx0/FNaFx7RGzQA=", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", + "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", "dev": true, "requires": { "chokidar": "^2.0.2", @@ -16789,8 +18944,8 @@ }, "wbuf": { "version": "1.7.3", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha1-wdjRSTFtPqhShIiVy2oL/oh7h98=", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", "dev": true, "requires": { "minimalistic-assert": "^1.0.0" @@ -16814,8 +18969,8 @@ }, "webpack": { "version": "4.29.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/webpack/-/webpack-4.29.0.tgz", - "integrity": "sha1-8s/vg/euQEuoif9dQ+/Shcom51A=", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.29.0.tgz", + "integrity": "sha512-pxdGG0keDBtamE1mNvT5zyBdx+7wkh6mh7uzMOo/uRQ/fhsdj5FXkh/j5mapzs060forql1oXqXN9HJGju+y7w==", "dev": true, "requires": { "@webassemblyjs/ast": "1.7.11", @@ -16846,8 +19001,8 @@ "dependencies": { "schema-utils": { "version": "0.4.7", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/schema-utils/-/schema-utils-0.4.7.tgz", - "integrity": "sha1-unT1l9K+LqiAExdG7hfQoJPGgYc=", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", "dev": true, "requires": { "ajv": "^6.1.0", @@ -16885,8 +19040,8 @@ }, "webpack-dev-middleware": { "version": "3.5.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/webpack-dev-middleware/-/webpack-dev-middleware-3.5.1.tgz", - "integrity": "sha1-kmW3dC71D1T1TB2a8CL8F8G+m4g=", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.5.1.tgz", + "integrity": "sha512-4dwCh/AyMOYAybggUr8fiCkRnjVDp+Cqlr9c+aaNB3GJYgRGYQWJ1YX/WAKUNA9dPNHZ6QSN2lYDKqjKSI8Vqw==", "dev": true, "requires": { "memory-fs": "~0.4.1", @@ -16896,17 +19051,17 @@ }, "dependencies": { "mime": { - "version": "2.4.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/mime/-/mime-2.4.2.tgz", - "integrity": "sha1-zlIppemf/DE6usgGtILBDnumrHg=", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.3.tgz", + "integrity": "sha512-QgrPRJfE+riq5TPZMcHZOtm8c6K/yYrMbKIoRfapfiGLxS8OTeIfRhUGW5LU7MlRa52KOAGCfUNruqLrIBvWZw==", "dev": true } } }, "webpack-dev-server": { "version": "3.1.14", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/webpack-dev-server/-/webpack-dev-server-3.1.14.tgz", - "integrity": "sha1-YPsim5l/xaCh/GI3QhAwGAlZ1Gk=", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.1.14.tgz", + "integrity": "sha512-mGXDgz5SlTxcF3hUpfC8hrQ11yhAttuUQWf1Wmb+6zo3x6rb7b9mIfuQvAPLdfDRCGRGvakBWHdHOa0I9p/EVQ==", "dev": true, "requires": { "ansi-html": "0.0.7", @@ -16955,8 +19110,8 @@ }, "cliui": { "version": "4.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha1-NIQi2+gtgAswIu709qwQvy5NG0k=", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", "dev": true, "requires": { "string-width": "^2.1.1", @@ -16977,8 +19132,8 @@ }, "cross-spawn": { "version": "6.0.5", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha1-Sl7Hxk364iw6FBJNus3uhG2Ay8Q=", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "dev": true, "requires": { "nice-try": "^1.0.4", @@ -16990,8 +19145,8 @@ }, "debug": { "version": "3.2.6", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/debug/-/debug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { "ms": "^2.1.1" @@ -16999,8 +19154,8 @@ }, "decamelize": { "version": "2.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/decamelize/-/decamelize-2.0.0.tgz", - "integrity": "sha1-ZW17vICUxMeI6lPFhAkIycfQY8c=", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", "dev": true, "requires": { "xregexp": "4.0.0" @@ -17008,8 +19163,8 @@ }, "execa": { "version": "1.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/execa/-/execa-1.0.0.tgz", - "integrity": "sha1-xiNqW7TfbW8V6I5/AXeYIWdJ3dg=", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", "dev": true, "requires": { "cross-spawn": "^6.0.0", @@ -17023,8 +19178,8 @@ }, "find-up": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { "locate-path": "^3.0.0" @@ -17032,8 +19187,8 @@ }, "get-stream": { "version": "4.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha1-wbJVV189wh1Zv8ec09K0axw6VLU=", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", "dev": true, "requires": { "pump": "^3.0.0" @@ -17041,8 +19196,8 @@ }, "invert-kv": { "version": "2.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha1-c5P1r6Weyf9fZ6J2INEcIm4+7AI=", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", "dev": true }, "is-fullwidth-code-point": { @@ -17053,8 +19208,8 @@ }, "lcid": { "version": "2.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha1-bvXS32DlL4LrIopMNz6NHzlyU88=", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", "dev": true, "requires": { "invert-kv": "^2.0.0" @@ -17062,8 +19217,8 @@ }, "locate-path": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { "p-locate": "^3.0.0", @@ -17071,21 +19226,21 @@ } }, "mime": { - "version": "2.4.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/mime/-/mime-2.4.2.tgz", - "integrity": "sha1-zlIppemf/DE6usgGtILBDnumrHg=", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.3.tgz", + "integrity": "sha512-QgrPRJfE+riq5TPZMcHZOtm8c6K/yYrMbKIoRfapfiGLxS8OTeIfRhUGW5LU7MlRa52KOAGCfUNruqLrIBvWZw==", "dev": true }, "ms": { "version": "2.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/ms/-/ms-2.1.1.tgz", - "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true }, "os-locale": { "version": "3.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha1-qAKm7hfyTBBIOrmTVxnO9O0Wvxo=", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", "dev": true, "requires": { "execa": "^1.0.0", @@ -17095,8 +19250,8 @@ }, "p-limit": { "version": "2.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha1-QXyZQeYCepq8ulCS3SkE4lW1+8I=", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -17104,8 +19259,8 @@ }, "p-locate": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { "p-limit": "^2.0.0" @@ -17113,14 +19268,14 @@ }, "p-try": { "version": "2.2.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, "pump": { "version": "3.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/pump/-/pump-3.0.0.tgz", - "integrity": "sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ=", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "requires": { "end-of-stream": "^1.1.0", @@ -17129,8 +19284,8 @@ }, "string-width": { "version": "2.1.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { "is-fullwidth-code-point": "^2.0.0", @@ -17150,8 +19305,8 @@ }, "supports-color": { "version": "5.5.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { "has-flag": "^3.0.0" @@ -17159,8 +19314,8 @@ }, "webpack-dev-middleware": { "version": "3.4.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz", - "integrity": "sha1-ETL+zJAm/ZDw7O2sXL/3XR+0WJA=", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz", + "integrity": "sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA==", "dev": true, "requires": { "memory-fs": "~0.4.1", @@ -17177,8 +19332,8 @@ }, "yargs": { "version": "12.0.2", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/yargs/-/yargs-12.0.2.tgz", - "integrity": "sha1-/lgjQ2k5KvM+y+9TgZFx7/D1qtw=", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", + "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", "dev": true, "requires": { "cliui": "^4.0.0", @@ -17197,8 +19352,8 @@ }, "yargs-parser": { "version": "10.1.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha1-cgImW4n36eny5XZeD+c1qQXtuqg=", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", "dev": true, "requires": { "camelcase": "^4.1.0" @@ -17208,8 +19363,8 @@ }, "webpack-log": { "version": "2.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/webpack-log/-/webpack-log-2.0.0.tgz", - "integrity": "sha1-W3ko4GN1k/EZ0y9iJ8HgrDHhtH8=", + "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", + "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", "dev": true, "requires": { "ansi-colors": "^3.0.0", @@ -17218,8 +19373,8 @@ }, "webpack-merge": { "version": "4.2.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/webpack-merge/-/webpack-merge-4.2.1.tgz", - "integrity": "sha1-XpI8+ALqKs5P1a8dMkc2imM0ibQ=", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.1.tgz", + "integrity": "sha512-4p8WQyS98bUJcCvFMbdGZyZmsKuWjWVnVHnAS3FFg0HDaRVrPbkivx2RYCre8UiemD67RsiFFLfn4JhLAin8Vw==", "dev": true, "requires": { "lodash": "^4.17.5" @@ -17227,8 +19382,8 @@ }, "webpack-sources": { "version": "1.3.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/webpack-sources/-/webpack-sources-1.3.0.tgz", - "integrity": "sha1-KijcufH0X+lg2PFJMlK17mUw+oU=", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", "dev": true, "requires": { "source-list-map": "^2.0.0", @@ -17237,16 +19392,16 @@ "dependencies": { "source-map": { "version": "0.6.1", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true } } }, "webpack-subresource-integrity": { "version": "1.1.0-rc.6", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/webpack-subresource-integrity/-/webpack-subresource-integrity-1.1.0-rc.6.tgz", - "integrity": "sha1-N/bxJk4es3jkFGWpjagPrXariIY=", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.1.0-rc.6.tgz", + "integrity": "sha512-Az7y8xTniNhaA0620AV1KPwWOqawurVVDzQSpPAeR5RwNbL91GoBSJAAo9cfd+GiFHwsS5bbHepBw1e6Hzxy4w==", "dev": true, "requires": { "webpack-core": "^0.6.8" @@ -17423,8 +19578,8 @@ }, "worker-farm": { "version": "1.7.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/worker-farm/-/worker-farm-1.7.0.tgz", - "integrity": "sha1-JqlMU5G7ypJhUgAvabhKS/dy5ag=", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", "dev": true, "requires": { "errno": "~0.1.7" @@ -17520,8 +19675,8 @@ }, "xregexp": { "version": "4.0.0", - "resolved": "https://bin.sbb.ch/artifactory/api/npm/npm/xregexp/-/xregexp-4.0.0.tgz", - "integrity": "sha1-5pgYneSd0qGMxWh7BeF8jkOUMCA=", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", "dev": true }, "xtend": { diff --git a/package.json b/package.json index ebb2abc49d..b6f2b628d9 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,16 @@ { - "name": "@sbb-esta/angular-showcase", - "version": "0.0.0-PLACEHOLDER", + "name": "sbb-angular", + "version": "7.0.0-1", + "private": true, "scripts": { "ng": "ng", "start": "ng serve", "clean": "rimraf dist coverage lintReport.json", - "build": "run-s angular-icons angular-public angular-showcase", + "lint": "run-p angular-icons:lint angular-public:lint angular-showcase:lint", + "build": "run-s angular-icons:build angular-public:build angular-showcase:build", + "test": "run-s angular-public:test", + "sonar": "node ./scripts/sonar.js", + "release": "standard-version", "angular-icons": "run-s angular-icons:*", "angular-icons:lint": "ng lint @sbb-esta/angular-icons", "angular-icons:build": "run-s angular-icons:build:*", @@ -22,9 +27,8 @@ "angular-public": "run-s angular-public:lint angular-public:test angular-public:build", "angular-public:lint": "run-p angular-public:lint:*", "angular-public:lint:console": "ng lint @sbb-esta/angular-icons", - "angular-public:lint:report": "ng lint @sbb-esta/angular-icons > lintReport.json", + "angular-public:lint:report": "ng lint @sbb-esta/angular-icons --format=json > lintReport.json", "angular-public:test": "ng test @sbb-esta/angular-public -c ci", - "angular-public:sonar": "cross-env-shell \"sonar-scanner -Dsonar.projectVersion=$npm_package_version -Dsonar.branch.name=$BRANCH_NAME\"", "angular-public:build": "run-s angular-public:build:*", "angular-public:build:ng": "ng build @sbb-esta/angular-public", "angular-public:build:styles": "scss-bundle -e ./projects/sbb-esta/angular-public/src/styles/main.scss -d ./dist/sbb-esta/angular-public/styles.scss", @@ -33,9 +37,14 @@ "angular-showcase": "run-s angular-showcase:lint angular-showcase:test angular-showcase:build", "angular-showcase:lint": "ng lint angular-showcase", "angular-showcase:test": "ng test angular-showcase -c ci", - "angular-showcase:build": "ng build angular-showcase --prod", + "angular-showcase:build": "run-s angular-showcase:build:*", + "angular-showcase:build:ng": "ng build angular-showcase --prod", + "angular-showcase:build:license": "copyfiles LICENSE ./dist/angular-showcase/", + "angular-showcase:build:packagejson": "cd projects/angular-showcase && copyfiles package.json ../../dist/angular-showcase", "angular-showcase:e2e": "ng e2e angular-showcase", - "angular-showcase:docs": "gulp docs" + "angular-showcase:docs": "gulp docs", + "publish:staging": "node ./scripts/publish.js", + "publish:library": "node ./scripts/publish.js release" }, "repository": { "type": "git", @@ -47,35 +56,34 @@ }, "homepage": "https://sbb-angular.app.sbb.ch/latest", "dependencies": { - "@angular/animations": "^7.2.0", - "@angular/cdk": "^7.2.1", - "@angular/common": "^7.2.0", - "@angular/compiler": "^7.2.0", - "@angular/core": "^7.2.0", - "@angular/forms": "^7.2.0", - "@angular/http": "^7.2.0", - "@angular/platform-browser": "^7.2.0", - "@angular/platform-browser-dynamic": "^7.2.0", - "@angular/router": "^7.2.0", - "@ng-bootstrap/ng-bootstrap": "^3.3.1", - "bootstrap": "^4.2.1", + "@angular/animations": "^7.2.15", + "@angular/cdk": "^7.3.7", + "@angular/common": "^7.2.15", + "@angular/compiler": "^7.2.15", + "@angular/core": "^7.2.15", + "@angular/forms": "^7.2.15", + "@angular/http": "^7.2.15", + "@angular/platform-browser": "^7.2.15", + "@angular/platform-browser-dynamic": "^7.2.15", + "@angular/router": "^7.2.15", + "@ng-bootstrap/ng-bootstrap": "^4.1.3", + "bootstrap": "^4.3.1", "core-js": "^2.6.2", "font-awesome": "^4.7.0", "ngx-monaco-editor": "^6.0.0", - "ngx-perfect-scrollbar": "^7.2.0", + "ngx-perfect-scrollbar": "^7.2.1", "rxjs": "6.3.3", - "util": "^0.10.4", "zone.js": "^0.8.27" }, "devDependencies": { - "@angular-devkit/build-angular": "0.13.8", - "@angular-devkit/build-ng-packagr": "0.13.8", - "@angular-devkit/core": "^7.3.8", - "@angular-devkit/schematics": "^7.3.8", - "@angular-devkit/schematics-cli": "0.13.8", - "@angular/cli": "7.3.8", - "@angular/compiler-cli": "^7.2.0", - "@angular/language-service": "^7.2.0", + "@angular-devkit/build-angular": "0.13.9", + "@angular-devkit/build-ng-packagr": "0.13.9", + "@angular-devkit/core": "^7.3.9", + "@angular-devkit/schematics": "^7.3.9", + "@angular-devkit/schematics-cli": "0.13.9", + "@angular/cli": "7.3.9", + "@angular/compiler-cli": "^7.2.15", + "@angular/language-service": "^7.2.15", "@types/grecaptcha": "^2.0.36", "@types/gulp": "^4.0.5", "@types/jasmine": "~2.8.8", @@ -104,32 +112,36 @@ "gulp-sass": "^4.0.2", "gulp-transform": "^3.0.5", "gulp-util": "^3.0.8", - "highlight.js": "^9.13.1", + "highlight.js": "^9.15.6", "jasmine-core": "~2.99.1", "jasmine-spec-reporter": "~4.2.1", "karma": "~3.1.0", - "karma-browserstack-launcher": "^1.3.0", + "karma-browserstack-launcher": "^1.5.1", "karma-chrome-launcher": "~2.2.0", - "karma-coverage-istanbul-reporter": "^2.0.3", + "karma-coverage-istanbul-reporter": "^2.0.5", "karma-firefox-launcher": "^1.1.0", "karma-jasmine": "~1.1.2", "karma-jasmine-html-reporter": "^0.2.2", + "karma-junit-reporter": "^1.2.0", + "karma-parallel": "^0.3.1", "karma-sonarqube-reporter": "^1.2.3", "karma-sourcemap-loader": "^0.3.7", "lodash": "^4.17.11", + "ng-bullet": "^1.0.3", "ng-packagr": "^4.4.5", "node-sass": "^4.11.0", "npm-run-all": "^4.1.5", "prettier": "1.17.0", "protractor": "^5.4.2", - "rollup": "^1.9.0", + "rollup": "^1.12.3", "rollup-plugin-copy-glob": "^0.3.0", - "rollup-plugin-typescript2": "^0.20.1", + "rollup-plugin-typescript2": "^0.21.1", "run-sequence": "^2.2.1", - "scss-bundle": "^2.4.0", + "scss-bundle": "^2.5.1", "semver": "^5.6.0", - "sonar-scanner": "^3.1.0", - "svgo": "^1.0.5", + "sonarqube-scanner": "^2.4.0", + "standard-version": "^6.0.1", + "svgo": "^1.2.2", "ts-node": "^7.0.1", "tsconfig-paths": "^3.7.0", "tsickle": "^0.33.1", @@ -144,12 +156,14 @@ "optionalDependencies": { "puppeteer": "^1.11.0" }, - "staging": { - "root": "./dist/angular-showcase" + "standard-version": { + "skip": { + "tag": true + } }, "prettier": { "singleQuote": true, - "endOfLine": "lf", + "endOfLine": "lf", "overrides": [ { "files": "*.html", diff --git a/projects/angular-showcase/karma.conf.js b/projects/angular-showcase/karma.conf.js index d74d4707ea..a2bec640d5 100644 --- a/projects/angular-showcase/karma.conf.js +++ b/projects/angular-showcase/karma.conf.js @@ -1,7 +1,7 @@ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html -if (process.env.BUILD_NUMBER) { +if (process.env.CONTINUOUS_INTEGRATION) { process.env.CHROME_BIN = require('puppeteer').executablePath(); } @@ -33,6 +33,10 @@ module.exports = function(config) { logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], - singleRun: false + singleRun: false, + captureTimeout: 100000, + browserNoActivityTimeout: 100000, + browserDisconnectTimeout: 100000, + browserDisconnectTolerance: 3 }); }; diff --git a/projects/angular-showcase/package.json b/projects/angular-showcase/package.json new file mode 100644 index 0000000000..4c4e7c0639 --- /dev/null +++ b/projects/angular-showcase/package.json @@ -0,0 +1,16 @@ +{ + "name": "@sbb-esta/angular-showcase", + "version": "0.0.0-PLACEHOLDER", + "publishConfig": { + "access": "public" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/SchweizerischeBundesbahnen/sbb-angular.git" + }, + "license": "Apache-2.0", + "bugs": { + "url": "https://github.com/SchweizerischeBundesbahnen/sbb-angular/issues" + }, + "homepage": "https://sbb-angular.app.sbb.ch/latest" +} \ No newline at end of file diff --git a/projects/angular-showcase/src/app/app.module.ts b/projects/angular-showcase/src/app/app.module.ts index 2fda5c00b9..3bbb98d95f 100644 --- a/projects/angular-showcase/src/app/app.module.ts +++ b/projects/angular-showcase/src/app/app.module.ts @@ -4,12 +4,12 @@ import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { BrowserModule } from '@angular/platform-browser'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { NgbModule } from '@ng-bootstrap/ng-bootstrap'; -import { MonacoEditorModule } from 'ngx-monaco-editor'; -import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; import { - IconCollectionModule, - ICON_COMPONENT_LIST + ICON_COMPONENT_LIST, + IconCollectionModule } from '@sbb-esta/angular-icons'; +import { MonacoEditorModule } from 'ngx-monaco-editor'; +import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; import { AppRoutingModule } from './app-routing.module'; import { AppComponent } from './app.component'; diff --git a/projects/angular-showcase/src/app/examples/accordion-showcase/accordion-showcase.component.ts b/projects/angular-showcase/src/app/examples/accordion-showcase/accordion-showcase.component.ts index d442eb0944..99257c516b 100644 --- a/projects/angular-showcase/src/app/examples/accordion-showcase/accordion-showcase.component.ts +++ b/projects/angular-showcase/src/app/examples/accordion-showcase/accordion-showcase.component.ts @@ -7,8 +7,8 @@ import { ViewChildren } from '@angular/core'; import { FormArray, FormControl, FormGroup } from '@angular/forms'; -import { Subscription } from 'rxjs'; import { AccordionComponent } from '@sbb-esta/angular-public'; +import { Subscription } from 'rxjs'; @Component({ selector: 'sbb-accordion-showcase', diff --git a/projects/angular-showcase/src/app/examples/examples.module.ts b/projects/angular-showcase/src/app/examples/examples.module.ts index f8dfb32618..9a0086ea7b 100644 --- a/projects/angular-showcase/src/app/examples/examples.module.ts +++ b/projects/angular-showcase/src/app/examples/examples.module.ts @@ -7,6 +7,7 @@ import { RouterModule } from '@angular/router'; import { MonacoEditorModule } from 'ngx-monaco-editor'; +import { IconCollectionModule } from '@sbb-esta/angular-icons'; import { AccordionModule, AutocompleteModule, @@ -42,7 +43,6 @@ import { TooltipModule, UserMenuModule } from '@sbb-esta/angular-public'; -import { IconCollectionModule } from '@sbb-esta/angular-icons'; import { AccordionShowcaseComponent } from './accordion-showcase/accordion-showcase.component'; import { AutocompleteShowcaseComponent } from './autocomplete-showcase/autocomplete-showcase.component'; diff --git a/projects/angular-showcase/src/app/examples/file-selector-showcase/file-selector-showcase.component.ts b/projects/angular-showcase/src/app/examples/file-selector-showcase/file-selector-showcase.component.ts index ccecb098db..399821fb19 100644 --- a/projects/angular-showcase/src/app/examples/file-selector-showcase/file-selector-showcase.component.ts +++ b/projects/angular-showcase/src/app/examples/file-selector-showcase/file-selector-showcase.component.ts @@ -1,10 +1,10 @@ import { Component, OnDestroy, OnInit } from '@angular/core'; import { FormControl } from '@angular/forms'; -import { Subscription } from 'rxjs'; import { FileSelectorTypesService, FileTypeCategory } from '@sbb-esta/angular-public'; +import { Subscription } from 'rxjs'; @Component({ selector: 'sbb-file-selector-showcase', diff --git a/projects/angular-showcase/src/app/examples/ghettobox-showcase/ghettobox-showcase.component.ts b/projects/angular-showcase/src/app/examples/ghettobox-showcase/ghettobox-showcase.component.ts index e3655a9793..9c137746f9 100644 --- a/projects/angular-showcase/src/app/examples/ghettobox-showcase/ghettobox-showcase.component.ts +++ b/projects/angular-showcase/src/app/examples/ghettobox-showcase/ghettobox-showcase.component.ts @@ -1,13 +1,13 @@ import { Component, OnDestroy, TemplateRef, ViewChild } from '@angular/core'; import { ActivatedRoute } from '@angular/router'; -import { Subscription } from 'rxjs'; -import { first } from 'rxjs/operators'; import { GhettoboxDeletedEvent, GhettoboxRef, GhettoboxService, LinkGeneratorResult } from '@sbb-esta/angular-public'; +import { Subscription } from 'rxjs'; +import { first } from 'rxjs/operators'; @Component({ selector: 'sbb-ghettobox-showcase', diff --git a/projects/angular-showcase/src/app/examples/tag-showcase/tag-showcase.component.ts b/projects/angular-showcase/src/app/examples/tag-showcase/tag-showcase.component.ts index c9d41327cc..f58c3c9d64 100644 --- a/projects/angular-showcase/src/app/examples/tag-showcase/tag-showcase.component.ts +++ b/projects/angular-showcase/src/app/examples/tag-showcase/tag-showcase.component.ts @@ -1,7 +1,7 @@ import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core'; import { FormArray, FormBuilder, FormControl, FormGroup } from '@angular/forms'; -import { Subscription } from 'rxjs'; import { Tag, TagChange } from '@sbb-esta/angular-public'; +import { Subscription } from 'rxjs'; const tagItems: Tag[] = [ { diff --git a/projects/sbb-esta/angular-business/karma.conf.js b/projects/sbb-esta/angular-business/karma.conf.js index 77d486f794..2b27b9d117 100644 --- a/projects/sbb-esta/angular-business/karma.conf.js +++ b/projects/sbb-esta/angular-business/karma.conf.js @@ -1,6 +1,10 @@ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html +if (process.env.CONTINUOUS_INTEGRATION) { + process.env.CHROME_BIN = require('puppeteer').executablePath(); +} + module.exports = function(config) { config.set({ basePath: '', @@ -30,6 +34,10 @@ module.exports = function(config) { autoWatch: true, browsers: ['Chrome'], singleRun: false, - restartOnFileChange: true + restartOnFileChange: true, + captureTimeout: 100000, + browserNoActivityTimeout: 100000, + browserDisconnectTimeout: 100000, + browserDisconnectTolerance: 3 }); }; diff --git a/projects/sbb-esta/angular-business/package.json b/projects/sbb-esta/angular-business/package.json index 7bd54d3b95..f9c8a7c238 100644 --- a/projects/sbb-esta/angular-business/package.json +++ b/projects/sbb-esta/angular-business/package.json @@ -1,6 +1,9 @@ { "name": "@sbb-esta/angular-business", "version": "0.0.0-PLACEHOLDER", + "publishConfig": { + "access": "public" + }, "repository": { "type": "git", "url": "git+https://github.com/SchweizerischeBundesbahnen/sbb-angular.git" diff --git a/projects/sbb-esta/angular-icons/karma.conf.js b/projects/sbb-esta/angular-icons/karma.conf.js index 95c5d1c059..d5e25065d6 100644 --- a/projects/sbb-esta/angular-icons/karma.conf.js +++ b/projects/sbb-esta/angular-icons/karma.conf.js @@ -1,6 +1,10 @@ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html +if (process.env.CONTINUOUS_INTEGRATION) { + process.env.CHROME_BIN = require('puppeteer').executablePath(); +} + module.exports = function(config) { config.set({ basePath: '', @@ -30,6 +34,10 @@ module.exports = function(config) { autoWatch: true, browsers: ['Chrome'], singleRun: false, - restartOnFileChange: true + restartOnFileChange: true, + captureTimeout: 100000, + browserNoActivityTimeout: 100000, + browserDisconnectTimeout: 100000, + browserDisconnectTolerance: 3 }); }; diff --git a/projects/sbb-esta/angular-icons/package.json b/projects/sbb-esta/angular-icons/package.json index 989e64c418..8eebea18b3 100644 --- a/projects/sbb-esta/angular-icons/package.json +++ b/projects/sbb-esta/angular-icons/package.json @@ -1,6 +1,9 @@ { "name": "@sbb-esta/angular-icons", "version": "0.0.0-PLACEHOLDER", + "publishConfig": { + "access": "public" + }, "repository": { "type": "git", "url": "git+https://github.com/SchweizerischeBundesbahnen/sbb-angular.git" diff --git a/projects/sbb-esta/angular-public/karma.conf.js b/projects/sbb-esta/angular-public/karma.conf.js index 14f4e69bbc..99d830d22a 100644 --- a/projects/sbb-esta/angular-public/karma.conf.js +++ b/projects/sbb-esta/angular-public/karma.conf.js @@ -1,11 +1,15 @@ // Karma configuration file, see link for more information // https://karma-runner.github.io/1.0/config/configuration-file.html -if (process.env.BUILD_NUMBER) { +if (process.env.CONTINUOUS_INTEGRATION) { process.env.CHROME_BIN = require('puppeteer').executablePath(); } module.exports = function(config) { + const dist = require('path').join( + __dirname, + '../../../coverage/sbb-esta/angular-public' + ); config.set({ basePath: '', frameworks: ['jasmine', '@angular-devkit/build-angular'], @@ -15,6 +19,7 @@ module.exports = function(config) { require('karma-firefox-launcher'), require('karma-browserstack-launcher'), require('karma-jasmine-html-reporter'), + require('karma-junit-reporter'), require('karma-sonarqube-reporter'), require('karma-coverage-istanbul-reporter'), require('karma-sourcemap-loader'), @@ -23,32 +28,77 @@ module.exports = function(config) { client: { clearContext: false, // leave Jasmine Spec Runner output visible in browser jasmine: { - timeout: 20000 + timeout: 100000 } }, + browserStack: { + project: '@sbb-esta/angular-public Unit Tests', + startTunnel: true, + retryLimit: 3, + timeout: 1800, + video: false + }, + junitReporter: { + outputDir: dist, + suite: 'unit-tests', + outputFile: 'unit-tests.xml', + useBrowserName: false + }, sonarqubeReporter: { basePath: 'projects/sbb-esta/angular-public/src', - outputFolder: require('path').join( - __dirname, - '../../../coverage/sbb-esta/angular-public' - ), + outputFolder: dist, reportName: () => 'sonarqube.xml' }, coverageIstanbulReporter: { - dir: require('path').join( - __dirname, - '../../../coverage/sbb-esta/angular-public' - ), - reports: ['html', 'lcovonly'], + dir: dist, + reports: ['html', 'lcovonly', 'cobertura'], fixWebpackSourcePaths: true }, - reporters: ['progress', 'kjhtml', 'sonarqube'], + reporters: ['progress', 'kjhtml', 'junit', 'sonarqube'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], + customLaunchers: { + BsChrome: { + base: 'BrowserStack', + os: 'Windows', + os_version: '10', + browser: 'Chrome' + } + }, singleRun: false, - restartOnFileChange: true + // Try Websocket for a faster transmission first. Fallback to polling if necessary. + transports: ['websocket', 'polling'], + browserNoActivityTimeout: 300000, + browserDisconnectTolerance: 1 }); + + if (process.env.TRAVIS) { + // This defines how often a given browser should be launched in the same Travis + // container. This is helpful if we want to shard tests across the same browser. + const parallelBrowserInstances = + Number(process.env.KARMA_PARALLEL_BROWSERS) || 1; + + // In case there should be multiple instances of the browsers, we need to set up the + // the karma-parallel plugin. + if (parallelBrowserInstances > 1) { + config.frameworks.unshift('parallel'); + config.plugins.push(require('karma-parallel')); + config.parallelOptions = { + executors: parallelBrowserInstances, + shardStrategy: 'round-robin' + }; + } + + if ( + process.env.BROWSERSTACK_USERNAME && + process.env.BROWSERSTACK_ACCESS_KEY + ) { + config.browserDisconnectTimeout = 180000; + config.browserDisconnectTolerance = 3; + config.captureTimeout = 180000; + } + } }; diff --git a/projects/sbb-esta/angular-public/package.json b/projects/sbb-esta/angular-public/package.json index 9d30434faa..e5724aaa9f 100644 --- a/projects/sbb-esta/angular-public/package.json +++ b/projects/sbb-esta/angular-public/package.json @@ -1,6 +1,9 @@ { "name": "@sbb-esta/angular-public", "version": "0.0.0-PLACEHOLDER", + "publishConfig": { + "access": "public" + }, "repository": { "type": "git", "url": "git+https://github.com/SchweizerischeBundesbahnen/sbb-angular.git" diff --git a/projects/sbb-esta/angular-public/src/lib/_common/host-class.spec.ts b/projects/sbb-esta/angular-public/src/lib/_common/host-class.spec.ts index aacfdbfcc2..921ef42046 100644 --- a/projects/sbb-esta/angular-public/src/lib/_common/host-class.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/_common/host-class.spec.ts @@ -1,5 +1,6 @@ import { Component, ElementRef, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { configureTestSuite } from 'ng-bullet'; import { HostClass } from './host-class'; @@ -24,11 +25,11 @@ describe('HostClass', () => { let component: TestComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [TestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TestComponent); @@ -86,11 +87,11 @@ describe('HostClass', () => { } } - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [TestComponent, WrappedTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(WrappedTestComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/accordion/accordion/accordion.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/accordion/accordion/accordion.component.spec.ts index 7b5ce31d09..32154fd3f5 100644 --- a/projects/sbb-esta/angular-public/src/lib/accordion/accordion/accordion.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/accordion/accordion/accordion.component.spec.ts @@ -3,6 +3,7 @@ import { Component, QueryList, ViewChild, ViewChildren } from '@angular/core'; import { async, inject, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; +import { configureTestSuite } from 'ng-bullet'; import { dispatchEvent, @@ -71,7 +72,7 @@ class AccordionWithHideToggleComponent { } describe('AccordionComponent', () => { - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [BrowserAnimationsModule, AccordionModule], declarations: [ @@ -80,8 +81,7 @@ describe('AccordionComponent', () => { SetOfItemsComponent ] }); - TestBed.compileComponents(); - })); + }); it('should allow multiple items to be expanded simultaneously', () => { const fixture = TestBed.createComponent(SetOfItemsComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/accordion/expansion-panel/expansion-panel.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/accordion/expansion-panel/expansion-panel.component.spec.ts index fe06333ad6..a93fecf251 100644 --- a/projects/sbb-esta/angular-public/src/lib/accordion/expansion-panel/expansion-panel.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/accordion/expansion-panel/expansion-panel.component.spec.ts @@ -1,7 +1,6 @@ import { ENTER, SPACE } from '@angular/cdk/keycodes'; import { Component, ViewChild } from '@angular/core'; import { - async, ComponentFixture, fakeAsync, flush, @@ -10,6 +9,7 @@ import { } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; +import { configureTestSuite } from 'ng-bullet'; import { dispatchKeyboardEvent } from '../../_common/testing/dispatch-events'; import { AccordionModule, ExpansionPanelComponent } from '../accordion'; @@ -125,7 +125,7 @@ describe('ExpansionPanelComponent', () => { jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout; }); - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [NoopAnimationsModule, AccordionModule], declarations: [ @@ -137,8 +137,7 @@ describe('ExpansionPanelComponent', () => { PanelWithTwoWayBindingComponent ] }); - TestBed.compileComponents(); - })); + }); it('should expand and collapse the panel', fakeAsync(() => { const fixture = TestBed.createComponent(PanelWithContentComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/breadcrumb/breadcrumb/breadcrumb.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/breadcrumb/breadcrumb/breadcrumb.component.spec.ts index 402f769858..a00c0b1270 100644 --- a/projects/sbb-esta/angular-public/src/lib/breadcrumb/breadcrumb/breadcrumb.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/breadcrumb/breadcrumb/breadcrumb.component.spec.ts @@ -1,9 +1,10 @@ import { CommonModule } from '@angular/common'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { IconChevronRightModule, IconChevronSmallDownModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { DropdownModule } from '../../dropdown/dropdown'; @@ -13,7 +14,7 @@ describe('BreadcrumbComponent', () => { let component: BreadcrumbComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [BreadcrumbComponent], imports: [ @@ -22,8 +23,8 @@ describe('BreadcrumbComponent', () => { IconChevronRightModule, IconChevronSmallDownModule ] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(BreadcrumbComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/breadcrumb/breadcrumbs/breadcrumbs.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/breadcrumb/breadcrumbs/breadcrumbs.component.spec.ts index aaee1599ef..f0cb39586b 100644 --- a/projects/sbb-esta/angular-public/src/lib/breadcrumb/breadcrumbs/breadcrumbs.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/breadcrumb/breadcrumbs/breadcrumbs.component.spec.ts @@ -1,25 +1,20 @@ import { CommonModule, Location } from '@angular/common'; import { Component } from '@angular/core'; import { - async, ComponentFixture, - fakeAsync, - TestBed, - tick -} from '@angular/core/testing'; + TestBed} from '@angular/core/testing'; import { By } from '@angular/platform-browser'; -import { ActivatedRoute, Router } from '@angular/router'; +import { Router } from '@angular/router'; import { RouterTestingModule } from '@angular/router/testing'; import { IconChevronRightModule, IconChevronSmallDownCircleModule, IconHouseModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { - dispatchEvent, - dispatchMouseEvent -} from '../../_common/testing/dispatch-events'; + dispatchEvent} from '../../_common/testing/dispatch-events'; import { createMouseEvent } from '../../_common/testing/event-objects'; import { DropdownModule } from '../../dropdown/dropdown'; import { BreadcrumbModule } from '../breadcrumb.module'; @@ -158,7 +153,7 @@ describe('BreadcrumbsComponent', () => { let component: BreadcrumbsComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [BreadcrumbsComponent], imports: [ @@ -167,8 +162,8 @@ describe('BreadcrumbsComponent', () => { IconChevronRightModule, IconChevronSmallDownCircleModule ] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(BreadcrumbsComponent); @@ -188,7 +183,7 @@ describe('Breadcrumb behaviour Test', () => { let location: Location = null; let router: Router; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ BreadcrumbModule, @@ -197,8 +192,8 @@ describe('Breadcrumb behaviour Test', () => { IconHouseModule ], declarations: [BreadcrumbsTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureTest = TestBed.createComponent(BreadcrumbsTestComponent); @@ -299,7 +294,7 @@ describe('Breadcrumb behaviour Test 2', () => { let location: Location = null; let router: Router; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ BreadcrumbModule, @@ -309,8 +304,8 @@ describe('Breadcrumb behaviour Test 2', () => { DropdownModule ], declarations: [BreadcrumbsTest2Component] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureTest = TestBed.createComponent(BreadcrumbsTest2Component); @@ -439,7 +434,7 @@ describe('Breadcrumb behaviour Test 3', () => { let location: Location = null; let router: Router; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ BreadcrumbModule, @@ -449,8 +444,8 @@ describe('Breadcrumb behaviour Test 3', () => { DropdownModule ], declarations: [BreadcrumbsTest3Component] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureTest = TestBed.createComponent(BreadcrumbsTest3Component); diff --git a/projects/sbb-esta/angular-public/src/lib/button/button/button.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/button/button/button.component.spec.ts index 54b17ef85d..638c3ea355 100644 --- a/projects/sbb-esta/angular-public/src/lib/button/button/button.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/button/button/button.component.spec.ts @@ -5,6 +5,7 @@ import { IconArrowRightComponent as TestIconComponent, IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { ButtonIconDirective } from './button-icon.directive'; import { ButtonComponent } from './button.component'; @@ -40,7 +41,7 @@ describe('ButtonComponent', () => { let component: ButtonTemplateTestComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [IconCollectionModule], declarations: [ @@ -48,10 +49,11 @@ describe('ButtonComponent', () => { ButtonTemplateTestComponent, ButtonIconDirective ] - }).compileComponents(); - })); + }); + }); beforeEach(() => { + jasmine.DEFAULT_TIMEOUT_INTERVAL = 100000; fixture = TestBed.createComponent(ButtonTemplateTestComponent); component = fixture.componentInstance; }); diff --git a/projects/sbb-esta/angular-public/src/lib/checkbox-panel/checkbox-panel/checkbox-panel.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/checkbox-panel/checkbox-panel/checkbox-panel.component.spec.ts index 820a94060b..d46b52789a 100644 --- a/projects/sbb-esta/angular-public/src/lib/checkbox-panel/checkbox-panel/checkbox-panel.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/checkbox-panel/checkbox-panel/checkbox-panel.component.spec.ts @@ -3,6 +3,7 @@ import { Component, QueryList, ViewChildren } from '@angular/core'; import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { FormsModule } from '@angular/forms'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { CheckboxPanelModule } from '../checkbox-panel.module'; @@ -42,12 +43,12 @@ describe('CheckboxPanelComponent', () => { let component: CheckboxPanelComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [CommonModule, FormsModule, CheckboxPanelModule], declarations: [ModelOptionSelectionMultipleTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(CheckboxPanelComponent); @@ -70,12 +71,12 @@ describe('CheckboxPanelComponent using mock component', () => { ModelOptionSelectionMultipleTestComponent >; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [FormsModule, CheckboxPanelModule], declarations: [ModelOptionSelectionMultipleTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { modelComponentFixture = TestBed.createComponent( diff --git a/projects/sbb-esta/angular-public/src/lib/checkbox/checkbox/checkbox.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/checkbox/checkbox/checkbox.component.spec.ts index fee90dae1e..a354e48ff6 100644 --- a/projects/sbb-esta/angular-public/src/lib/checkbox/checkbox/checkbox.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/checkbox/checkbox/checkbox.component.spec.ts @@ -1,9 +1,10 @@ import { CommonModule } from '@angular/common'; import { ChangeDetectionStrategy, Component } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { FormsModule } from '@angular/forms'; import { By } from '@angular/platform-browser'; import { IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { CheckboxComponent } from './checkbox.component'; @@ -28,21 +29,18 @@ describe('CheckboxComponent', () => { let component: CheckboxComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [CommonModule, IconCollectionModule], declarations: [CheckboxComponent] - }) - .overrideComponent(CheckboxComponent, { - set: { changeDetection: ChangeDetectionStrategy.Default } - }) - .compileComponents(); - })); + }).overrideComponent(CheckboxComponent, { + set: { changeDetection: ChangeDetectionStrategy.Default } + }); + }); beforeEach(() => { fixture = TestBed.createComponent(CheckboxComponent); component = fixture.componentInstance; - fixture.detectChanges(); }); @@ -59,16 +57,14 @@ describe('CheckboxComponent using mock component', () => { let modelComponent: ModelCheckboxTestComponent; let modelComponentFixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [CommonModule, FormsModule, IconCollectionModule], declarations: [CheckboxComponent, ModelCheckboxTestComponent] - }) - .overrideComponent(CheckboxComponent, { - set: { changeDetection: ChangeDetectionStrategy.Default } - }) - .compileComponents(); - })); + }).overrideComponent(CheckboxComponent, { + set: { changeDetection: ChangeDetectionStrategy.Default } + }); + }); beforeEach(() => { modelComponentFixture = TestBed.createComponent(ModelCheckboxTestComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/datepicker/calendar-body/calendar-body.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/datepicker/calendar-body/calendar-body.component.spec.ts index 4fd3b0b561..47cd823b00 100644 --- a/projects/sbb-esta/angular-public/src/lib/datepicker/calendar-body/calendar-body.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/datepicker/calendar-body/calendar-body.component.spec.ts @@ -1,6 +1,7 @@ import { Component } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { DateAdapter } from '../date-adapter'; import { SBB_DATE_FORMATS } from '../date-formats'; @@ -66,7 +67,7 @@ function createCell(value: number) { } describe('SbbCalendarBody', () => { - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [ CalendarBodyComponent, @@ -80,9 +81,7 @@ describe('SbbCalendarBody', () => { { provide: SBB_DATE_FORMATS, useValue: DATE_PIPE_DATE_FORMATS } ] }); - - TestBed.compileComponents(); - })); + }); describe('standard calendar body', () => { let fixture: ComponentFixture; diff --git a/projects/sbb-esta/angular-public/src/lib/datepicker/calendar/calendar-header.spec.ts b/projects/sbb-esta/angular-public/src/lib/datepicker/calendar/calendar-header.spec.ts index b2b0e75aaf..9b14e96910 100644 --- a/projects/sbb-esta/angular-public/src/lib/datepicker/calendar/calendar-header.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/datepicker/calendar/calendar-header.spec.ts @@ -1,6 +1,7 @@ import { Component } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { FEB, JAN } from '../../_common/testing/dates-constants'; import { DatepickerModule } from '../datepicker.module'; @@ -26,7 +27,7 @@ class StandardCalendarComponent { } describe('CalendarHeaderComponent', () => { - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [DatepickerModule], declarations: [ @@ -34,9 +35,7 @@ describe('CalendarHeaderComponent', () => { StandardCalendarComponent ] }); - - TestBed.compileComponents(); - })); + }); describe('standard calendar', () => { let fixture: ComponentFixture; diff --git a/projects/sbb-esta/angular-public/src/lib/datepicker/calendar/calendar.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/datepicker/calendar/calendar.component.spec.ts index 8385a7d87f..c2b732d44f 100644 --- a/projects/sbb-esta/angular-public/src/lib/datepicker/calendar/calendar.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/datepicker/calendar/calendar.component.spec.ts @@ -1,12 +1,8 @@ -import { ENTER, RIGHT_ARROW } from '@angular/cdk/keycodes'; +import { ENTER } from '@angular/cdk/keycodes'; import { Component, NgZone } from '@angular/core'; -import { - async, - ComponentFixture, - inject, - TestBed -} from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { DEC, FEB, JAN, JUL, NOV } from '../../_common/testing/dates-constants'; import { @@ -96,7 +92,7 @@ class CalendarWithSelectableMinDateComponent { describe('CalendarComponent', () => { let zone: MockNgZone; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [DatepickerModule], declarations: [ @@ -110,9 +106,7 @@ describe('CalendarComponent', () => { { provide: NgZone, useFactory: () => (zone = new MockNgZone()) } ] }); - - TestBed.compileComponents(); - })); + }); describe('standard calendar', () => { let fixture: ComponentFixture; diff --git a/projects/sbb-esta/angular-public/src/lib/datepicker/month-view/month-view.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/datepicker/month-view/month-view.component.spec.ts index ef4fa5c124..fd1d53ca15 100644 --- a/projects/sbb-esta/angular-public/src/lib/datepicker/month-view/month-view.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/datepicker/month-view/month-view.component.spec.ts @@ -1,4 +1,3 @@ -import { Direction, Directionality } from '@angular/cdk/bidi'; import { DOWN_ARROW, END, @@ -11,8 +10,9 @@ import { UP_ARROW } from '@angular/cdk/keycodes'; import { Component } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { DEC, FEB, JAN, MAR, NOV } from '../../_common/testing/dates-constants'; import { @@ -23,7 +23,6 @@ import { CalendarBodyComponent } from '../calendar-body/calendar-body.component' import { DateAdapter } from '../date-adapter'; import { SBB_DATE_FORMATS } from '../date-formats'; import { DATE_PIPE_DATE_FORMATS } from '../date-pipe-date-formats'; -import { DatepickerModule } from '../datepicker.module'; import { NativeDateAdapter } from '../native-date-adapter'; import { MonthViewComponent } from './month-view.component'; @@ -57,7 +56,7 @@ class MonthViewWithDateFilterComponent { } describe('MonthViewComponent', () => { - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [ CalendarBodyComponent, @@ -72,9 +71,7 @@ describe('MonthViewComponent', () => { { provide: SBB_DATE_FORMATS, useValue: DATE_PIPE_DATE_FORMATS } ] }); - - TestBed.compileComponents(); - })); + }); describe('standard month view', () => { let fixture: ComponentFixture; diff --git a/projects/sbb-esta/angular-public/src/lib/datepicker/test.ts b/projects/sbb-esta/angular-public/src/lib/datepicker/test.ts index 5f21a20582..a82449f2cb 100644 --- a/projects/sbb-esta/angular-public/src/lib/datepicker/test.ts +++ b/projects/sbb-esta/angular-public/src/lib/datepicker/test.ts @@ -13,10 +13,12 @@ import { declare const require: any; // First, initialize the Angular testing environment. -getTestBed().initTestEnvironment( - BrowserDynamicTestingModule, - platformBrowserDynamicTesting() -); +if (!getTestBed().platform) { + getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting() + ); +} // Then we find all the tests. const context = require.context('./', true, /\.spec\.ts$/); // And load the modules. diff --git a/projects/sbb-esta/angular-public/src/lib/dropdown/dropdown/dropdown.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/dropdown/dropdown/dropdown.component.spec.ts index 7bc8ed28c9..ca82ba1f93 100644 --- a/projects/sbb-esta/angular-public/src/lib/dropdown/dropdown/dropdown.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/dropdown/dropdown/dropdown.component.spec.ts @@ -4,6 +4,7 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { Router } from '@angular/router'; import { RouterTestingModule } from '@angular/router/testing'; +import { configureTestSuite } from 'ng-bullet'; import { LinkGeneratorResult } from '../../pagination/page-descriptor.model'; import { @@ -77,7 +78,7 @@ describe('DropdownComponent', () => { let component: DropdownComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [ DropdownComponent, @@ -87,8 +88,8 @@ describe('DropdownComponent', () => { ], imports: [CommonModule], providers: [DROPDOWN_SCROLL_STRATEGY_FACTORY_PROVIDER] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(DropdownComponent); @@ -107,12 +108,12 @@ describe('DropdownComponent test', () => { let location: Location = null; let router: Router; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [DropdownTestComponent], imports: [DropdownModule, RouterTestingModule] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(DropdownTestComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/file-selector/file-selector/file-selector.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/file-selector/file-selector/file-selector.component.spec.ts index 9faed4c63e..f01a514ac0 100644 --- a/projects/sbb-esta/angular-public/src/lib/file-selector/file-selector/file-selector.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/file-selector/file-selector/file-selector.component.spec.ts @@ -1,6 +1,7 @@ import { Component } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { dispatchFakeEvent } from '../../_common/testing/dispatch-events'; import { FileSelectorModule } from '../file-selector.module'; @@ -98,12 +99,12 @@ describe('FileSelectorComponent using mock component', () => { let component: FileSelectorTestComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [FileSelectorModule], declarations: [FileSelectorTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(FileSelectorTestComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/ghettobox/ghettobox-container/ghettobox-container.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/ghettobox/ghettobox-container/ghettobox-container.component.spec.ts index 0470e952b5..c9fce6d9b1 100644 --- a/projects/sbb-esta/angular-public/src/lib/ghettobox/ghettobox-container/ghettobox-container.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/ghettobox/ghettobox-container/ghettobox-container.component.spec.ts @@ -1,10 +1,11 @@ import { PortalModule } from '@angular/cdk/portal'; import { Component, DebugElement, TemplateRef, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { RouterTestingModule } from '@angular/router/testing'; import { IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { LinkGeneratorResult } from '../../pagination/pagination'; import { Ghettobox } from '../ghettobox/ghettobox-ref'; @@ -12,7 +13,6 @@ import { GhettoboxComponent } from '../ghettobox/ghettobox.component'; import { GhettoboxService } from '../ghettobox/ghettobox.service'; import { GhettoboxContainerComponent } from './ghettobox-container.component'; -import { GhettoboxContainerService } from './ghettobox-container.service'; // tslint:disable:i18n @Component({ @@ -48,7 +48,7 @@ describe('GhettoboxContainerComponent', () => { let fixture: ComponentFixture; let ghettoboxService: GhettoboxService; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ RouterTestingModule, @@ -61,11 +61,11 @@ describe('GhettoboxContainerComponent', () => { GhettoboxContainerTestComponent, GhettoboxComponent ] - }).compileComponents(); - })); + }); + }); beforeEach(() => { - jasmine.DEFAULT_TIMEOUT_INTERVAL = 120000; + jasmine.DEFAULT_TIMEOUT_INTERVAL = 200000; ghettoboxService = TestBed.get(GhettoboxService); fixture = TestBed.createComponent(GhettoboxContainerTestComponent); component = fixture.componentInstance; diff --git a/projects/sbb-esta/angular-public/src/lib/ghettobox/ghettobox/ghettobox.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/ghettobox/ghettobox/ghettobox.component.spec.ts index 401f9f91e7..85354978e7 100644 --- a/projects/sbb-esta/angular-public/src/lib/ghettobox/ghettobox/ghettobox.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/ghettobox/ghettobox/ghettobox.component.spec.ts @@ -1,9 +1,10 @@ import { Component, DebugElement } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { RouterTestingModule } from '@angular/router/testing'; import { IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { GhettoboxComponent } from '../ghettobox/ghettobox.component'; @@ -37,7 +38,7 @@ describe('GhettoboxComponent', () => { let component: GhettoboxTestComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ RouterTestingModule, @@ -49,10 +50,11 @@ describe('GhettoboxComponent', () => { GhettoboxComponent, GhettoboxIconDirective ] - }).compileComponents(); - })); + }); + }); beforeEach(() => { + jasmine.DEFAULT_TIMEOUT_INTERVAL = 100000; fixture = TestBed.createComponent(GhettoboxTestComponent); component = fixture.componentInstance; fixture.detectChanges(); diff --git a/projects/sbb-esta/angular-public/src/lib/links/link/link.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/links/link/link.component.spec.ts index 8fd0b93898..4a3fa2ed3b 100644 --- a/projects/sbb-esta/angular-public/src/lib/links/link/link.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/links/link/link.component.spec.ts @@ -1,7 +1,8 @@ import { ChangeDetectionStrategy, SimpleChange } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { LinkComponent } from './link.component'; @@ -9,16 +10,14 @@ describe('LinkComponent', () => { let component: LinkComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [IconCollectionModule], declarations: [LinkComponent] - }) - .overrideComponent(LinkComponent, { - set: { changeDetection: ChangeDetectionStrategy.Default } - }) - .compileComponents(); - })); + }).overrideComponent(LinkComponent, { + set: { changeDetection: ChangeDetectionStrategy.Default } + }); + }); beforeEach(() => { fixture = TestBed.createComponent(LinkComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/links/social-link/social-link.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/links/social-link/social-link.component.spec.ts index 49e26614c6..1cbadfec82 100644 --- a/projects/sbb-esta/angular-public/src/lib/links/social-link/social-link.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/links/social-link/social-link.component.spec.ts @@ -1,7 +1,8 @@ import { ChangeDetectionStrategy } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { SocialLinkComponent } from './social-link.component'; @@ -9,16 +10,14 @@ describe('SocialLinkComponent', () => { let component: SocialLinkComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [SocialLinkComponent], imports: [IconCollectionModule] - }) - .overrideComponent(SocialLinkComponent, { - set: { changeDetection: ChangeDetectionStrategy.Default } - }) - .compileComponents(); - })); + }).overrideComponent(SocialLinkComponent, { + set: { changeDetection: ChangeDetectionStrategy.Default } + }); + }); beforeEach(() => { fixture = TestBed.createComponent(SocialLinkComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/loading/loading/loading.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/loading/loading/loading.component.spec.ts index 557effbb28..60382df9ac 100644 --- a/projects/sbb-esta/angular-public/src/lib/loading/loading/loading.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/loading/loading/loading.component.spec.ts @@ -1,4 +1,5 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { configureTestSuite } from 'ng-bullet'; import { LoadingComponent } from './loading.component'; @@ -6,11 +7,11 @@ describe('LoadingComponent', () => { let component: LoadingComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [LoadingComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(LoadingComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/notification/notification/notification.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/notification/notification/notification.component.spec.ts index adedd45554..2e3d18473e 100644 --- a/projects/sbb-esta/angular-public/src/lib/notification/notification/notification.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/notification/notification/notification.component.spec.ts @@ -1,9 +1,10 @@ import { CommonModule } from '@angular/common'; import { Component } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { FormsModule } from '@angular/forms'; import { By } from '@angular/platform-browser'; import { IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { NotificationComponent, @@ -26,12 +27,12 @@ describe('NotificationComponent', () => { let component: NotificationComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [IconCollectionModule, CommonModule], declarations: [NotificationComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(NotificationComponent); @@ -47,12 +48,13 @@ describe('NotificationComponent', () => { describe('behaviour', () => { let testFixture: ComponentFixture; let testComponent: NotificationMockComponent; - beforeEach(async(() => { + + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [CommonModule, FormsModule, IconCollectionModule], declarations: [NotificationComponent, NotificationMockComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { testFixture = TestBed.createComponent(NotificationMockComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/pagination/navigation/navigation.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/pagination/navigation/navigation.component.spec.ts index 75428041d7..b1d7b8d77a 100644 --- a/projects/sbb-esta/angular-public/src/lib/pagination/navigation/navigation.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/pagination/navigation/navigation.component.spec.ts @@ -1,7 +1,8 @@ import { CommonModule } from '@angular/common'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { RouterTestingModule } from '@angular/router/testing'; import { IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { NavigationComponent } from './navigation.component'; @@ -9,12 +10,12 @@ describe('NavigationComponent', () => { let component: NavigationComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [IconCollectionModule, CommonModule, RouterTestingModule], declarations: [NavigationComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(NavigationComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/pagination/navigation/navigation.component.ts b/projects/sbb-esta/angular-public/src/lib/pagination/navigation/navigation.component.ts index 51105aed39..34b2b57cc6 100644 --- a/projects/sbb-esta/angular-public/src/lib/pagination/navigation/navigation.component.ts +++ b/projects/sbb-esta/angular-public/src/lib/pagination/navigation/navigation.component.ts @@ -11,7 +11,6 @@ import { ViewEncapsulation } from '@angular/core'; import { Router } from '@angular/router'; -import { isString } from 'util'; import { NavigationPageChangeEvent, diff --git a/projects/sbb-esta/angular-public/src/lib/pagination/pagination/pagination.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/pagination/pagination/pagination.component.spec.ts index 853220422c..d59780229f 100644 --- a/projects/sbb-esta/angular-public/src/lib/pagination/pagination/pagination.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/pagination/pagination/pagination.component.spec.ts @@ -6,6 +6,7 @@ import { By } from '@angular/platform-browser'; import { ActivatedRoute, Router } from '@angular/router'; import { RouterTestingModule } from '@angular/router/testing'; import { IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { dispatchEvent } from '../../_common/testing/dispatch-events'; import { createMouseEvent } from '../../_common/testing/event-objects'; @@ -73,12 +74,12 @@ describe('PaginationComponent', () => { let component: PaginationComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [IconCollectionModule, CommonModule, RouterTestingModule], declarations: [PaginationComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(PaginationComponent); @@ -96,12 +97,12 @@ describe('PaginationComponent behaviour', () => { let component: PaginationTestComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [PaginationModule, RouterTestingModule], declarations: [PaginationTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(PaginationTestComponent); @@ -206,12 +207,12 @@ describe('Pagination as links behaviour ', () => { let location: Location = null; let router: Router; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [PaginationModule, RouterTestingModule], declarations: [PaginationLinkTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(PaginationLinkTestComponent); @@ -507,12 +508,12 @@ describe('NavigationComponent', () => { let component: NavigationComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [IconCollectionModule, CommonModule, RouterTestingModule], declarations: [NavigationComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(NavigationComponent); @@ -529,7 +530,7 @@ describe('NavigationComponent behaviour', () => { let component: NavigationTestComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ PaginationModule, @@ -538,8 +539,8 @@ describe('NavigationComponent behaviour', () => { FormsModule ], declarations: [NavigationTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(NavigationTestComponent); @@ -621,7 +622,7 @@ describe('Navigation as links behaviour ', () => { let location: Location = null; let router: Router; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ PaginationModule, @@ -630,8 +631,8 @@ describe('Navigation as links behaviour ', () => { FormsModule ], declarations: [NavigationLinkTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(NavigationLinkTestComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/processflow/processflow/processflow.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/processflow/processflow/processflow.component.spec.ts index 109816d64a..70cd03a3a7 100644 --- a/projects/sbb-esta/angular-public/src/lib/processflow/processflow/processflow.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/processflow/processflow/processflow.component.spec.ts @@ -1,6 +1,7 @@ import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { dispatchMouseEvent } from '../../_common/testing/dispatch-events'; import { ProcessflowModule } from '../processflow.module'; @@ -38,12 +39,12 @@ describe('ProcessflowComponent', () => { let component: ProcessflowComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [IconCollectionModule], declarations: [ProcessflowComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(ProcessflowComponent); @@ -60,12 +61,12 @@ describe('ProcessflowComponent user interaction', () => { let component: ProcessflowTestComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [IconCollectionModule, ProcessflowModule], declarations: [ProcessflowTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(ProcessflowTestComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/radio-button-panel/radio-button-panel/radio-button-panel.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/radio-button-panel/radio-button-panel/radio-button-panel.component.spec.ts index 28c17490de..b7c93e8fe4 100644 --- a/projects/sbb-esta/angular-public/src/lib/radio-button-panel/radio-button-panel/radio-button-panel.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/radio-button-panel/radio-button-panel/radio-button-panel.component.spec.ts @@ -8,6 +8,7 @@ import { createFakeEvent } from '../../_common/testing/event-objects'; import { RadioButtonPanelModule } from '../radio-button-panel.module'; import { RadioButtonPanelComponent } from './radio-button-panel.component'; +import { configureTestSuite } from 'ng-bullet'; // tslint:disable:i18n @Component({ @@ -42,12 +43,12 @@ describe('RadioButtonPanelComponent', () => { let component: RadioButtonPanelComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [CommonModule, FormsModule, RadioButtonPanelModule], declarations: [ModelOptionSelectionTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(RadioButtonPanelComponent); @@ -70,12 +71,12 @@ describe('RadioButtonPanelComponent using mock component', () => { ModelOptionSelectionTestComponent >; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [FormsModule, RadioButtonPanelModule], declarations: [ModelOptionSelectionTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { modelComponentFixture = TestBed.createComponent( diff --git a/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button-registry.service.spec.ts b/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button-registry.service.spec.ts index e356775db0..820e08deba 100644 --- a/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button-registry.service.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button-registry.service.spec.ts @@ -17,7 +17,7 @@ describe('RadioButtonRegistryService', () => { }); it('should not have radio buttons', () => { - expect(Object.keys(service.accessors).length).toBe(0); + expect((service as any)._accessors.length).toBe(0); }); it('should have a radio button', () => { @@ -25,27 +25,16 @@ describe('RadioButtonRegistryService', () => { 'writeValue' ]); component.name = 'test-name'; - service.add(component); + service.add(undefined, component); - expect(service.accessors['test-name'].length).toBe(1); - }); - - it('group', () => { - const component = jasmine.createSpyObj('RadioButtonComponent', [ - 'writeValue' - ]); - component.name = 'test-name'; - component.inputId = 'test-comp-id-1'; - service.add(component); - - component.name = 'test-name'; - component.inputId = 'test-comp-id-2'; - service.add(component); - - expect(Object.keys(service.accessors).length).toBe(1); + expect((service as any)._accessors.length).toBe(1); }); it('should have a radio button checked in the same group', () => { + const control = { + control: Symbol('control'), + _parent: Symbol('parent') + } as any; const component = jasmine.createSpyObj('RadioButtonComponent', [ 'writeValue', 'uncheck' @@ -55,7 +44,8 @@ describe('RadioButtonRegistryService', () => { }); component.name = 'test-name'; component.inputId = 'test-comp-id-1'; - service.add(component); + component._control = control; + service.add(control, component); const component2 = jasmine.createSpyObj('RadioButtonComponent', [ 'writeValue', @@ -66,19 +56,20 @@ describe('RadioButtonRegistryService', () => { }); component2.name = 'test-name'; component2.inputId = 'test-comp-id-2'; - service.add(component2); + component2._control = control; + service.add(control, component2); component.checked = true; service.select(component); - expect(service.accessors['test-name'][0].checked).toBeTruthy(); - expect(service.accessors['test-name'][1].checked).toBeFalsy(); + expect(component.checked).toBeTruthy(); + expect(component2.checked).toBeFalsy(); component2.checked = true; service.select(component2); - expect(service.accessors['test-name'][0].checked).toBeFalsy(); - expect(service.accessors['test-name'][1].checked).toBeTruthy(); + expect(component.checked).toBeFalsy(); + expect(component2.checked).toBeTruthy(); }); it('should be empty on remove', () => { @@ -87,11 +78,11 @@ describe('RadioButtonRegistryService', () => { ]); component.name = 'test-name'; component.inputId = 'test-comp-id-1'; - service.add(component); + service.add(undefined, component); - expect(service.accessors['test-name'].length).toBe(1); + expect((service as any)._accessors.length).toBe(1); service.remove(component); - expect(service.accessors['test-name']).toBeUndefined(); + expect((service as any)._accessors.length).toBe(0); }); }); diff --git a/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button-registry.service.ts b/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button-registry.service.ts index ef960be6ef..e5224c99b4 100644 --- a/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button-registry.service.ts +++ b/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button-registry.service.ts @@ -1,4 +1,5 @@ import { Injectable } from '@angular/core'; +import { NgControl } from '@angular/forms'; import { RadioButton } from './radio-button.model'; @@ -6,36 +7,37 @@ import { RadioButton } from './radio-button.model'; providedIn: 'root' }) export class RadioButtonRegistryService { - private _accessors: { [name: string]: RadioButton[] } = {}; + private _accessors: Array<[any, RadioButton]> = []; - get accessors(): {} { - return this._accessors; - } - - add(accessor: RadioButton) { - if (!this._accessors[accessor.name]) { - this._accessors[accessor.name] = []; - } - this._accessors[accessor.name].push(accessor); + add(control: NgControl | null, accessor: RadioButton) { + this._accessors.push([control || {}, accessor]); } remove(accessor: RadioButton) { - if (this._accessors[accessor.name]) { - this._accessors[accessor.name] = this._accessors[accessor.name].filter( - a => a !== accessor - ); - } - if ( - this._accessors[accessor.name] && - this._accessors[accessor.name].length === 0 - ) { - delete this._accessors[accessor.name]; + for (let i = this._accessors.length - 1; i >= 0; --i) { + if (this._accessors[i][1] === accessor) { + this._accessors.splice(i, 1); + return; + } } } select(accessor: RadioButton) { - this._accessors[accessor.name] - .filter(a => a !== accessor) - .forEach(c => c.uncheck()); + this._accessors + .filter(c => this._isSameGroup(c, accessor) && c[1] !== accessor) + .forEach(c => c[1].uncheck()); + } + + private _isSameGroup( + controlPair: [any, RadioButton], + accessor: RadioButton + ): boolean { + if (!controlPair[0].control || !accessor._control) { + return false; + } + return ( + controlPair[0]._parent === (accessor._control as any)._parent && + controlPair[1].name === accessor.name + ); } } diff --git a/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.component.spec.ts index 5685d79662..5afdd5c8a6 100644 --- a/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.component.spec.ts @@ -1,13 +1,9 @@ import { CommonModule } from '@angular/common'; import { ChangeDetectionStrategy, Component } from '@angular/core'; import { async, ComponentFixture, TestBed } from '@angular/core/testing'; -import { - FormControl, - FormGroup, - FormsModule, - ReactiveFormsModule -} from '@angular/forms'; +import { FormsModule } from '@angular/forms'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { RadioButtonRegistryService } from './radio-button-registry.service'; import { RadioButtonComponent } from './radio-button.component'; @@ -42,17 +38,15 @@ describe('RadioButtonComponent', () => { let component: RadioButtonComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [CommonModule], declarations: [RadioButtonComponent], providers: [RadioButtonRegistryService] - }) - .overrideComponent(RadioButtonComponent, { - set: { changeDetection: ChangeDetectionStrategy.Default } - }) - .compileComponents(); - })); + }).overrideComponent(RadioButtonComponent, { + set: { changeDetection: ChangeDetectionStrategy.Default } + }); + }); beforeEach(() => { fixture = TestBed.createComponent(RadioButtonComponent); @@ -74,17 +68,15 @@ describe('RadioButtonComponent using mock component', () => { let modelComponent: ModelRadioButtonTestComponent; let modelComponentFixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [CommonModule, FormsModule], declarations: [RadioButtonComponent, ModelRadioButtonTestComponent], providers: [RadioButtonRegistryService] - }) - .overrideComponent(RadioButtonComponent, { - set: { changeDetection: ChangeDetectionStrategy.Default } - }) - .compileComponents(); - })); + }).overrideComponent(RadioButtonComponent, { + set: { changeDetection: ChangeDetectionStrategy.Default } + }); + }); beforeEach(() => { modelComponentFixture = TestBed.createComponent( diff --git a/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.component.ts b/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.component.ts index ef7175623d..63fa4bdaec 100644 --- a/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.component.ts +++ b/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.component.ts @@ -1,13 +1,19 @@ +import { coerceBooleanProperty } from '@angular/cdk/coercion'; import { ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, + Injector, Input, OnDestroy, OnInit } from '@angular/core'; -import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms'; +import { + ControlValueAccessor, + NG_VALUE_ACCESSOR, + NgControl +} from '@angular/forms'; import { RadioButtonRegistryService } from './radio-button-registry.service'; import { RadioButton } from './radio-button.model'; @@ -68,7 +74,7 @@ export class RadioButtonComponent extends RadioButton return this._checked; } set checked(value: boolean) { - this._checked = value; + this._checked = coerceBooleanProperty(value); if (this._checked) { this._registry.select(this); @@ -88,19 +94,22 @@ export class RadioButtonComponent extends RadioButton constructor( protected readonly _changeDetector: ChangeDetectorRef, - protected readonly _registry: RadioButtonRegistryService + protected readonly _registry: RadioButtonRegistryService, + private readonly _injector: Injector ) { super(); } ngOnInit(): void { + this._control = this._injector.get(NgControl, null); this._checkName(); - this._registry.add(this); + this._registry.add(this._control, this); } ngOnDestroy(): void { this._registry.remove(this); } + writeValue(value: any): void { this.checked = this.value === value; } diff --git a/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.model.ts b/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.model.ts index c242287acb..60568b2113 100644 --- a/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.model.ts +++ b/projects/sbb-esta/angular-public/src/lib/radio-button/radio-button/radio-button.model.ts @@ -1,8 +1,13 @@ import { Input } from '@angular/core'; +import { NgControl } from '@angular/forms'; export abstract class RadioButton { @Input() name: string; @Input() value: any; + /** @internal */ + // tslint:disable-next-line: naming-convention + _control: NgControl; + abstract uncheck(); } diff --git a/projects/sbb-esta/angular-public/src/lib/search/search/search.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/search/search/search.component.spec.ts index fb5473555c..899b9b1e1b 100644 --- a/projects/sbb-esta/angular-public/src/lib/search/search/search.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/search/search/search.component.spec.ts @@ -1,15 +1,10 @@ import { DOWN_ARROW, ENTER, TAB, UP_ARROW } from '@angular/cdk/keycodes'; import { OverlayModule } from '@angular/cdk/overlay'; import { Component, ViewChild } from '@angular/core'; -import { - async, - ComponentFixture, - fakeAsync, - TestBed, - tick -} from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; +import { configureTestSuite } from 'ng-bullet'; import { dispatchFakeEvent, @@ -136,12 +131,12 @@ describe('SearchComponent', () => { let component: SimpleSearchComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [SearchModule, NoopAnimationsModule], declarations: [SimpleSearchComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(SimpleSearchComponent); @@ -185,7 +180,7 @@ describe('SearchComponent', () => { let component: SimpleSearchAutocompleteComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ SearchModule, @@ -195,8 +190,8 @@ describe('SearchComponent', () => { OverlayModule ], declarations: [SimpleSearchAutocompleteComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(SimpleSearchAutocompleteComponent); @@ -318,7 +313,7 @@ describe('SearchComponent', () => { let component: SimpleSearchHeaderComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ SearchModule, @@ -328,8 +323,8 @@ describe('SearchComponent', () => { OverlayModule ], declarations: [SimpleSearchHeaderComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(SimpleSearchHeaderComponent); @@ -382,7 +377,7 @@ describe('SearchComponent', () => { let component: SimpleSearchAutocompleteHeaderComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ SearchModule, @@ -392,8 +387,8 @@ describe('SearchComponent', () => { OverlayModule ], declarations: [SimpleSearchAutocompleteHeaderComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent( diff --git a/projects/sbb-esta/angular-public/src/lib/tabs/tabs/tabs.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/tabs/tabs/tabs.component.spec.ts index ad7e4e22b7..865be2289e 100644 --- a/projects/sbb-esta/angular-public/src/lib/tabs/tabs/tabs.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/tabs/tabs/tabs.component.spec.ts @@ -1,6 +1,7 @@ -import { AfterViewInit, Component, DebugElement, OnInit } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { Component, DebugElement } from '@angular/core'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; import { dispatchEvent } from '../../_common/testing/dispatch-events'; @@ -36,8 +37,8 @@ import { TabsComponent } from './tabs.component'; }) class TabsTestComponent { isVisible = true; - disableChange(evt) {} - removeChange(evt) {} + disableChange() {} + removeChange() {} } describe('TabsComponent', () => { @@ -45,12 +46,12 @@ describe('TabsComponent', () => { let fixture: ComponentFixture; let tabs: DebugElement[]; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [TabsTestComponent, TabsComponent, TabComponent], imports: [PerfectScrollbarModule, BadgeModule] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TabsTestComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/tabs/tabs/tabs.component.ts b/projects/sbb-esta/angular-public/src/lib/tabs/tabs/tabs.component.ts index f6172230e8..2dfde513dd 100644 --- a/projects/sbb-esta/angular-public/src/lib/tabs/tabs/tabs.component.ts +++ b/projects/sbb-esta/angular-public/src/lib/tabs/tabs/tabs.component.ts @@ -156,7 +156,7 @@ export class TabsComponent implements AfterContentInit, OnDestroy { } } - private _handleKeyUp(keyCode) { + private _handleKeyUp(keyCode: number) { const tabLabels = this.labels.toArray(); const hasReachEnd = this._handleKeyCodeReturnHasReachEnd(keyCode); const tabToFocus = tabLabels[this.tabListIndex]; @@ -176,33 +176,28 @@ export class TabsComponent implements AfterContentInit, OnDestroy { } } - private _handleKeyCodeReturnHasReachEnd(keyCode): boolean { - let hasReachEnd = false; - + private _handleKeyCodeReturnHasReachEnd(keyCode: number): boolean { switch (keyCode) { case LEFT_ARROW: case UP_ARROW: if (this.tabListIndex > 0) { this.tabListIndex -= 1; + break; } else { - hasReachEnd = true; + return true; } - break; case RIGHT_ARROW: case DOWN_ARROW: if (this.tabListIndex < this.tabs.length - 1) { this.tabListIndex += 1; + break; } else { - hasReachEnd = true; + return true; } - break; - - default: - this.tabListIndex = this.tabListIndex; } - return hasReachEnd; + return false; } /** diff --git a/projects/sbb-esta/angular-public/src/lib/tag/tags/tags.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/tag/tags/tags.component.spec.ts index 75365d4ab5..f08be39db3 100644 --- a/projects/sbb-esta/angular-public/src/lib/tag/tags/tags.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/tag/tags/tags.component.spec.ts @@ -3,9 +3,10 @@ import { Component } from '@angular/core'; import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { FormsModule } from '@angular/forms'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { BadgeModule } from '../../badge/badge.module'; -import { Tag, TagChange } from '../tag.model'; +import { Tag } from '../tag.model'; import { TagComponent } from '../tag/tag.component'; import { TagsComponent } from './tags.component'; @@ -58,12 +59,12 @@ describe('TagsComponent', () => { let component: TagsComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [BadgeModule], declarations: [TagsComponent, TagComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TagsComponent); @@ -84,12 +85,12 @@ describe('TagsComponent with Model attached', () => { let component: TagsTestFixtureComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [CommonModule, FormsModule, BadgeModule], declarations: [TagsComponent, TagComponent, TagsTestFixtureComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TagsTestFixtureComponent); @@ -237,12 +238,12 @@ describe('TagsComponent with Model attached', () => { describe('TagComponent as a Link Tag', () => { let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [BadgeModule], declarations: [TagComponent, TagLinkTestFixtureComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TagLinkTestFixtureComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/textarea/textarea/textarea.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/textarea/textarea/textarea.component.spec.ts index 22cff13ae8..6bf018287a 100644 --- a/projects/sbb-esta/angular-public/src/lib/textarea/textarea/textarea.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/textarea/textarea/textarea.component.spec.ts @@ -7,6 +7,7 @@ import { import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { FormsModule } from '@angular/forms'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { typeInElement } from '../../_common/testing/type-in-element'; @@ -31,16 +32,14 @@ describe('TextareaComponent', () => { let component: TextareaComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [TextFieldModule], declarations: [TextareaComponent] - }) - .overrideComponent(TextareaComponent, { - set: { changeDetection: ChangeDetectionStrategy.Default } - }) - .compileComponents(); - })); + }).overrideComponent(TextareaComponent, { + set: { changeDetection: ChangeDetectionStrategy.Default } + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TextareaComponent); @@ -58,16 +57,14 @@ describe('TextareaComponent behaviour', () => { let fixture: ComponentFixture; let innerComponent: DebugElement; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [TextFieldModule, FormsModule], declarations: [TextareaTestComponent, TextareaComponent] - }) - .overrideComponent(TextareaComponent, { - set: { changeDetection: ChangeDetectionStrategy.Default } - }) - .compileComponents(); - })); + }).overrideComponent(TextareaComponent, { + set: { changeDetection: ChangeDetectionStrategy.Default } + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TextareaTestComponent); @@ -141,16 +138,14 @@ describe('TextareaComponent digits counter', () => { let component: TextareaComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [TextFieldModule], declarations: [TextareaComponent] - }) - .overrideComponent(TextareaComponent, { - set: { changeDetection: ChangeDetectionStrategy.Default } - }) - .compileComponents(); - })); + }).overrideComponent(TextareaComponent, { + set: { changeDetection: ChangeDetectionStrategy.Default } + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TextareaComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand-collapsed/textexpand-collapsed.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand-collapsed/textexpand-collapsed.component.spec.ts index eb8113be5c..b888a0f0a6 100644 --- a/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand-collapsed/textexpand-collapsed.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand-collapsed/textexpand-collapsed.component.spec.ts @@ -1,4 +1,5 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { configureTestSuite } from 'ng-bullet'; import { TextexpandCollapsedComponent } from './textexpand-collapsed.component'; @@ -6,11 +7,11 @@ describe('TextexpandCollapsedComponent', () => { let component: TextexpandCollapsedComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [TextexpandCollapsedComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TextexpandCollapsedComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand-expanded/textexpand-expanded.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand-expanded/textexpand-expanded.component.spec.ts index 9ad70536ff..2a8c6c0be5 100644 --- a/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand-expanded/textexpand-expanded.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand-expanded/textexpand-expanded.component.spec.ts @@ -1,4 +1,5 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { configureTestSuite } from 'ng-bullet'; import { TextexpandExpandedComponent } from './textexpand-expanded.component'; @@ -6,11 +7,11 @@ describe('TextexpandExpandedComponent', () => { let component: TextexpandExpandedComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [TextexpandExpandedComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TextexpandExpandedComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand/textexpand.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand/textexpand.component.spec.ts index 88f8fdb10d..fa5982b151 100644 --- a/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand/textexpand.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/textexpand/textexpand/textexpand.component.spec.ts @@ -1,11 +1,7 @@ -import { - ChangeDetectionStrategy, - Component, - ContentChild, - ViewChild -} from '@angular/core'; +import { Component, ContentChild, ViewChild } from '@angular/core'; import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { TextexpandCollapsedComponent } from '../textexpand-collapsed/textexpand-collapsed.component'; import { TextexpandExpandedComponent } from '../textexpand-expanded/textexpand-expanded.component'; @@ -43,15 +39,15 @@ describe('TextexpandComponent', () => { let componentExpanded: TextexpandExpandedComponent; let fixtureExpanded: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [ TextexpandComponent, TextexpandCollapsedComponent, TextexpandExpandedComponent ] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureCollapsed = TestBed.createComponent(TextexpandCollapsedComponent); @@ -102,12 +98,12 @@ describe('TextexpandComponent using mock component', () => { let componentTest: TextexpandTestComponent; let fixtureTest: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [TextexpandModule], declarations: [TextexpandTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureTest = TestBed.createComponent(TextexpandTestComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/time-input/time-input/time-input.directive.spec.ts b/projects/sbb-esta/angular-public/src/lib/time-input/time-input/time-input.directive.spec.ts index cf89290164..70f04cf362 100644 --- a/projects/sbb-esta/angular-public/src/lib/time-input/time-input/time-input.directive.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/time-input/time-input/time-input.directive.spec.ts @@ -1,6 +1,7 @@ import { Component } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; +import { configureTestSuite } from 'ng-bullet'; import { dispatchEvent } from '../../_common/testing/dispatch-events'; import { createMouseEvent } from '../../_common/testing/event-objects'; @@ -19,11 +20,11 @@ describe('TimeInputDirective', () => { let fixture: ComponentFixture; let input: HTMLInputElement; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [TimeInputTestComponent, TimeInputDirective] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TimeInputTestComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/toggle/test.ts b/projects/sbb-esta/angular-public/src/lib/toggle/test.ts new file mode 100644 index 0000000000..a82449f2cb --- /dev/null +++ b/projects/sbb-esta/angular-public/src/lib/toggle/test.ts @@ -0,0 +1,25 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'core-js/es7/reflect'; +import 'zone.js/dist/zone'; +import 'zone.js/dist/zone-testing'; +// tslint:disable-next-line: ordered-imports +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: any; + +// First, initialize the Angular testing environment. +if (!getTestBed().platform) { + getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting() + ); +} +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/projects/sbb-esta/angular-public/src/lib/toggle/toggle-option/toggle-option.component.ts b/projects/sbb-esta/angular-public/src/lib/toggle/toggle-option/toggle-option.component.ts index 18fc0cd9c2..cfa5a6e336 100644 --- a/projects/sbb-esta/angular-public/src/lib/toggle/toggle-option/toggle-option.component.ts +++ b/projects/sbb-esta/angular-public/src/lib/toggle/toggle-option/toggle-option.component.ts @@ -12,7 +12,8 @@ import { Input, TemplateRef, ViewChild, - ViewEncapsulation + ViewEncapsulation, + Injector } from '@angular/core'; import { NG_VALUE_ACCESSOR } from '@angular/forms'; import { Subject } from 'rxjs'; @@ -172,9 +173,10 @@ export class ToggleOptionComponent extends RadioButtonComponent @Inject(SBB_TOGGLE_COMPONENT) private _parent: ToggleBase, registry: RadioButtonRegistryService, changeDetector: ChangeDetectorRef, + injector: Injector, @Inject(DOCUMENT) document: any ) { - super(changeDetector, registry); + super(changeDetector, registry, injector); this._document = document; } diff --git a/projects/sbb-esta/angular-public/src/lib/toggle/toggle/toggle.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/toggle/toggle/toggle.component.spec.ts index faace18aa0..75dd69053a 100644 --- a/projects/sbb-esta/angular-public/src/lib/toggle/toggle/toggle.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/toggle/toggle/toggle.component.spec.ts @@ -8,8 +8,9 @@ import { ReactiveFormsModule } from '@angular/forms'; import { By } from '@angular/platform-browser'; -import { Observable, of } from 'rxjs'; import { IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; +import { Observable, of } from 'rxjs'; import { DatepickerModule } from '../../datepicker/datepicker'; import { FieldModule } from '../../field/field'; @@ -174,7 +175,7 @@ describe('ToggleComponent case reactive using mock component', () => { let componentTest: ToggleReactiveTestComponent; let fixtureTest: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ ToggleModule, @@ -185,8 +186,8 @@ describe('ToggleComponent case reactive using mock component', () => { ReactiveFormsModule ], declarations: [ToggleReactiveTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureTest = TestBed.createComponent(ToggleReactiveTestComponent); @@ -283,7 +284,7 @@ describe('ToggleComponent case template driven using mock component', () => { let componentTest: ToggleTemplateDrivenTestComponent; let fixtureTest: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ ToggleModule, @@ -294,8 +295,8 @@ describe('ToggleComponent case template driven using mock component', () => { FormsModule ], declarations: [ToggleTemplateDrivenTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureTest = TestBed.createComponent(ToggleTemplateDrivenTestComponent); @@ -350,12 +351,12 @@ describe('ToggleComponent simple case using mock component', () => { let componentTest: ToggleSimpleCaseTestComponent; let fixtureTest: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ToggleModule, CommonModule, IconCollectionModule], declarations: [ToggleSimpleCaseTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureTest = TestBed.createComponent(ToggleSimpleCaseTestComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/tooltip/tooltip/tooltip.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/tooltip/tooltip/tooltip.component.spec.ts index efc12e02f8..875ba2749d 100644 --- a/projects/sbb-esta/angular-public/src/lib/tooltip/tooltip/tooltip.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/tooltip/tooltip/tooltip.component.spec.ts @@ -2,9 +2,10 @@ import { OverlayModule } from '@angular/cdk/overlay'; import { PortalModule } from '@angular/cdk/portal'; import { CommonModule } from '@angular/common'; import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IconCollectionModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { ButtonModule } from '../../button/button'; import { FieldModule } from '../../field/field'; @@ -64,7 +65,7 @@ describe('TooltipComponent', () => { let component: TooltipComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ IconCollectionModule, @@ -74,8 +75,8 @@ describe('TooltipComponent', () => { ], providers: [SBB_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER], declarations: [TooltipComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixture = TestBed.createComponent(TooltipComponent); @@ -96,12 +97,12 @@ describe('TooltipComponent using mock component for single tooltip', () => { let singleComponentTest: TooltipTestComponent; let singleFixtureTest: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [TooltipModule, FieldModule, ButtonModule], declarations: [TooltipTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { singleFixtureTest = TestBed.createComponent(TooltipTestComponent); @@ -194,12 +195,12 @@ describe('TooltipComponent using mock component for double tooltip', () => { let doubleComponentTest: DoubleTooltipTestComponent; let doubleFixtureTest: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [TooltipModule, FieldModule], declarations: [DoubleTooltipTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { doubleFixtureTest = TestBed.createComponent(DoubleTooltipTestComponent); diff --git a/projects/sbb-esta/angular-public/src/lib/usermenu/usermenu/usermenu.component.spec.ts b/projects/sbb-esta/angular-public/src/lib/usermenu/usermenu/usermenu.component.spec.ts index 8bd16368cd..574d7a1e99 100644 --- a/projects/sbb-esta/angular-public/src/lib/usermenu/usermenu/usermenu.component.spec.ts +++ b/projects/sbb-esta/angular-public/src/lib/usermenu/usermenu/usermenu.component.spec.ts @@ -1,12 +1,13 @@ import { CommonModule } from '@angular/common'; import { Component } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { RouterTestingModule } from '@angular/router/testing'; import { IconChevronSmallDownModule, IconUserModule } from '@sbb-esta/angular-icons'; +import { configureTestSuite } from 'ng-bullet'; import { dispatchFakeEvent } from '../../_common/testing/dispatch-events'; import { DropdownComponent, DropdownModule } from '../../dropdown/dropdown'; @@ -198,7 +199,7 @@ describe('UserMenuComponent', () => { let dropdownComponent: DropdownComponent; let fixtureDropdown: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ declarations: [UserMenuComponent], imports: [ @@ -207,8 +208,8 @@ describe('UserMenuComponent', () => { IconChevronSmallDownModule, IconUserModule ] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureDropdown = TestBed.createComponent(DropdownComponent); @@ -231,7 +232,7 @@ describe('Usermenu test case: user with custom image using mock component', () = let componentTest: UsermenuTestComponent; let fixtureTest: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ UserMenuModule, @@ -242,8 +243,8 @@ describe('Usermenu test case: user with custom image using mock component', () = RouterTestingModule ], declarations: [UsermenuTestComponent] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureTest = TestBed.createComponent(UsermenuTestComponent); @@ -368,7 +369,7 @@ describe('Usermenu test case: usermenu without user image but with initial lette let componentTest: UsermenuTest2Component; let fixtureTest: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ UserMenuModule, @@ -379,8 +380,8 @@ describe('Usermenu test case: usermenu without user image but with initial lette RouterTestingModule ], declarations: [UsermenuTest2Component] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureTest = TestBed.createComponent(UsermenuTest2Component); @@ -507,7 +508,7 @@ describe('Usermenu test case: usermenu only with userName using mock component', let componentTest: UsermenuTest3Component; let fixtureTest: ComponentFixture; - beforeEach(async(() => { + configureTestSuite(() => { TestBed.configureTestingModule({ imports: [ UserMenuModule, @@ -518,8 +519,8 @@ describe('Usermenu test case: usermenu only with userName using mock component', RouterTestingModule ], declarations: [UsermenuTest3Component] - }).compileComponents(); - })); + }); + }); beforeEach(() => { fixtureTest = TestBed.createComponent(UsermenuTest3Component); diff --git a/projects/sbb-esta/angular-public/src/styles/components/ghettobox/_ghettobox-base.scss b/projects/sbb-esta/angular-public/src/styles/components/ghettobox/_ghettobox-base.scss index 7713c05dfa..33ac4cdd9f 100644 --- a/projects/sbb-esta/angular-public/src/styles/components/ghettobox/_ghettobox-base.scss +++ b/projects/sbb-esta/angular-public/src/styles/components/ghettobox/_ghettobox-base.scss @@ -25,8 +25,6 @@ @mixin ghettoboxWrapper() { position: relative; - margin-left: 1.6rem; - margin-right: 1.6rem; display: flex; justify-content: center; margin: 0 auto; diff --git a/projects/sbb-esta/angular-public/src/styles/components/pagination/_navigation.scss b/projects/sbb-esta/angular-public/src/styles/components/pagination/_navigation.scss index 4148fb5cf8..e80772996b 100644 --- a/projects/sbb-esta/angular-public/src/styles/components/pagination/_navigation.scss +++ b/projects/sbb-esta/angular-public/src/styles/components/pagination/_navigation.scss @@ -6,7 +6,6 @@ li.sbb-navigation-item { position: relative; - height: 0; line-height: 0; text-align: center; outline: 0; diff --git a/projects/sbb-esta/angular-public/src/styles/components/pagination/_pagination-base.scss b/projects/sbb-esta/angular-public/src/styles/components/pagination/_pagination-base.scss index 4093309e7b..cdd96d67ee 100644 --- a/projects/sbb-esta/angular-public/src/styles/components/pagination/_pagination-base.scss +++ b/projects/sbb-esta/angular-public/src/styles/components/pagination/_pagination-base.scss @@ -5,7 +5,6 @@ margin-left: 0; li.sbb-pagination-item { position: relative; - height: 0; line-height: 0; text-align: center; outline: 0; diff --git a/projects/sbb-esta/angular-public/src/styles/legacy/_mixins.scss b/projects/sbb-esta/angular-public/src/styles/legacy/_mixins.scss index 0ceb0dd859..40ebb40e9f 100644 --- a/projects/sbb-esta/angular-public/src/styles/legacy/_mixins.scss +++ b/projects/sbb-esta/angular-public/src/styles/legacy/_mixins.scss @@ -570,7 +570,6 @@ opacity: 0; transform: translate3d(0, 50px, 0); &.is_animating_scroll { - transition: opacity 0.3s, transform 0.3s; transition: opacity 0.3s, transform 0.3s; opacity: 1; transform: translate3d(0, 0, 0); diff --git a/projects/sbb-esta/angular-public/tsconfig.spec.json b/projects/sbb-esta/angular-public/tsconfig.spec.json index b654c7337b..655825a735 100644 --- a/projects/sbb-esta/angular-public/tsconfig.spec.json +++ b/projects/sbb-esta/angular-public/tsconfig.spec.json @@ -5,5 +5,5 @@ "types": ["jasmine", "node"] }, "files": ["src/test.ts"], - "include": ["**/*.spec.ts", "**/*.d.ts"] + "include": ["src/lib/**/test.ts", "**/*.spec.ts", "**/*.d.ts"] } diff --git a/scripts/publish.js b/scripts/publish.js new file mode 100644 index 0000000000..f87427ad07 --- /dev/null +++ b/scripts/publish.js @@ -0,0 +1,165 @@ +const { exec } = require('child_process'); +const { readFileSync, writeFileSync } = require('fs'); +const glob = require('glob'); +const { get } = require('https'); +const { dirname, join, resolve } = require('path'); +const request = require('request-promise-native'); +const { prerelease } = require('semver'); +const { parse } = require('url'); +const { promisify } = require('util'); +const execAsync = promisify(exec); + +class Publisher { + constructor(properties) { + this.dryRun = properties.dryRun; + this.isRelease = properties.isRelease; + this.version = properties.version; + this.name = properties.name; + this.stagingUser = properties.stagingUser; + this.stagingPassword = properties.stagingPassword; + this.showcasePackageJson = resolve( + __dirname, + `../dist/angular-showcase/package.json` + ); + if (this.isRelease) { + this.tag = prerelease(this.version) ? 'next' : 'latest'; + } else { + this.tag = properties.normalizedBranch; + } + } + + async execute() { + if (this.isRelease) { + this._assignReleaseVersion(); + await this._publishRelease(); + } else { + await this._assignStagingVersion(); + await this._publishStaging(); + } + + await this._triggerStaging(); + } + + _assignReleaseVersion() { + const dist = resolve(__dirname, '../dist'); + glob + .sync('**/package.json', { cwd: dist }) + .map(f => join(dist, f)) + .forEach(p => this._assignVersionInPackage(p, this.version)); + console.log(`Assigned release version ${this.version}`); + } + + async _assignStagingVersion() { + const version = await this._resolveStagingVersion(); + this._assignVersionInPackage(this.showcasePackageJson, version); + console.log(`Assigned staging version ${version}`); + } + + _assignVersionInPackage(path, version) { + const content = readFileSync(path, 'utf8').replace( + /0\.0\.0-PLACEHOLDER/g, + version + ); + const json = JSON.parse(content); + json.publishConfig.tag = this.tag; + writeFileSync(path, JSON.stringify(json, null, 2), 'utf8'); + } + + async _resolveStagingVersion() { + const version = `0.0.0-${this.tag}.`; + try { + const counter = await this._resolveStagingVersionCounter(version); + return `${version}${counter}`; + } catch (e) { + return `${version}0`; + } + } + + async _resolveStagingVersionCounter(version) { + const info = await this._getPackageInformation(); + const counter = Object.keys(info.versions) + .map(v => v.split(version)) + .filter(p => p && p.length === 2) + .map(p => parseInt(p[1])) + .filter(n => !Number.isNaN(n)) + .sort((a, b) => b - a)[0]; + return counter === undefined ? 0 : counter + 1; + } + + _getPackageInformation() { + return new Promise((resolve, reject) => + get(parse(`https://registry.npmjs.org/${this.name}`), res => { + let data = ''; + res.setEncoding('utf8'); + res.on('data', d => (data += d)); + res.on('end', () => resolve(JSON.parse(data))); + }).on('error', e => reject(e)) + ); + } + + async _publishRelease() { + const directories = glob + .sync('**/package.json', { cwd: resolve(__dirname, '../dist') }) + .map(p => `../dist/${p}`) + .sort((a, b) => + (require(b).peerDependencies || {})[require(a).name] ? 0 : 1 + ) + .map(p => dirname(resolve(__dirname, p))); + for (const directory of directories) { + await this._publishDirectory(directory); + } + } + + async _publishStaging() { + await this._publishDirectory(dirname(this.showcasePackageJson)); + } + + async _publishDirectory(directory) { + const content = JSON.parse( + readFileSync(join(directory, 'package.json'), 'utf8') + ); + if (this.dryRun) { + await execAsync('npm pack', { + cwd: directory, + maxBuffer: 1024 ** 2 * 10 + }); + console.log(`Packed ${content.name} with version ${content.version}`); + } else { + await execAsync('npm publish', { + cwd: directory, + maxBuffer: 1024 ** 2 * 10 + }); + console.log(`Published ${content.name} with version ${content.version}`); + } + } + + async _triggerStaging() { + if (this.dryRun || !this.stagingUser) { + console.log('Skipped staging trigger'); + return; + } + + await request({ + method: 'POST', + uri: `https://angular.app.sbb.ch/${this.tag}`, + auth: { + user: this.stagingUser, + pass: this.stagingPassword, + } + }); + console.log(`Triggered staging with tag ${this.tag}`); + } +} + +new Publisher({ + ...require('../package.json'), + name: '@sbb-esta/angular-showcase', + dryRun: !process.env.TRAVIS, + isRelease: process.argv[2] === 'release', + stagingUser: process.env.STAGING_AUTH_USER, + stagingPassword: process.env.STAGING_AUTH_PASSWORD, + normalizedBranch: (process.env.TRAVIS_BRANCH || 'staging') + .toLowerCase() + .replace(/[^a-z0-9]+/g, '-') + .replace(/-+$/, '') +}).execute(); diff --git a/scripts/sonar.js b/scripts/sonar.js new file mode 100644 index 0000000000..04474892a8 --- /dev/null +++ b/scripts/sonar.js @@ -0,0 +1,13 @@ +const sonarqubeScanner = require('sonarqube-scanner'); + +if (process.env.SONAR_TOKEN) { + new Promise(resolve => + sonarqubeScanner( + { + serverUrl: 'https://sonarcloud.io', + token: process.env.SONAR_TOKEN + }, + resolve + ) + ); +} diff --git a/sonar-project.properties b/sonar-project.properties index 7abd233bf4..2211eb2cd8 100644 --- a/sonar-project.properties +++ b/sonar-project.properties @@ -1,5 +1,5 @@ -sonar.projectKey=@sbb-esta/angular-public -sonar.projectName=@sbb-esta/angular-public +sonar.projectKey=sbb-angular +sonar.projectName=sbb-angular sonar.organization=sbb sonar.sources=projects/sbb-esta/angular-public/src sonar.sourceEncoding=UTF-8 @@ -8,5 +8,5 @@ sonar.tests=projects/sbb-esta/angular-public/src sonar.test.inclusions=**/*.spec.ts sonar.typescript.lcov.reportPaths=coverage/sbb-esta/angular-public/lcov.info sonar.typescript.tslint.reportPaths=lintReport.json -sonar.typescript.tsconfigPath=tsconfig.lib.json +sonar.typescript.tsconfigPath=projects/sbb-esta/angular-public/tsconfig.lib.json sonar.testExecutionReportPaths=coverage/sbb-esta/angular-public/sonarqube.xml