diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index a0208ca37..000000000 --- a/.travis.yml +++ /dev/null @@ -1,27 +0,0 @@ ---- -language: node_js -node_js: - - "10" - -dist: trusty - -addons: - chrome: stable - -cache: - directories: - - $HOME/.npm - -env: - global: - # See https://git.io/vdao3 for details. - - JOBS=1 - -branches: - only: - - master - -script: - - npm run lint:hbs - - npm run lint:js - - npm test diff --git a/app/components/build-log/component.js b/app/components/build-log/component.js index a15f017db..85f86949e 100644 --- a/app/components/build-log/component.js +++ b/app/components/build-log/component.js @@ -260,7 +260,7 @@ export default Component.extend({ * @method scrollTop */ scrollTop() { - this.$('.wrap')[0].scrollTop = 0; + this.element.querySelectorAll('.wrap')[0].scrollTop = 0; }, /** @@ -269,9 +269,9 @@ export default Component.extend({ */ scrollDown() { if (this.autoscroll) { - const bottom = this.$('.bottom').prop('offsetTop'); + const bottom = this.element.querySelector('.bottom').offsetTop; - this.$('.wrap').prop('scrollTop', bottom); + this.element.querySelector('.wrap').scrollTop = bottom; set(this, 'lastScrollTop', bottom); } }, @@ -281,7 +281,7 @@ export default Component.extend({ * @method scrollStill */ scrollStill() { - const container = this.$('.wrap')[0]; + const container = this.element.querySelectorAll('.wrap')[0]; set( this, @@ -321,7 +321,7 @@ export default Component.extend({ .then(({ done }) => { // prevent updating logs when component is being destroyed if (!this.isDestroyed && !this.isDestroying) { - const container = this.$('.wrap')[0]; + const container = this.element.querySelectorAll('.wrap')[0]; const { inProgress, justFinished } = this; set(this, 'isFetching', false); @@ -370,18 +370,19 @@ export default Component.extend({ set(this, 'isDownloading', true); this.getLogs(true).then(() => { - this.$('#downloadLink') - .attr({ - download: `${buildId}-${stepName}.log`, - href: this.logService.buildLogBlobUrl(buildId, stepName) - })[0] - .click(); + const el = this.element.querySelectorAll('#downloadLink'); + + el.forEach(e => { + e.setAttribute('download', `${buildId}-${stepName}.log`); + e.setAttribute('href', this.logService.buildLogBlobUrl(buildId, stepName)); + }); + el[0].click(); set(this, 'isDownloading', false); }); } }, logScroll() { - const container = this.$('.wrap')[0]; + const container = this.element.querySelectorAll('.wrap')[0]; if ( !this.inProgress && @@ -395,7 +396,11 @@ export default Component.extend({ } // autoscroll when the bottom of the logs is roughly in view - set(this, 'autoscroll', this.$('.bottom')[0].getBoundingClientRect().top < 1500); + set( + this, + 'autoscroll', + this.element.querySelectorAll('.bottom')[0].getBoundingClientRect().top < 1500 + ); }, toggleTimeDisplay() { let index = timeTypes.indexOf(this.timeFormat); diff --git a/app/components/pipeline-list-view/component.js b/app/components/pipeline-list-view/component.js index 9fda662f0..5bd44a2a1 100644 --- a/app/components/pipeline-list-view/component.js +++ b/app/components/pipeline-list-view/component.js @@ -150,17 +150,14 @@ export default Component.extend({ let startTime; - let status; - let buildId; let coverageData = {}; if (latestBuild) { startTime = moment(latestBuild.startTime).format('lll'); - status = latestBuild.status; buildId = latestBuild.id; - duration = this.getDuration(latestBuild.startTime, latestBuild.endTime, status); + duration = this.getDuration(latestBuild.startTime, latestBuild.endTime, latestBuild.status); coverageData = { jobId, diff --git a/app/components/pipeline-list-view/template.hbs b/app/components/pipeline-list-view/template.hbs index 42d1536af..cb7146aef 100644 --- a/app/components/pipeline-list-view/template.hbs +++ b/app/components/pipeline-list-view/template.hbs @@ -1,5 +1,5 @@ -{{#light-table table as |t|}} +{{#light-table table height="inherit" as |t|}} {{t.head onColumnClick=(action "onColumnClick") iconSortable="fa fa-sort" diff --git a/app/components/tc-collection-list/component.js b/app/components/tc-collection-list/component.js index e49272fc9..2b320d6b5 100644 --- a/app/components/tc-collection-list/component.js +++ b/app/components/tc-collection-list/component.js @@ -104,7 +104,7 @@ export default Component.extend({ .sort(); } }), - columns: computed(function() { + columns: computed(function columns() { return [ { label: 'Name', diff --git a/app/styles/app.scss b/app/styles/app.scss index 35f7b1260..30e4763e4 100644 --- a/app/styles/app.scss +++ b/app/styles/app.scss @@ -178,3 +178,5 @@ body { } @import 'ember-power-select'; + +@import 'ember-bootstrap/bootstrap'; diff --git a/config/environment.js b/config/environment.js index 80ab24616..c0948e5dc 100644 --- a/config/environment.js +++ b/config/environment.js @@ -13,6 +13,7 @@ module.exports = environment => { // Glimmer [ember] and ACE Editor [validator] add styles to elements at run time, this makes it impossible to precalculate all possible shas for inline styles "'unsafe-inline'" ], + 'script-src': ["'unsafe-eval'"], 'manifest-src': ["'self'"], 'frame-src': ["'self'"], 'connect-src': ["'self'"], diff --git a/package-lock.json b/package-lock.json index f3ec538d8..dcc9862b2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7803,6 +7803,35 @@ } } }, + "@ember-decorators/component": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@ember-decorators/component/-/component-6.1.1.tgz", + "integrity": "sha512-Cj8tY/c0MC/rsipqsiWLh3YVN72DK92edPYamD/HzvftwzC6oDwawWk8RmStiBnG9PG/vntAt41l3S7HSSA+1Q==", + "dev": true, + "requires": { + "@ember-decorators/utils": "^6.1.1", + "ember-cli-babel": "^7.1.3" + } + }, + "@ember-decorators/object": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@ember-decorators/object/-/object-6.1.1.tgz", + "integrity": "sha512-cb4CNR9sRoA31J3FCOFLDuR9ztM4wO9w1WlS4JeNRS7Z69SlB/XSXB/vplA3i9OOaXEy/zKWbu5ndZrHz0gvLw==", + "dev": true, + "requires": { + "@ember-decorators/utils": "^6.1.1", + "ember-cli-babel": "^7.1.3" + } + }, + "@ember-decorators/utils": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@ember-decorators/utils/-/utils-6.1.1.tgz", + "integrity": "sha512-0KqnoeoLKb6AyoSU65TRF5T85wmS4uDn06oARddwNPxxf/lt5jQlh41uX3W7V/fWL9tPu8x1L1Vvpc80MN1+YA==", + "dev": true, + "requires": { + "ember-cli-babel": "^7.1.3" + } + }, "@ember/edition-utils": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@ember/edition-utils/-/edition-utils-1.1.1.tgz", @@ -9627,7 +9656,7 @@ "ast-types": { "version": "0.10.1", "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.10.1.tgz", - "integrity": "sha1-9S/KlxVXmhT4QdZ9f40lQyq2o90=", + "integrity": "sha512-UY7+9DPzlJ9VM8eY0b2TUZcZvF+1pO0hzMtAyjBYKhOmnvRlqYNYnWdtsMj0V16CGaMlpL0G1jnLbLo4AyotuQ==", "dev": true }, "astral-regex": { @@ -14790,6 +14819,60 @@ "najax": "^1.0.3" } }, + "ember-angle-bracket-invocation-polyfill": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ember-angle-bracket-invocation-polyfill/-/ember-angle-bracket-invocation-polyfill-2.1.0.tgz", + "integrity": "sha512-njvnsjw3aD2kSfr4Gld56YP28TIbrdcymeHH2lDpOMuOsJCZ+tZMLowpdNX18et4UzFsOuf6Mnvkg/PUctYHlA==", + "dev": true, + "requires": { + "ember-cli-babel": "^6.17.0", + "ember-cli-version-checker": "^2.1.2", + "ember-compatibility-helpers": "^1.0.2", + "silent-error": "^1.1.1" + }, + "dependencies": { + "amd-name-resolver": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/amd-name-resolver/-/amd-name-resolver-1.2.0.tgz", + "integrity": "sha512-hlSTWGS1t6/xq5YCed7YALg7tKZL3rkl7UwEZ/eCIkn8JxmM6fU6Qs/1hwtjQqfuYxlffuUcgYEm0f5xP4YKaA==", + "dev": true, + "requires": { + "ensure-posix-path": "^1.0.1" + } + }, + "ember-cli-babel": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/ember-cli-babel/-/ember-cli-babel-6.18.0.tgz", + "integrity": "sha512-7ceC8joNYxY2wES16iIBlbPSxwKDBhYwC8drU3ZEvuPDMwVv1KzxCNu1fvxyFEBWhwaRNTUxSCsEVoTd9nosGA==", + "dev": true, + "requires": { + "amd-name-resolver": "1.2.0", + "babel-plugin-debug-macros": "^0.2.0-beta.6", + "babel-plugin-ember-modules-api-polyfill": "^2.6.0", + "babel-plugin-transform-es2015-modules-amd": "^6.24.0", + "babel-polyfill": "^6.26.0", + "babel-preset-env": "^1.7.0", + "broccoli-babel-transpiler": "^6.5.0", + "broccoli-debug": "^0.6.4", + "broccoli-funnel": "^2.0.0", + "broccoli-source": "^1.1.0", + "clone": "^2.0.0", + "ember-cli-version-checker": "^2.1.2", + "semver": "^5.5.0" + } + }, + "ember-cli-version-checker": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ember-cli-version-checker/-/ember-cli-version-checker-2.2.0.tgz", + "integrity": "sha512-G+KtYIVlSOWGcNaTFHk76xR4GdzDLzAS4uxZUKdASuFX0KJE43C6DaqL+y3VTpUFLI2FIkAS6HZ4I1YBi+S3hg==", + "dev": true, + "requires": { + "resolve": "^1.3.3", + "semver": "^5.3.0" + } + } + } + }, "ember-assign-polyfill": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/ember-assign-polyfill/-/ember-assign-polyfill-2.6.0.tgz", @@ -16495,9 +16578,9 @@ } }, "ember-bootstrap": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/ember-bootstrap/-/ember-bootstrap-2.8.1.tgz", - "integrity": "sha512-USZLZLmwiu8OAiQ1MlH5xs/JxGEjLepE+L37HmgxPTYB6xF/+cFIBSBTB5+8y335aZZWsmmULibdSwhd9rBNmA==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/ember-bootstrap/-/ember-bootstrap-3.1.4.tgz", + "integrity": "sha512-mFQGFzLuJvKkZnZS3NyvRFT09NFzNnDyzDgoU5buUlLz39sPF9sVpBeCXGRWJus74RQ5tm1OVPp4iz/Rwl1RCw==", "dev": true, "requires": { "broccoli-debug": "^0.6.3", @@ -16505,196 +16588,36 @@ "broccoli-merge-trees": "^3.0.1", "broccoli-stew": "^2.0.0", "chalk": "^2.1.0", - "ember-assign-polyfill": "^2.0.1", - "ember-cli-babel": "^6.16.0", + "ember-angle-bracket-invocation-polyfill": "^2.0.1", + "ember-cli-babel": "^7.13.0", "ember-cli-build-config-editor": "0.5.0", - "ember-cli-htmlbars": "^3.0.0", + "ember-cli-htmlbars": "^4.2.0", "ember-cli-version-checker": "^3.0.0", - "ember-concurrency": "^0.8.0 || ^0.9.0 || ^0.10.0", - "ember-in-element-polyfill": "^0.1.2", - "ember-maybe-in-element": "^0.1.3", - "ember-popper": "^0.9.0", - "ember-runtime-enumerable-includes-polyfill": "^2.0.0", - "findup-sync": "^3.0.0", + "ember-concurrency": "^1.0.0", + "ember-decorators": "^6.1.0", + "ember-decorators-polyfill": "^1.0.6", + "ember-focus-trap": "^0.3.2", + "ember-let-polyfill": "^0.1.0", + "ember-maybe-in-element": "^0.4.0", + "ember-named-arguments-polyfill": "^1.0.0", + "ember-on-helper": "^0.1.0", + "ember-popper": "^0.10.3", + "findup-sync": "^4.0.0", "fs-extra": "^7.0.1", "resolve": "^1.5.0", "rsvp": "^4.0.1", "silent-error": "^1.0.1" }, "dependencies": { - "amd-name-resolver": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/amd-name-resolver/-/amd-name-resolver-1.2.0.tgz", - "integrity": "sha512-hlSTWGS1t6/xq5YCed7YALg7tKZL3rkl7UwEZ/eCIkn8JxmM6fU6Qs/1hwtjQqfuYxlffuUcgYEm0f5xP4YKaA==", - "dev": true, - "requires": { - "ensure-posix-path": "^1.0.1" - } - }, - "broccoli-babel-transpiler": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/broccoli-babel-transpiler/-/broccoli-babel-transpiler-6.5.1.tgz", - "integrity": "sha512-w6GcnkxvHcNCte5FcLGEG1hUdQvlfvSN/6PtGWU/otg69Ugk8rUk51h41R0Ugoc+TNxyeFG1opRt2RlA87XzNw==", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "broccoli-funnel": "^2.0.1", - "broccoli-merge-trees": "^2.0.0", - "broccoli-persistent-filter": "^1.4.3", - "clone": "^2.0.0", - "hash-for-dep": "^1.2.3", - "heimdalljs-logger": "^0.1.7", - "json-stable-stringify": "^1.0.0", - "rsvp": "^4.8.2", - "workerpool": "^2.3.0" - }, - "dependencies": { - "broccoli-merge-trees": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/broccoli-merge-trees/-/broccoli-merge-trees-2.0.1.tgz", - "integrity": "sha512-WjaexJ+I8BxP5V5RNn6um/qDRSmKoiBC/QkRi79FT9ClHfldxRyCDs9mcV7mmoaPlsshmmPaUz5jdtcKA6DClQ==", - "dev": true, - "requires": { - "broccoli-plugin": "^1.3.0", - "merge-trees": "^1.0.1" - } - } - } - }, - "broccoli-persistent-filter": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/broccoli-persistent-filter/-/broccoli-persistent-filter-1.4.6.tgz", - "integrity": "sha512-0RejLwoC95kv4kta8KAa+FmECJCK78Qgm8SRDEK7YyU0N9Cx6KpY3UCDy9WELl3mCXLN8TokNxc7/hp3lL4lfw==", - "dev": true, - "requires": { - "async-disk-cache": "^1.2.1", - "async-promise-queue": "^1.0.3", - "broccoli-plugin": "^1.0.0", - "fs-tree-diff": "^0.5.2", - "hash-for-dep": "^1.0.2", - "heimdalljs": "^0.2.1", - "heimdalljs-logger": "^0.1.7", - "mkdirp": "^0.5.1", - "promise-map-series": "^0.2.1", - "rimraf": "^2.6.1", - "rsvp": "^3.0.18", - "symlink-or-copy": "^1.0.1", - "walk-sync": "^0.3.1" - }, - "dependencies": { - "rsvp": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.6.2.tgz", - "integrity": "sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw==", - "dev": true - } - } - }, - "ember-cli-babel": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/ember-cli-babel/-/ember-cli-babel-6.18.0.tgz", - "integrity": "sha512-7ceC8joNYxY2wES16iIBlbPSxwKDBhYwC8drU3ZEvuPDMwVv1KzxCNu1fvxyFEBWhwaRNTUxSCsEVoTd9nosGA==", - "dev": true, - "requires": { - "amd-name-resolver": "1.2.0", - "babel-plugin-debug-macros": "^0.2.0-beta.6", - "babel-plugin-ember-modules-api-polyfill": "^2.6.0", - "babel-plugin-transform-es2015-modules-amd": "^6.24.0", - "babel-polyfill": "^6.26.0", - "babel-preset-env": "^1.7.0", - "broccoli-babel-transpiler": "^6.5.0", - "broccoli-debug": "^0.6.4", - "broccoli-funnel": "^2.0.0", - "broccoli-source": "^1.1.0", - "clone": "^2.0.0", - "ember-cli-version-checker": "^2.1.2", - "semver": "^5.5.0" - }, - "dependencies": { - "ember-cli-version-checker": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ember-cli-version-checker/-/ember-cli-version-checker-2.2.0.tgz", - "integrity": "sha512-G+KtYIVlSOWGcNaTFHk76xR4GdzDLzAS4uxZUKdASuFX0KJE43C6DaqL+y3VTpUFLI2FIkAS6HZ4I1YBi+S3hg==", - "dev": true, - "requires": { - "resolve": "^1.3.3", - "semver": "^5.3.0" - } - } - } - }, - "ember-cli-htmlbars": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ember-cli-htmlbars/-/ember-cli-htmlbars-3.1.0.tgz", - "integrity": "sha512-cgvRJM73IT0aePUG7oQ/afB7vSRBV3N0wu9BrWhHX2zkR7A7cUBI7KC9VPk6tbctCXoM7BRGsCC4aIjF7yrfXA==", - "dev": true, - "requires": { - "broccoli-persistent-filter": "^2.3.1", - "hash-for-dep": "^1.5.1", - "json-stable-stringify": "^1.0.1", - "strip-bom": "^3.0.0" - }, - "dependencies": { - "broccoli-persistent-filter": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/broccoli-persistent-filter/-/broccoli-persistent-filter-2.3.1.tgz", - "integrity": "sha512-hVsmIgCDrl2NFM+3Gs4Cr2TA6UPaIZip99hN8mtkaUPgM8UeVnCbxelCvBjUBHo0oaaqP5jzqqnRVvb568Yu5g==", - "dev": true, - "requires": { - "async-disk-cache": "^1.2.1", - "async-promise-queue": "^1.0.3", - "broccoli-plugin": "^1.0.0", - "fs-tree-diff": "^2.0.0", - "hash-for-dep": "^1.5.0", - "heimdalljs": "^0.2.1", - "heimdalljs-logger": "^0.1.7", - "mkdirp": "^0.5.1", - "promise-map-series": "^0.2.1", - "rimraf": "^2.6.1", - "rsvp": "^4.7.0", - "symlink-or-copy": "^1.0.1", - "sync-disk-cache": "^1.3.3", - "walk-sync": "^1.0.0" - } - }, - "fs-tree-diff": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fs-tree-diff/-/fs-tree-diff-2.0.1.tgz", - "integrity": "sha512-x+CfAZ/lJHQqwlD64pYM5QxWjzWhSjroaVsr8PW831zOApL55qPibed0c+xebaLWVr2BnHFoHdrwOv8pzt8R5A==", - "dev": true, - "requires": { - "@types/symlink-or-copy": "^1.2.0", - "heimdalljs-logger": "^0.1.7", - "object-assign": "^4.1.0", - "path-posix": "^1.0.0", - "symlink-or-copy": "^1.1.8" - } - }, - "walk-sync": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/walk-sync/-/walk-sync-1.1.4.tgz", - "integrity": "sha512-nowc9thB/Jg0KW4TgxoRjLLYRPvl3DB/98S89r4ZcJqq2B0alNcKDh6pzLkBSkPMzRSMsJghJHQi79qw0YWEkA==", - "dev": true, - "requires": { - "@types/minimatch": "^3.0.3", - "ensure-posix-path": "^1.1.0", - "matcher-collection": "^1.1.1" - } - } - } - }, - "merge-trees": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-trees/-/merge-trees-1.0.1.tgz", - "integrity": "sha1-zL5nRWl4f53vF/1G5lJfVwC70j4=", + "ember-concurrency": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ember-concurrency/-/ember-concurrency-1.2.1.tgz", + "integrity": "sha512-6zlK3BndPPZlSVWq6xBohwobpDKrI58nMMDfD8OqjoeBwnaznuyVHJqDZ46NRJrvSqYX6R96XBBVpDGCCcbK+w==", "dev": true, "requires": { - "can-symlink": "^1.0.0", - "fs-tree-diff": "^0.5.4", - "heimdalljs": "^0.2.1", - "heimdalljs-logger": "^0.1.7", - "rimraf": "^2.4.3", - "symlink-or-copy": "^1.0.0" + "ember-cli-babel": "^7.7.3", + "ember-compatibility-helpers": "^1.2.0", + "ember-maybe-import-regenerator": "^0.1.6" } }, "rsvp": { @@ -16702,15 +16625,6 @@ "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", "dev": true - }, - "workerpool": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-2.3.3.tgz", - "integrity": "sha512-L1ovlYHp6UObYqElXXpbd214GgbEKDED0d3sj7pRdFXjNkb2+un/AUcCkceHizO0IVI6SOGGncrcjozruCkRgA==", - "dev": true, - "requires": { - "object-assign": "4.1.1" - } } } }, @@ -20589,17 +20503,39 @@ } } }, - "ember-diff-attrs": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/ember-diff-attrs/-/ember-diff-attrs-0.2.2.tgz", - "integrity": "sha512-dziQ8G8QVRMqSFMg2l9E+Te19kcwk7+Aad7Q8lOci2b3EAiU7s0IFB3Z8rRed0JRJ3e6mPJyRmNbyUuNoyCM8g==", + "ember-decorators": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/ember-decorators/-/ember-decorators-6.1.1.tgz", + "integrity": "sha512-63vZPntPn1aqMyeNRLoYjJD+8A8obd+c2iZkJflswpDRNVIsp2m7aQdSCtPt4G0U/TEq2251g+N10maHX3rnJQ==", "dev": true, "requires": { - "ember-cli-babel": "^6.16.0" - }, - "dependencies": { - "amd-name-resolver": { - "version": "1.2.0", + "@ember-decorators/component": "^6.1.1", + "@ember-decorators/object": "^6.1.1", + "ember-cli-babel": "^7.7.3" + } + }, + "ember-decorators-polyfill": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ember-decorators-polyfill/-/ember-decorators-polyfill-1.1.5.tgz", + "integrity": "sha512-O154i8sLoVjsiKzSqxGRfHGr+N+drT6mRrLDbNgJCnW/V5uLg/ppZFpUsrdxuXnp5Q9us3OfXV1nX2CH+7bUpA==", + "dev": true, + "requires": { + "ember-cli-babel": "^7.1.2", + "ember-cli-version-checker": "^3.1.3", + "ember-compatibility-helpers": "^1.2.0" + } + }, + "ember-diff-attrs": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/ember-diff-attrs/-/ember-diff-attrs-0.2.2.tgz", + "integrity": "sha512-dziQ8G8QVRMqSFMg2l9E+Te19kcwk7+Aad7Q8lOci2b3EAiU7s0IFB3Z8rRed0JRJ3e6mPJyRmNbyUuNoyCM8g==", + "dev": true, + "requires": { + "ember-cli-babel": "^6.16.0" + }, + "dependencies": { + "amd-name-resolver": { + "version": "1.2.0", "resolved": "https://registry.npmjs.org/amd-name-resolver/-/amd-name-resolver-1.2.0.tgz", "integrity": "sha512-hlSTWGS1t6/xq5YCed7YALg7tKZL3rkl7UwEZ/eCIkn8JxmM6fU6Qs/1hwtjQqfuYxlffuUcgYEm0f5xP4YKaA==", "dev": true, @@ -21658,6 +21594,18 @@ } } }, + "ember-focus-trap": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ember-focus-trap/-/ember-focus-trap-0.3.2.tgz", + "integrity": "sha512-tjJDZw1NJm0m6dlKswY/DuGTYD22yMUw8j3ZMsv5EbZ+/U+gB1ktyq2w5/mgvFVzRB4QmYxSr3h/tOGCkXy1yA==", + "dev": true, + "requires": { + "ember-auto-import": "^1.4.1", + "ember-cli-babel": "^7.11.0", + "ember-modifier-manager-polyfill": "^1.1.0", + "focus-trap": "^5.0.1" + } + }, "ember-font-awesome": { "version": "4.0.0-rc.4", "resolved": "https://registry.npmjs.org/ember-font-awesome/-/ember-font-awesome-4.0.0-rc.4.tgz", @@ -22466,161 +22414,6 @@ } } }, - "ember-in-element-polyfill": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ember-in-element-polyfill/-/ember-in-element-polyfill-0.1.3.tgz", - "integrity": "sha512-zZfjJC0wE1s0yH/UPPPvy64PuEInQ+GdO5v7tqTm/TfR8BiKGvHayxLZ0Kc3C06RGcfiFPU50HvWzLglTpeR+Q==", - "dev": true, - "requires": { - "debug": "^3.1.0", - "ember-cli-babel": "^6.6.0", - "ember-cli-version-checker": "^2.1.0", - "ember-wormhole": "^0.5.4" - }, - "dependencies": { - "amd-name-resolver": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/amd-name-resolver/-/amd-name-resolver-1.2.0.tgz", - "integrity": "sha512-hlSTWGS1t6/xq5YCed7YALg7tKZL3rkl7UwEZ/eCIkn8JxmM6fU6Qs/1hwtjQqfuYxlffuUcgYEm0f5xP4YKaA==", - "dev": true, - "requires": { - "ensure-posix-path": "^1.0.1" - } - }, - "broccoli-babel-transpiler": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/broccoli-babel-transpiler/-/broccoli-babel-transpiler-6.5.1.tgz", - "integrity": "sha512-w6GcnkxvHcNCte5FcLGEG1hUdQvlfvSN/6PtGWU/otg69Ugk8rUk51h41R0Ugoc+TNxyeFG1opRt2RlA87XzNw==", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "broccoli-funnel": "^2.0.1", - "broccoli-merge-trees": "^2.0.0", - "broccoli-persistent-filter": "^1.4.3", - "clone": "^2.0.0", - "hash-for-dep": "^1.2.3", - "heimdalljs-logger": "^0.1.7", - "json-stable-stringify": "^1.0.0", - "rsvp": "^4.8.2", - "workerpool": "^2.3.0" - } - }, - "broccoli-merge-trees": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/broccoli-merge-trees/-/broccoli-merge-trees-2.0.1.tgz", - "integrity": "sha512-WjaexJ+I8BxP5V5RNn6um/qDRSmKoiBC/QkRi79FT9ClHfldxRyCDs9mcV7mmoaPlsshmmPaUz5jdtcKA6DClQ==", - "dev": true, - "requires": { - "broccoli-plugin": "^1.3.0", - "merge-trees": "^1.0.1" - } - }, - "broccoli-persistent-filter": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/broccoli-persistent-filter/-/broccoli-persistent-filter-1.4.6.tgz", - "integrity": "sha512-0RejLwoC95kv4kta8KAa+FmECJCK78Qgm8SRDEK7YyU0N9Cx6KpY3UCDy9WELl3mCXLN8TokNxc7/hp3lL4lfw==", - "dev": true, - "requires": { - "async-disk-cache": "^1.2.1", - "async-promise-queue": "^1.0.3", - "broccoli-plugin": "^1.0.0", - "fs-tree-diff": "^0.5.2", - "hash-for-dep": "^1.0.2", - "heimdalljs": "^0.2.1", - "heimdalljs-logger": "^0.1.7", - "mkdirp": "^0.5.1", - "promise-map-series": "^0.2.1", - "rimraf": "^2.6.1", - "rsvp": "^3.0.18", - "symlink-or-copy": "^1.0.1", - "walk-sync": "^0.3.1" - }, - "dependencies": { - "rsvp": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.6.2.tgz", - "integrity": "sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw==", - "dev": true - } - } - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ember-cli-babel": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/ember-cli-babel/-/ember-cli-babel-6.18.0.tgz", - "integrity": "sha512-7ceC8joNYxY2wES16iIBlbPSxwKDBhYwC8drU3ZEvuPDMwVv1KzxCNu1fvxyFEBWhwaRNTUxSCsEVoTd9nosGA==", - "dev": true, - "requires": { - "amd-name-resolver": "1.2.0", - "babel-plugin-debug-macros": "^0.2.0-beta.6", - "babel-plugin-ember-modules-api-polyfill": "^2.6.0", - "babel-plugin-transform-es2015-modules-amd": "^6.24.0", - "babel-polyfill": "^6.26.0", - "babel-preset-env": "^1.7.0", - "broccoli-babel-transpiler": "^6.5.0", - "broccoli-debug": "^0.6.4", - "broccoli-funnel": "^2.0.0", - "broccoli-source": "^1.1.0", - "clone": "^2.0.0", - "ember-cli-version-checker": "^2.1.2", - "semver": "^5.5.0" - } - }, - "ember-cli-version-checker": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ember-cli-version-checker/-/ember-cli-version-checker-2.2.0.tgz", - "integrity": "sha512-G+KtYIVlSOWGcNaTFHk76xR4GdzDLzAS4uxZUKdASuFX0KJE43C6DaqL+y3VTpUFLI2FIkAS6HZ4I1YBi+S3hg==", - "dev": true, - "requires": { - "resolve": "^1.3.3", - "semver": "^5.3.0" - } - }, - "merge-trees": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-trees/-/merge-trees-1.0.1.tgz", - "integrity": "sha1-zL5nRWl4f53vF/1G5lJfVwC70j4=", - "dev": true, - "requires": { - "can-symlink": "^1.0.0", - "fs-tree-diff": "^0.5.4", - "heimdalljs": "^0.2.1", - "heimdalljs-logger": "^0.1.7", - "rimraf": "^2.4.3", - "symlink-or-copy": "^1.0.0" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "rsvp": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", - "dev": true - }, - "workerpool": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-2.3.3.tgz", - "integrity": "sha512-L1ovlYHp6UObYqElXXpbd214GgbEKDED0d3sj7pRdFXjNkb2+un/AUcCkceHizO0IVI6SOGGncrcjozruCkRgA==", - "dev": true, - "requires": { - "object-assign": "4.1.1" - } - } - } - }, "ember-in-viewport": { "version": "3.7.7", "resolved": "https://registry.npmjs.org/ember-in-viewport/-/ember-in-viewport-3.7.7.tgz", @@ -22843,6 +22636,58 @@ } } }, + "ember-let-polyfill": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ember-let-polyfill/-/ember-let-polyfill-0.1.0.tgz", + "integrity": "sha512-olLHpS7JnqZcfyYRXcdLATYwDIopKA+ZzI8xswzCIcBYoRgoUJY7E/eW84Unu8ea1jtr/Unx+dQrsU+NrNSoBg==", + "dev": true, + "requires": { + "ember-cli-babel": "^6.16.0", + "ember-cli-version-checker": "^2.1.2" + }, + "dependencies": { + "amd-name-resolver": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/amd-name-resolver/-/amd-name-resolver-1.2.0.tgz", + "integrity": "sha512-hlSTWGS1t6/xq5YCed7YALg7tKZL3rkl7UwEZ/eCIkn8JxmM6fU6Qs/1hwtjQqfuYxlffuUcgYEm0f5xP4YKaA==", + "dev": true, + "requires": { + "ensure-posix-path": "^1.0.1" + } + }, + "ember-cli-babel": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/ember-cli-babel/-/ember-cli-babel-6.18.0.tgz", + "integrity": "sha512-7ceC8joNYxY2wES16iIBlbPSxwKDBhYwC8drU3ZEvuPDMwVv1KzxCNu1fvxyFEBWhwaRNTUxSCsEVoTd9nosGA==", + "dev": true, + "requires": { + "amd-name-resolver": "1.2.0", + "babel-plugin-debug-macros": "^0.2.0-beta.6", + "babel-plugin-ember-modules-api-polyfill": "^2.6.0", + "babel-plugin-transform-es2015-modules-amd": "^6.24.0", + "babel-polyfill": "^6.26.0", + "babel-preset-env": "^1.7.0", + "broccoli-babel-transpiler": "^6.5.0", + "broccoli-debug": "^0.6.4", + "broccoli-funnel": "^2.0.0", + "broccoli-source": "^1.1.0", + "clone": "^2.0.0", + "ember-cli-version-checker": "^2.1.2", + "semver": "^5.5.0" + } + }, + "ember-cli-version-checker": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ember-cli-version-checker/-/ember-cli-version-checker-2.2.0.tgz", + "integrity": "sha512-G+KtYIVlSOWGcNaTFHk76xR4GdzDLzAS4uxZUKdASuFX0KJE43C6DaqL+y3VTpUFLI2FIkAS6HZ4I1YBi+S3hg==", + "dev": true, + "requires": { + "resolve": "^1.3.3", + "semver": "^5.3.0" + } + } + } + }, "ember-lifeline": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/ember-lifeline/-/ember-lifeline-4.1.5.tgz", @@ -23443,161 +23288,18 @@ "array-equal": "^1.0.0", "blank-object": "^1.0.1", "broccoli-plugin": "^1.3.0", - "debug": "^2.2.0", - "fast-ordered-set": "^1.0.0", - "fs-tree-diff": "^0.5.3", - "heimdalljs": "^0.2.0", - "minimatch": "^3.0.0", - "mkdirp": "^0.5.0", - "path-posix": "^1.0.0", - "rimraf": "^2.4.3", - "symlink-or-copy": "^1.0.0", - "walk-sync": "^0.3.1" - } - } - } - }, - "ember-cli-version-checker": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ember-cli-version-checker/-/ember-cli-version-checker-2.2.0.tgz", - "integrity": "sha512-G+KtYIVlSOWGcNaTFHk76xR4GdzDLzAS4uxZUKdASuFX0KJE43C6DaqL+y3VTpUFLI2FIkAS6HZ4I1YBi+S3hg==", - "dev": true, - "requires": { - "resolve": "^1.3.3", - "semver": "^5.3.0" - } - }, - "merge-trees": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-trees/-/merge-trees-1.0.1.tgz", - "integrity": "sha1-zL5nRWl4f53vF/1G5lJfVwC70j4=", - "dev": true, - "requires": { - "can-symlink": "^1.0.0", - "fs-tree-diff": "^0.5.4", - "heimdalljs": "^0.2.1", - "heimdalljs-logger": "^0.1.7", - "rimraf": "^2.4.3", - "symlink-or-copy": "^1.0.0" - } - }, - "regenerator-runtime": { - "version": "0.9.6", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.6.tgz", - "integrity": "sha1-0z65XQ0gAaS+OWWXB8UbDLcc4Ck=", - "dev": true - }, - "rsvp": { - "version": "4.8.4", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.4.tgz", - "integrity": "sha512-6FomvYPfs+Jy9TfXmBpBuMWNH94SgCsZmJKcanySzgNNP6LjWxBvyLTa9KaMfDDM5oxRfrKDB0r/qeRsLwnBfA==", - "dev": true - }, - "workerpool": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-2.3.3.tgz", - "integrity": "sha512-L1ovlYHp6UObYqElXXpbd214GgbEKDED0d3sj7pRdFXjNkb2+un/AUcCkceHizO0IVI6SOGGncrcjozruCkRgA==", - "dev": true, - "requires": { - "object-assign": "4.1.1" - } - } - } - }, - "ember-maybe-in-element": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ember-maybe-in-element/-/ember-maybe-in-element-0.1.3.tgz", - "integrity": "sha1-HIm+SSRuWAwQkDNq2L4x43P3G2A=", - "dev": true, - "requires": { - "ember-cli-babel": "^6.11.0" - }, - "dependencies": { - "amd-name-resolver": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/amd-name-resolver/-/amd-name-resolver-1.2.0.tgz", - "integrity": "sha512-hlSTWGS1t6/xq5YCed7YALg7tKZL3rkl7UwEZ/eCIkn8JxmM6fU6Qs/1hwtjQqfuYxlffuUcgYEm0f5xP4YKaA==", - "dev": true, - "requires": { - "ensure-posix-path": "^1.0.1" - } - }, - "broccoli-babel-transpiler": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/broccoli-babel-transpiler/-/broccoli-babel-transpiler-6.5.1.tgz", - "integrity": "sha512-w6GcnkxvHcNCte5FcLGEG1hUdQvlfvSN/6PtGWU/otg69Ugk8rUk51h41R0Ugoc+TNxyeFG1opRt2RlA87XzNw==", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "broccoli-funnel": "^2.0.1", - "broccoli-merge-trees": "^2.0.0", - "broccoli-persistent-filter": "^1.4.3", - "clone": "^2.0.0", - "hash-for-dep": "^1.2.3", - "heimdalljs-logger": "^0.1.7", - "json-stable-stringify": "^1.0.0", - "rsvp": "^4.8.2", - "workerpool": "^2.3.0" - } - }, - "broccoli-merge-trees": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/broccoli-merge-trees/-/broccoli-merge-trees-2.0.1.tgz", - "integrity": "sha512-WjaexJ+I8BxP5V5RNn6um/qDRSmKoiBC/QkRi79FT9ClHfldxRyCDs9mcV7mmoaPlsshmmPaUz5jdtcKA6DClQ==", - "dev": true, - "requires": { - "broccoli-plugin": "^1.3.0", - "merge-trees": "^1.0.1" - } - }, - "broccoli-persistent-filter": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/broccoli-persistent-filter/-/broccoli-persistent-filter-1.4.6.tgz", - "integrity": "sha512-0RejLwoC95kv4kta8KAa+FmECJCK78Qgm8SRDEK7YyU0N9Cx6KpY3UCDy9WELl3mCXLN8TokNxc7/hp3lL4lfw==", - "dev": true, - "requires": { - "async-disk-cache": "^1.2.1", - "async-promise-queue": "^1.0.3", - "broccoli-plugin": "^1.0.0", - "fs-tree-diff": "^0.5.2", - "hash-for-dep": "^1.0.2", - "heimdalljs": "^0.2.1", - "heimdalljs-logger": "^0.1.7", - "mkdirp": "^0.5.1", - "promise-map-series": "^0.2.1", - "rimraf": "^2.6.1", - "rsvp": "^3.0.18", - "symlink-or-copy": "^1.0.1", - "walk-sync": "^0.3.1" - }, - "dependencies": { - "rsvp": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.6.2.tgz", - "integrity": "sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw==", - "dev": true - } - } - }, - "ember-cli-babel": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/ember-cli-babel/-/ember-cli-babel-6.18.0.tgz", - "integrity": "sha512-7ceC8joNYxY2wES16iIBlbPSxwKDBhYwC8drU3ZEvuPDMwVv1KzxCNu1fvxyFEBWhwaRNTUxSCsEVoTd9nosGA==", - "dev": true, - "requires": { - "amd-name-resolver": "1.2.0", - "babel-plugin-debug-macros": "^0.2.0-beta.6", - "babel-plugin-ember-modules-api-polyfill": "^2.6.0", - "babel-plugin-transform-es2015-modules-amd": "^6.24.0", - "babel-polyfill": "^6.26.0", - "babel-preset-env": "^1.7.0", - "broccoli-babel-transpiler": "^6.5.0", - "broccoli-debug": "^0.6.4", - "broccoli-funnel": "^2.0.0", - "broccoli-source": "^1.1.0", - "clone": "^2.0.0", - "ember-cli-version-checker": "^2.1.2", - "semver": "^5.5.0" + "debug": "^2.2.0", + "fast-ordered-set": "^1.0.0", + "fs-tree-diff": "^0.5.3", + "heimdalljs": "^0.2.0", + "minimatch": "^3.0.0", + "mkdirp": "^0.5.0", + "path-posix": "^1.0.0", + "rimraf": "^2.4.3", + "symlink-or-copy": "^1.0.0", + "walk-sync": "^0.3.1" + } + } } }, "ember-cli-version-checker": { @@ -23624,10 +23326,16 @@ "symlink-or-copy": "^1.0.0" } }, + "regenerator-runtime": { + "version": "0.9.6", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.9.6.tgz", + "integrity": "sha1-0z65XQ0gAaS+OWWXB8UbDLcc4Ck=", + "dev": true + }, "rsvp": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.4.tgz", + "integrity": "sha512-6FomvYPfs+Jy9TfXmBpBuMWNH94SgCsZmJKcanySzgNNP6LjWxBvyLTa9KaMfDDM5oxRfrKDB0r/qeRsLwnBfA==", "dev": true }, "workerpool": { @@ -23641,6 +23349,15 @@ } } }, + "ember-maybe-in-element": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/ember-maybe-in-element/-/ember-maybe-in-element-0.4.0.tgz", + "integrity": "sha512-ADQ9jewz46Y2MWiTAKrheIukHiU6p0QHn3xqz1BBDDOmubW1WdAjSrvtkEWsJQ08DyxIn3RdMuNDzAUo6HN6qw==", + "dev": true, + "requires": { + "ember-cli-babel": "^7.1.0" + } + }, "ember-modal-dialog": { "version": "3.0.0-beta.4", "resolved": "https://registry.npmjs.org/ember-modal-dialog/-/ember-modal-dialog-3.0.0-beta.4.tgz", @@ -23938,21 +23655,14 @@ } } }, - "ember-popper": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/ember-popper/-/ember-popper-0.9.2.tgz", - "integrity": "sha512-Umm3NCOAnDqaBUcjlfA8alaDqcZIiNaLzpisFPQ/DMrc8lVUGBhmB6HTmshfAoU22ljZ8FSLk6aUUW10VL/3pg==", + "ember-named-arguments-polyfill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ember-named-arguments-polyfill/-/ember-named-arguments-polyfill-1.0.0.tgz", + "integrity": "sha1-C4H7gafO8sienh0CeLV55wi/Te0=", "dev": true, "requires": { - "babel6-plugin-strip-class-callcheck": "^6.0.0", - "ember-cli-babel": "^6.10.0", - "ember-cli-htmlbars": "^2.0.3", - "ember-cli-node-assets": "^0.2.2", - "ember-in-element-polyfill": "^0.1.2", - "ember-maybe-in-element": "^0.1.3", - "ember-raf-scheduler": "^0.1.0", - "fastboot-transform": "^0.1.0", - "popper.js": "^1.14.1" + "ember-cli-babel": "^6.6.0", + "ember-cli-version-checker": "^2.1.2" }, "dependencies": { "amd-name-resolver": { @@ -23964,63 +23674,6 @@ "ensure-posix-path": "^1.0.1" } }, - "broccoli-babel-transpiler": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/broccoli-babel-transpiler/-/broccoli-babel-transpiler-6.5.1.tgz", - "integrity": "sha512-w6GcnkxvHcNCte5FcLGEG1hUdQvlfvSN/6PtGWU/otg69Ugk8rUk51h41R0Ugoc+TNxyeFG1opRt2RlA87XzNw==", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "broccoli-funnel": "^2.0.1", - "broccoli-merge-trees": "^2.0.0", - "broccoli-persistent-filter": "^1.4.3", - "clone": "^2.0.0", - "hash-for-dep": "^1.2.3", - "heimdalljs-logger": "^0.1.7", - "json-stable-stringify": "^1.0.0", - "rsvp": "^4.8.2", - "workerpool": "^2.3.0" - } - }, - "broccoli-merge-trees": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/broccoli-merge-trees/-/broccoli-merge-trees-2.0.1.tgz", - "integrity": "sha512-WjaexJ+I8BxP5V5RNn6um/qDRSmKoiBC/QkRi79FT9ClHfldxRyCDs9mcV7mmoaPlsshmmPaUz5jdtcKA6DClQ==", - "dev": true, - "requires": { - "broccoli-plugin": "^1.3.0", - "merge-trees": "^1.0.1" - } - }, - "broccoli-persistent-filter": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/broccoli-persistent-filter/-/broccoli-persistent-filter-1.4.6.tgz", - "integrity": "sha512-0RejLwoC95kv4kta8KAa+FmECJCK78Qgm8SRDEK7YyU0N9Cx6KpY3UCDy9WELl3mCXLN8TokNxc7/hp3lL4lfw==", - "dev": true, - "requires": { - "async-disk-cache": "^1.2.1", - "async-promise-queue": "^1.0.3", - "broccoli-plugin": "^1.0.0", - "fs-tree-diff": "^0.5.2", - "hash-for-dep": "^1.0.2", - "heimdalljs": "^0.2.1", - "heimdalljs-logger": "^0.1.7", - "mkdirp": "^0.5.1", - "promise-map-series": "^0.2.1", - "rimraf": "^2.6.1", - "rsvp": "^3.0.18", - "symlink-or-copy": "^1.0.1", - "walk-sync": "^0.3.1" - }, - "dependencies": { - "rsvp": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.6.2.tgz", - "integrity": "sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw==", - "dev": true - } - } - }, "ember-cli-babel": { "version": "6.18.0", "resolved": "https://registry.npmjs.org/ember-cli-babel/-/ember-cli-babel-6.18.0.tgz", @@ -24042,18 +23695,6 @@ "semver": "^5.5.0" } }, - "ember-cli-htmlbars": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/ember-cli-htmlbars/-/ember-cli-htmlbars-2.0.5.tgz", - "integrity": "sha512-3f3PAxdnQ/fhQa8XP/3z4RLRgLHxV8j4Ln75aHbRdemOCjBa048KxL9l+acRLhCulbGQCMnLiIUIC89PAzLrcA==", - "dev": true, - "requires": { - "broccoli-persistent-filter": "^1.4.3", - "hash-for-dep": "^1.2.3", - "json-stable-stringify": "^1.0.0", - "strip-bom": "^3.0.0" - } - }, "ember-cli-version-checker": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/ember-cli-version-checker/-/ember-cli-version-checker-2.2.0.tgz", @@ -24063,19 +23704,82 @@ "resolve": "^1.3.3", "semver": "^5.3.0" } - }, - "merge-trees": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-trees/-/merge-trees-1.0.1.tgz", - "integrity": "sha1-zL5nRWl4f53vF/1G5lJfVwC70j4=", + } + } + }, + "ember-on-helper": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ember-on-helper/-/ember-on-helper-0.1.0.tgz", + "integrity": "sha512-jjafBnWfoA4VSSje476ft5G+urlvvuSDddwAJjKDCjKY9mbe3hAEsJiMBAaPObJRMm1FOglCuKjQZfwDDls6MQ==", + "dev": true, + "requires": { + "ember-cli-babel": "^7.7.3" + } + }, + "ember-popper": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/ember-popper/-/ember-popper-0.10.3.tgz", + "integrity": "sha512-mSSUHIVGFYr8yYDjPhnIlma/vxMptm7a3pySZWK29YSEDDgsEviL7sAhOiNxvV8/uaRmCbJj/2M68dYYGed1Dw==", + "dev": true, + "requires": { + "babel6-plugin-strip-class-callcheck": "^6.0.0", + "ember-angle-bracket-invocation-polyfill": "^2.0.2", + "ember-cli-babel": "^7.1.2", + "ember-cli-htmlbars": "^3.0.0", + "ember-cli-node-assets": "^0.2.2", + "ember-maybe-in-element": "^0.4.0", + "ember-named-arguments-polyfill": "^1.0.0", + "ember-raf-scheduler": "^0.1.0", + "ember-ref-modifier": "^0.1.2", + "fastboot-transform": "^0.1.0", + "popper.js": "^1.14.1" + }, + "dependencies": { + "broccoli-persistent-filter": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/broccoli-persistent-filter/-/broccoli-persistent-filter-2.3.1.tgz", + "integrity": "sha512-hVsmIgCDrl2NFM+3Gs4Cr2TA6UPaIZip99hN8mtkaUPgM8UeVnCbxelCvBjUBHo0oaaqP5jzqqnRVvb568Yu5g==", "dev": true, "requires": { - "can-symlink": "^1.0.0", - "fs-tree-diff": "^0.5.4", + "async-disk-cache": "^1.2.1", + "async-promise-queue": "^1.0.3", + "broccoli-plugin": "^1.0.0", + "fs-tree-diff": "^2.0.0", + "hash-for-dep": "^1.5.0", "heimdalljs": "^0.2.1", "heimdalljs-logger": "^0.1.7", - "rimraf": "^2.4.3", - "symlink-or-copy": "^1.0.0" + "mkdirp": "^0.5.1", + "promise-map-series": "^0.2.1", + "rimraf": "^2.6.1", + "rsvp": "^4.7.0", + "symlink-or-copy": "^1.0.1", + "sync-disk-cache": "^1.3.3", + "walk-sync": "^1.0.0" + } + }, + "ember-cli-htmlbars": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/ember-cli-htmlbars/-/ember-cli-htmlbars-3.1.0.tgz", + "integrity": "sha512-cgvRJM73IT0aePUG7oQ/afB7vSRBV3N0wu9BrWhHX2zkR7A7cUBI7KC9VPk6tbctCXoM7BRGsCC4aIjF7yrfXA==", + "dev": true, + "requires": { + "broccoli-persistent-filter": "^2.3.1", + "hash-for-dep": "^1.5.1", + "json-stable-stringify": "^1.0.1", + "strip-bom": "^3.0.0" + } + }, + "fs-tree-diff": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fs-tree-diff/-/fs-tree-diff-2.0.1.tgz", + "integrity": "sha512-x+CfAZ/lJHQqwlD64pYM5QxWjzWhSjroaVsr8PW831zOApL55qPibed0c+xebaLWVr2BnHFoHdrwOv8pzt8R5A==", + "dev": true, + "requires": { + "@types/symlink-or-copy": "^1.2.0", + "heimdalljs-logger": "^0.1.7", + "object-assign": "^4.1.0", + "path-posix": "^1.0.0", + "symlink-or-copy": "^1.1.8" } }, "rsvp": { @@ -24084,13 +23788,15 @@ "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", "dev": true }, - "workerpool": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-2.3.3.tgz", - "integrity": "sha512-L1ovlYHp6UObYqElXXpbd214GgbEKDED0d3sj7pRdFXjNkb2+un/AUcCkceHizO0IVI6SOGGncrcjozruCkRgA==", + "walk-sync": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/walk-sync/-/walk-sync-1.1.4.tgz", + "integrity": "sha512-nowc9thB/Jg0KW4TgxoRjLLYRPvl3DB/98S89r4ZcJqq2B0alNcKDh6pzLkBSkPMzRSMsJghJHQi79qw0YWEkA==", "dev": true, "requires": { - "object-assign": "4.1.1" + "@types/minimatch": "^3.0.3", + "ensure-posix-path": "^1.1.0", + "matcher-collection": "^1.1.1" } } } @@ -24473,6 +24179,16 @@ } } }, + "ember-ref-modifier": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/ember-ref-modifier/-/ember-ref-modifier-0.1.3.tgz", + "integrity": "sha512-ebZE8/DvDp7JktUXDZ4T3aACYMRsoLvKx8QhXCDTKgZu5hJIGBoq2nIuYstJHBQVBU0su0T5QZb4Bcz2GZI3yQ==", + "dev": true, + "requires": { + "ember-cli-babel": "^7.10.0", + "ember-modifier-manager-polyfill": "^1.0.1" + } + }, "ember-resolver": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/ember-resolver/-/ember-resolver-7.0.0.tgz", @@ -27575,15 +27291,60 @@ } }, "findup-sync": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", - "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz", + "integrity": "sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==", "dev": true, "requires": { "detect-file": "^1.0.0", "is-glob": "^4.0.0", - "micromatch": "^3.0.4", + "micromatch": "^4.0.2", "resolve-dir": "^1.0.1" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } } }, "fireworm": { @@ -27718,6 +27479,16 @@ "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", "dev": true }, + "focus-trap": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-5.1.0.tgz", + "integrity": "sha512-CkB/nrO55069QAUjWFBpX6oc+9V90Qhgpe6fBWApzruMq5gnlh90Oo7iSSDK7pKiV5ugG6OY2AXM5mxcmL3lwQ==", + "dev": true, + "requires": { + "tabbable": "^4.0.0", + "xtend": "^4.0.1" + } + }, "follow-redirects": { "version": "1.12.1", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.12.1.tgz", @@ -32277,9 +32048,9 @@ "dev": true }, "popper.js": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.15.0.tgz", - "integrity": "sha512-w010cY1oCUmI+9KwwlWki+r5jxKfTFDVoadl7MSrIujHU5MJ5OR6HTDj6Xo8aoR/QsA56x8jKjA59qGH4ELtrA==", + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", "dev": true }, "portfinder": { @@ -33097,7 +32868,7 @@ "recast": { "version": "0.12.9", "resolved": "https://registry.npmjs.org/recast/-/recast-0.12.9.tgz", - "integrity": "sha1-6OUr25aRr0Ysy9fBXVpRE2R6FfE=", + "integrity": "sha512-y7ANxCWmMW8xLOaiopiRDlyjQ9ajKRENBH+2wjntIbk3A6ZR1+BLQttkmSHMY7Arl+AAZFwJ10grg2T6f1WI8A==", "dev": true, "requires": { "ast-types": "0.10.1", @@ -33110,7 +32881,7 @@ "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true } } @@ -35040,6 +34811,12 @@ "integrity": "sha512-LO95GIW16x69LuND1nuuwM4pjgFGupg7pZ/4lU86AmchPKrhk0o2tpMU2unXRrqo81iAFe1YJ0nAGEVwsrZAgg==", "dev": true }, + "tabbable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-4.0.0.tgz", + "integrity": "sha512-H1XoH1URcBOa/rZZWxLxHCtOdVUEev+9vo5YdYhC9tCY4wnybX+VQrCYuy9ubkg69fCBxCONJOSLGfw0DWMffQ==", + "dev": true + }, "table": { "version": "5.2.3", "resolved": "https://registry.npmjs.org/table/-/table-5.2.3.tgz", diff --git a/package.json b/package.json index c0e5f5955..3b5e1b5ae 100644 --- a/package.json +++ b/package.json @@ -75,7 +75,7 @@ "ember-ace": "^2.0.1", "ember-ajax": "^5.0.0", "ember-auto-import": "^1.5.3", - "ember-bootstrap": "^2.8.1", + "ember-bootstrap": "^3.1.4", "ember-cli": "~3.16.0", "ember-cli-app-version": "^3.2.0", "ember-cli-autoprefixer": "^0.8.1", diff --git a/tests/integration/components/pipeline-header/component-test.js b/tests/integration/components/pipeline-header/component-test.js index d416925f0..f21b66c18 100644 --- a/tests/integration/components/pipeline-header/component-test.js +++ b/tests/integration/components/pipeline-header/component-test.js @@ -27,7 +27,7 @@ module('Integration | Component | pipeline header', function(hooks) { assert.dom('a.branch').hasText('master'); assert.dom('a.branch').hasAttribute('href', 'http://example.com/batman/batmobile'); - assert.dom('span.scm', 'github.com'); + assert.dom('span.scm').hasText('github.com'); assert.dom('.scm > .fa-github').exists({ count: 1 }); }); diff --git a/tests/integration/components/pipeline-list-view/component-test.js b/tests/integration/components/pipeline-list-view/component-test.js index 58583ae30..d91fa4ee3 100644 --- a/tests/integration/components/pipeline-list-view/component-test.js +++ b/tests/integration/components/pipeline-list-view/component-test.js @@ -9,8 +9,6 @@ module('Integration | Component | pipeline list view', function(hooks) { setupRenderingTest(hooks); test('it renders', async function(assert) { - let ticker = 0; - set(this, 'jobsDetails', [ { jobId: 1, @@ -54,13 +52,6 @@ module('Integration | Component | pipeline list view', function(hooks) { } ]); set(this, 'updateListViewJobs', () => { - if (ticker === 0) { - assert.ok(true); - ticker += 1; - - return Promise.resolve(this.jobsDetails); - } - return Promise.resolve([]); }); set(this, 'refreshListViewJobs', () => { @@ -91,8 +82,6 @@ module('Integration | Component | pipeline list view', function(hooks) { }); test('it renders then resets jobDetails', async function(assert) { - let ticker = 0; - set(this, 'jobsDetails', [ { jobId: 1, @@ -136,13 +125,6 @@ module('Integration | Component | pipeline list view', function(hooks) { } ]); set(this, 'updateListViewJobs', () => { - if (ticker === 0) { - assert.ok(true); - ticker += 1; - - return Promise.resolve(this.jobsDetails); - } - return Promise.resolve([]); }); set(this, 'refreshListViewJobs', () => { @@ -174,8 +156,6 @@ module('Integration | Component | pipeline list view', function(hooks) { }); test('it renders with duration', async function(assert) { - let ticker = 0; - set(this, 'jobsDetails', [ { jobId: 1, @@ -192,13 +172,6 @@ module('Integration | Component | pipeline list view', function(hooks) { } ]); set(this, 'updateListViewJobs', () => { - if (ticker === 0) { - assert.ok(true); - ticker += 1; - - return Promise.resolve(this.jobsDetails); - } - return Promise.resolve([]); }); set(this, 'refreshListViewJobs', () => { @@ -234,8 +207,6 @@ module('Integration | Component | pipeline list view', function(hooks) { }); test('it renders and build running', async function(assert) { - let ticker = 0; - set(this, 'jobsDetails', [ { jobId: 1, @@ -252,13 +223,6 @@ module('Integration | Component | pipeline list view', function(hooks) { } ]); set(this, 'updateListViewJobs', () => { - if (ticker === 0) { - assert.ok(true); - ticker += 1; - - return Promise.resolve(this.jobsDetails); - } - return Promise.resolve([]); }); set(this, 'refreshListViewJobs', () => { @@ -291,8 +255,6 @@ module('Integration | Component | pipeline list view', function(hooks) { }); test('it renders and build created', async function(assert) { - let ticker = 0; - set(this, 'jobsDetails', [ { jobId: 1, @@ -309,13 +271,6 @@ module('Integration | Component | pipeline list view', function(hooks) { } ]); set(this, 'updateListViewJobs', () => { - if (ticker === 0) { - assert.ok(true); - ticker += 1; - - return Promise.resolve(this.jobsDetails); - } - return Promise.resolve([]); }); set(this, 'refreshListViewJobs', () => { @@ -348,8 +303,6 @@ module('Integration | Component | pipeline list view', function(hooks) { }); test('it renders and build queued', async function(assert) { - let ticker = 0; - set(this, 'jobsDetails', [ { jobId: 1, @@ -366,13 +319,6 @@ module('Integration | Component | pipeline list view', function(hooks) { } ]); set(this, 'updateListViewJobs', () => { - if (ticker === 0) { - assert.ok(true); - ticker += 1; - - return Promise.resolve(this.jobsDetails); - } - return Promise.resolve([]); }); set(this, 'refreshListViewJobs', () => { @@ -405,8 +351,6 @@ module('Integration | Component | pipeline list view', function(hooks) { }); test('it renders and build blocked', async function(assert) { - let ticker = 0; - set(this, 'jobsDetails', [ { jobId: 1, @@ -423,13 +367,6 @@ module('Integration | Component | pipeline list view', function(hooks) { } ]); set(this, 'updateListViewJobs', () => { - if (ticker === 0) { - assert.ok(true); - ticker += 1; - - return Promise.resolve(this.jobsDetails); - } - return Promise.resolve([]); }); set(this, 'refreshListViewJobs', () => { @@ -462,8 +399,6 @@ module('Integration | Component | pipeline list view', function(hooks) { }); test('it renders and build frozen', async function(assert) { - let ticker = 0; - set(this, 'jobsDetails', [ { jobId: 1, @@ -480,13 +415,6 @@ module('Integration | Component | pipeline list view', function(hooks) { } ]); set(this, 'updateListViewJobs', () => { - if (ticker === 0) { - assert.ok(true); - ticker += 1; - - return Promise.resolve(this.jobsDetails); - } - return Promise.resolve([]); }); set(this, 'refreshListViewJobs', () => { @@ -519,8 +447,6 @@ module('Integration | Component | pipeline list view', function(hooks) { }); test('it renders and not started', async function(assert) { - let ticker = 0; - set(this, 'jobsDetails', [ { jobId: 1, @@ -537,13 +463,6 @@ module('Integration | Component | pipeline list view', function(hooks) { } ]); set(this, 'updateListViewJobs', () => { - if (ticker === 0) { - assert.ok(true); - ticker += 1; - - return Promise.resolve(this.jobsDetails); - } - return Promise.resolve([]); }); set(this, 'refreshListViewJobs', () => { @@ -575,8 +494,6 @@ module('Integration | Component | pipeline list view', function(hooks) { }); test('it renders and aborted', async function(assert) { - let ticker = 0; - set(this, 'jobsDetails', [ { jobId: 1, @@ -593,13 +510,6 @@ module('Integration | Component | pipeline list view', function(hooks) { } ]); set(this, 'updateListViewJobs', () => { - if (ticker === 0) { - assert.ok(true); - ticker += 1; - - return Promise.resolve(this.jobsDetails); - } - return Promise.resolve([]); }); set(this, 'refreshListViewJobs', () => {