From fb5cdda9daa65215ef3a8294eba57042bece4a83 Mon Sep 17 00:00:00 2001 From: Abram Booth Date: Mon, 14 Aug 2017 15:00:42 -0400 Subject: [PATCH 01/44] [Feature] Update for reviews (#2) * Update models for reviews API * ReviewLog adapter and serializer * Fix log creator model --- addon/adapters/review-log.js | 6 ++++++ addon/models/preprint-provider.js | 7 +++++++ addon/models/preprint.js | 2 ++ addon/models/review-log.js | 16 ++++++++++++++++ addon/serializers/review-log.js | 4 ++++ app/adapters/review-log.js | 1 + app/models/review-log.js | 1 + app/serializers/review-log.js | 1 + tests/unit/adapters/review-log-test.js | 12 ++++++++++++ tests/unit/models/review-log-test.js | 12 ++++++++++++ tests/unit/serializers/review-log-test.js | 15 +++++++++++++++ 11 files changed, 77 insertions(+) create mode 100644 addon/adapters/review-log.js create mode 100644 addon/models/review-log.js create mode 100644 addon/serializers/review-log.js create mode 100644 app/adapters/review-log.js create mode 100644 app/models/review-log.js create mode 100644 app/serializers/review-log.js create mode 100644 tests/unit/adapters/review-log-test.js create mode 100644 tests/unit/models/review-log-test.js create mode 100644 tests/unit/serializers/review-log-test.js diff --git a/addon/adapters/review-log.js b/addon/adapters/review-log.js new file mode 100644 index 000000000..cd5d5fe18 --- /dev/null +++ b/addon/adapters/review-log.js @@ -0,0 +1,6 @@ +import OsfAdapter from './osf-adapter'; +import config from 'ember-get-config'; + +export default OsfAdapter.extend({ + namespace: `${config.OSF.apiNamespace}/reviews`, +}); diff --git a/addon/models/preprint-provider.js b/addon/models/preprint-provider.js index 537a7c017..202086cd2 100644 --- a/addon/models/preprint-provider.js +++ b/addon/models/preprint-provider.js @@ -15,6 +15,13 @@ export default OsfModel.extend({ additionalProviders: DS.attr(), shareSource: DS.attr('string'), preprintWord: DS.attr('string'), + + // Reviews settings + reviewsWorkflow: DS.attr('string'), + reviewsCommentsPrivate: DS.attr('boolean'), + reviewsCommentsAnonymous: DS.attr('boolean'), + permissions: DS.attr(), + // Relationships taxonomies: DS.hasMany('taxonomy'), highlightedTaxonomies: DS.hasMany('taxonomy'), diff --git a/addon/models/preprint.js b/addon/models/preprint.js index 8c0d2c4cc..d95785c90 100644 --- a/addon/models/preprint.js +++ b/addon/models/preprint.js @@ -27,10 +27,12 @@ export default OsfModel.extend({ isPublished: DS.attr('boolean'), isPreprintOrphan: DS.attr('boolean'), licenseRecord: DS.attr(), + reviewsState: DS.attr('string'), // Relationships node: DS.belongsTo('node', { inverse: null, async: true }), license: DS.belongsTo('license', { inverse: null }), primaryFile: DS.belongsTo('file', { inverse: null }), provider: DS.belongsTo('preprint-provider', { inverse: 'preprints', async: true }), + reviewLogs: DS.hasMany('review-log', { inverse: 'reviewable', async: true }), }); diff --git a/addon/models/review-log.js b/addon/models/review-log.js new file mode 100644 index 000000000..440bb64dc --- /dev/null +++ b/addon/models/review-log.js @@ -0,0 +1,16 @@ +import DS from 'ember-data'; +import OsfModel from './osf-model'; + +export default OsfModel.extend({ + action: DS.attr('string'), + comment: DS.attr('string'), + fromState: DS.attr('string'), + toState: DS.attr('string'), + dateCreated: DS.attr('date'), + dateModified: DS.attr('date'), + + // Relationships + provider: DS.belongsTo('preprint-provider', { inverse: null, async: true }), + reviewable: DS.belongsTo('preprint', { inverse: 'reviewLogs', async: true }), + creator: DS.belongsTo('user', { inverse: null, async: true }), +}); diff --git a/addon/serializers/review-log.js b/addon/serializers/review-log.js new file mode 100644 index 000000000..c5617e1d4 --- /dev/null +++ b/addon/serializers/review-log.js @@ -0,0 +1,4 @@ +import OsfSerializer from './osf-serializer'; + +export default OsfSerializer.extend({ +}); diff --git a/app/adapters/review-log.js b/app/adapters/review-log.js new file mode 100644 index 000000000..30a05a4a7 --- /dev/null +++ b/app/adapters/review-log.js @@ -0,0 +1 @@ +export { default } from 'ember-osf/adapters/review-log'; diff --git a/app/models/review-log.js b/app/models/review-log.js new file mode 100644 index 000000000..6c653a99e --- /dev/null +++ b/app/models/review-log.js @@ -0,0 +1 @@ +export { default } from 'ember-osf/models/review-log'; diff --git a/app/serializers/review-log.js b/app/serializers/review-log.js new file mode 100644 index 000000000..3c00f2b9f --- /dev/null +++ b/app/serializers/review-log.js @@ -0,0 +1 @@ +export { default } from 'ember-osf/serializers/review-log'; diff --git a/tests/unit/adapters/review-log-test.js b/tests/unit/adapters/review-log-test.js new file mode 100644 index 000000000..e14e8207c --- /dev/null +++ b/tests/unit/adapters/review-log-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('adapter:review-log', 'Unit | Adapter | review log', { + // Specify the other units that are required for this test. + // needs: ['serializer:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let adapter = this.subject(); + assert.ok(adapter); +}); diff --git a/tests/unit/models/review-log-test.js b/tests/unit/models/review-log-test.js new file mode 100644 index 000000000..e981d1684 --- /dev/null +++ b/tests/unit/models/review-log-test.js @@ -0,0 +1,12 @@ +import { moduleForModel, test } from 'ember-qunit'; + +moduleForModel('review-log', 'Unit | Model | review log', { + // Specify the other units that are required for this test. + needs: [] +}); + +test('it exists', function(assert) { + let model = this.subject(); + // let store = this.store(); + assert.ok(!!model); +}); diff --git a/tests/unit/serializers/review-log-test.js b/tests/unit/serializers/review-log-test.js new file mode 100644 index 000000000..b11bd1728 --- /dev/null +++ b/tests/unit/serializers/review-log-test.js @@ -0,0 +1,15 @@ +import { moduleForModel, test } from 'ember-qunit'; + +moduleForModel('review-log', 'Unit | Serializer | review log', { + // Specify the other units that are required for this test. + needs: ['serializer:review-log'] +}); + +// Replace this with your real tests. +test('it serializes records', function(assert) { + let record = this.subject(); + + let serializedRecord = record.serialize(); + + assert.ok(serializedRecord); +}); From c237ed7ad0342658662c808eee754d7a8de680e8 Mon Sep 17 00:00:00 2001 From: Abram Booth Date: Fri, 18 Aug 2017 15:16:31 -0400 Subject: [PATCH 02/44] [Feature] Include reviewable when creating review logs (#3) * Include reviewable when creating review logs * Add title/contributors fields to preprint model * Clean up serializing relationships --- addon/models/preprint.js | 1 + addon/serializers/node.js | 26 ++++-------------------- addon/serializers/osf-serializer.js | 19 ++++++++++++++++-- addon/serializers/preprint.js | 31 +++++++++-------------------- addon/serializers/review-log.js | 5 +++++ 5 files changed, 36 insertions(+), 46 deletions(-) diff --git a/addon/models/preprint.js b/addon/models/preprint.js index d95785c90..b0cd7366e 100644 --- a/addon/models/preprint.js +++ b/addon/models/preprint.js @@ -35,4 +35,5 @@ export default OsfModel.extend({ primaryFile: DS.belongsTo('file', { inverse: null }), provider: DS.belongsTo('preprint-provider', { inverse: 'preprints', async: true }), reviewLogs: DS.hasMany('review-log', { inverse: 'reviewable', async: true }), + contributors: DS.hasMany('contributors', { async: true }), }); diff --git a/addon/serializers/node.js b/addon/serializers/node.js index 113f0e2a3..b0c767bf5 100644 --- a/addon/serializers/node.js +++ b/addon/serializers/node.js @@ -2,26 +2,8 @@ import Ember from 'ember'; import OsfSerializer from './osf-serializer'; export default OsfSerializer.extend({ - serialize(snapshot) { - // Normal OSF serializer strips out relationships. We need to add back primaryFile/node/provider for this endpoint - const res = this._super(...arguments); - res.data.relationships = {}; - let hasRelation = false; - for (var rel in snapshot.record._dirtyRelationships) { - let relationship = Ember.String.underscore(rel); - if (relationship.includes('license')) { - res.data.relationships[relationship] = { - data: { - id: snapshot.belongsTo(rel, { id: true }), - type: 'licenses' - } - }; - hasRelation = true; - } - } - if (!hasRelation) { - delete res.data.relationships; - } - return res; - } + // Serialize license relationship + relationshipTypes: { + license: 'licenses', + }, }); diff --git a/addon/serializers/osf-serializer.js b/addon/serializers/osf-serializer.js index bba353fef..7c7587384 100644 --- a/addon/serializers/osf-serializer.js +++ b/addon/serializers/osf-serializer.js @@ -21,6 +21,9 @@ export default DS.JSONAPISerializer.extend({ } }, + // Map from relationship field name to type. Override to serialize relationships. + relationshipTypes: {}, + /** * Extract information about records embedded inside this request * @method _extractEmbeds @@ -99,8 +102,20 @@ export default DS.JSONAPISerializer.extend({ } } } - // Don't send relationships to the server; this can lead to 500 errors. - delete serialized.data.relationships; + + // Only serialize dirty, whitelisted relationships + serialized.data.relationships = {}; + for (const relationship in snapshot.record._dirtyRelationships) { + const type = this.get('relationshipTypes')[relationship]; + if (type) { + serialized.data.relationships[Ember.String.underscore(relationship)] = { + data: { + id: snapshot.belongsTo(relationship, { id: true }), + type + } + }; + } + } return serialized; }, diff --git a/addon/serializers/preprint.js b/addon/serializers/preprint.js index 00ea977fe..0659804ee 100644 --- a/addon/serializers/preprint.js +++ b/addon/serializers/preprint.js @@ -2,31 +2,18 @@ import OsfSerializer from './osf-serializer'; import Ember from 'ember'; export default OsfSerializer.extend({ + // Serialize these relationships + relationshipTypes: { + primaryFile: 'files', + node: 'nodes', + provider: 'providers', + license: 'licenses', + }, + serialize(snapshot) { - // Normal OSF serializer strips out relationships. We need to add back primaryFile/node/provider for this endpoint const res = this._super(...arguments); - res.data.relationships = {}; - for (var rel in snapshot.record._dirtyRelationships) { - let relationship = Ember.String.underscore(rel); - res.data.relationships[relationship] = { - data: { - id: snapshot.belongsTo(rel, { id: true }), - type: relTypes[rel] - } - }; - } - if (res.data.attributes && 'subjects' in snapshot.record.changedAttributes()) res.data.attributes.subjects = (snapshot.record.get('subjects') || []); return res; - } - + }, }); - -// Type mapping for preprint relationship fields -const relTypes = { - primaryFile: 'files', - node: 'nodes', - provider: 'providers', - license: 'licenses', -}; diff --git a/addon/serializers/review-log.js b/addon/serializers/review-log.js index c5617e1d4..2db1b2a06 100644 --- a/addon/serializers/review-log.js +++ b/addon/serializers/review-log.js @@ -1,4 +1,9 @@ import OsfSerializer from './osf-serializer'; +import Ember from 'ember'; export default OsfSerializer.extend({ + // Serialize reviewable relationship + relationshipTypes: { + reviewable: 'preprints', + }, }); From 429ce0e3f7b90153a5253b084ac7a4cfd4fe7f24 Mon Sep 17 00:00:00 2001 From: Abram Booth Date: Fri, 25 Aug 2017 09:47:41 -0400 Subject: [PATCH 03/44] Add dateLastTransitioned to preprint model (#5) --- addon/models/preprint.js | 1 + 1 file changed, 1 insertion(+) diff --git a/addon/models/preprint.js b/addon/models/preprint.js index b0cd7366e..dc96b77bb 100644 --- a/addon/models/preprint.js +++ b/addon/models/preprint.js @@ -28,6 +28,7 @@ export default OsfModel.extend({ isPreprintOrphan: DS.attr('boolean'), licenseRecord: DS.attr(), reviewsState: DS.attr('string'), + dateLastTransitioned: DS.attr('date'), // Relationships node: DS.belongsTo('node', { inverse: null, async: true }), From 55e69ab8d74665320e2657f55655cd5c7cf94d58 Mon Sep 17 00:00:00 2001 From: Chris Seto Date: Wed, 6 Sep 2017 13:12:39 -0400 Subject: [PATCH 04/44] [Fix] Only fetch the logged in user once --- addon/authenticators/osf-cookie.js | 7 +++++-- addon/services/current-user.js | 17 ++++------------- 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/addon/authenticators/osf-cookie.js b/addon/authenticators/osf-cookie.js index ecacbd242..d447dffde 100644 --- a/addon/authenticators/osf-cookie.js +++ b/addon/authenticators/osf-cookie.js @@ -20,7 +20,8 @@ import { authenticatedAJAX } from 'ember-osf/utils/ajax-helpers'; */ export default Base.extend({ // HACK: Lets us clear session manually, rather than after .invalidate method resolves - session: Ember.inject.service('session'), + store: Ember.inject.service(), + session: Ember.inject.service(), _test() { return authenticatedAJAX({ @@ -31,7 +32,9 @@ export default Base.extend({ xhrFields: { withCredentials: true } - }).then(function(res) { + }).then(res => { + // Push the result into the store for later use by the current-user service + this.get('store').pushPayload(res); return res.data; }); }, diff --git a/addon/services/current-user.js b/addon/services/current-user.js index 2c243e276..e13eeb319 100644 --- a/addon/services/current-user.js +++ b/addon/services/current-user.js @@ -34,18 +34,9 @@ export default Ember.Service.extend({ * @return {Promise} */ load() { - return new Ember.RSVP.Promise((resolve, reject) => { - var currentUserId = this.get('currentUserId'); - if (currentUserId) { - var currentUser = this.get('store').peekRecord('user', currentUserId); - if (currentUser) { - resolve(currentUser); - } else { - this.get('store').findRecord('user', currentUserId).then((user) => resolve(user), reject); - } - } else { - reject(); - } - }); + let userId = this.get('currentUserId'); + let user = this.get('store').peekRecord('user', userId); + if (user) return Ember.RSVP.resolve(user); + return this.get('store').findRecord('user', userId); } }); From d4338923288324157891c9b055e1d52b93bf1a92 Mon Sep 17 00:00:00 2001 From: Chris Seto Date: Thu, 7 Sep 2017 11:50:43 -0400 Subject: [PATCH 05/44] Allow reviews settings to be nullable --- addon/models/preprint-provider.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addon/models/preprint-provider.js b/addon/models/preprint-provider.js index 202086cd2..934c953ae 100644 --- a/addon/models/preprint-provider.js +++ b/addon/models/preprint-provider.js @@ -18,8 +18,8 @@ export default OsfModel.extend({ // Reviews settings reviewsWorkflow: DS.attr('string'), - reviewsCommentsPrivate: DS.attr('boolean'), - reviewsCommentsAnonymous: DS.attr('boolean'), + reviewsCommentsPrivate: DS.attr('boolean', {allowNull: true}), + reviewsCommentsAnonymous: DS.attr('boolean', {allowNull: true}), permissions: DS.attr(), // Relationships From 0cc20ec0deea65a3b398ace0093d229f1f73d0e0 Mon Sep 17 00:00:00 2001 From: Chris Seto Date: Thu, 7 Sep 2017 13:06:26 -0400 Subject: [PATCH 06/44] Fix infinite authentication --- addon/authenticators/osf-cookie.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/addon/authenticators/osf-cookie.js b/addon/authenticators/osf-cookie.js index d447dffde..20b311e66 100644 --- a/addon/authenticators/osf-cookie.js +++ b/addon/authenticators/osf-cookie.js @@ -34,7 +34,9 @@ export default Base.extend({ } }).then(res => { // Push the result into the store for later use by the current-user service - this.get('store').pushPayload(res); + // Note: we have to deepcopy res because pushPayload mutates our data + // and causes an infinite loop because reasons + this.get('store').pushPayload(Ember.copy(res, true)); return res.data; }); }, @@ -67,11 +69,6 @@ export default Base.extend({ * @return {Promise} */ authenticate(code) { - let jqDeferred = this._test(code); - return new Ember.RSVP.Promise((resolve, reject) => { - // TODO: Improve param capture - jqDeferred.done((value) => resolve(value)); - jqDeferred.fail((reason) => reject(reason)); - }); + return this._test(code); } }); From b844a34fb1267aedeac29ae9fa1f98e6df83799e Mon Sep 17 00:00:00 2001 From: Chris Seto Date: Mon, 11 Sep 2017 09:14:00 -0400 Subject: [PATCH 07/44] Add support for using query parameters in findRecord --- addon/adapters/osf-adapter.js | 4 ++-- addon/models/preprint-provider.js | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/addon/adapters/osf-adapter.js b/addon/adapters/osf-adapter.js index 9e3f136fa..739eadb76 100644 --- a/addon/adapters/osf-adapter.js +++ b/addon/adapters/osf-adapter.js @@ -37,13 +37,13 @@ export default DS.JSONAPIAdapter.extend(HasManyQuery.RESTAdapterMixin, GenericDa * * @method buildQuery */ - buildQuery() { + buildQuery(snapshot) { let query = this._super(...arguments); if (query.include) { query.embed = query.include; } delete query.include; - return query; + return Ember.merge(query, Ember.getWithDefault(snapshot, 'adapterOptions.query', {})); }, buildURL(modelName, id, snapshot, requestType) { var url = this._super(...arguments); diff --git a/addon/models/preprint-provider.js b/addon/models/preprint-provider.js index 934c953ae..62f150f6c 100644 --- a/addon/models/preprint-provider.js +++ b/addon/models/preprint-provider.js @@ -1,3 +1,4 @@ +import Ember from 'ember'; import DS from 'ember-data'; import OsfModel from 'ember-osf/models/osf-model'; @@ -17,10 +18,11 @@ export default OsfModel.extend({ preprintWord: DS.attr('string'), // Reviews settings + permissions: DS.attr(), reviewsWorkflow: DS.attr('string'), reviewsCommentsPrivate: DS.attr('boolean', {allowNull: true}), reviewsCommentsAnonymous: DS.attr('boolean', {allowNull: true}), - permissions: DS.attr(), + reviewableStatusCounts: Ember.computed.alias('links.relationships.preprints.links.related.meta'), // Relationships taxonomies: DS.hasMany('taxonomy'), From a7f14a0ccd8558f9cd825a65b7df5457c42c4d5e Mon Sep 17 00:00:00 2001 From: Lauren Barker Date: Mon, 11 Sep 2017 11:39:43 -0400 Subject: [PATCH 08/44] [Fix] Use `getRecords()` instead of `.record` (#8) --- addon/models/node.js | 4 ++-- addon/models/osf-model.js | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/addon/models/node.js b/addon/models/node.js index 3fe8572d0..2d8afa1d8 100644 --- a/addon/models/node.js +++ b/addon/models/node.js @@ -150,13 +150,13 @@ export default OsfModel.extend(FileItemMixin, { var contributors = this.hasMany('contributors').hasManyRelationship; this.set( '_dirtyRelationships.contributors.update', - contributors.members.list.filter(m => !m.record.get('isNew') && Object.keys(m.record.changedAttributes()).length > 0) + contributors.members.list.filter(m => !m.getRecord().get('isNew') && Object.keys(m.getRecord().changedAttributes()).length > 0) ); // Need to included created contributors even in relationship // hasLoaded is false this.set( '_dirtyRelationships.contributors.create', - contributors.members.list.filter(m => m.record.get('isNew')) + contributors.members.list.filter(m => m.getRecord().get('isNew')) ); // Contributors are a 'real' delete, not just a de-reference this.set( diff --git a/addon/models/osf-model.js b/addon/models/osf-model.js index 9bd5d93f8..4a5b36a80 100644 --- a/addon/models/osf-model.js +++ b/addon/models/osf-model.js @@ -57,12 +57,12 @@ export default DS.Model.extend(HasManyQuery.ModelMixin, { var relation = this.resolveRelationship(rel); // TODO(samchrisinger): not sure if hasLoaded is a subset if the hasData state if (relation.hasData && relation.hasLoaded) { - var canonicalIds = relation.canonicalMembers.list.map(member => member.record.get('id')); - var currentIds = relation.members.list.map(member => member.record.get('id')); + var canonicalIds = relation.canonicalMembers.list.map(member => member.getRecord().get('id')); + var currentIds = relation.members.list.map(member => member.getRecord().get('id')); var changes = { - create: relation.members.list.filter(m => m.record.get('isNew')), - add: relation.members.list.filter(m => !m.record.get('isNew') && canonicalIds.indexOf(m.record.get('id')) === -1), - remove: relation.canonicalMembers.list.filter(m => currentIds.indexOf(m.record.get('id')) === -1) + create: relation.members.list.filter(m => m.getRecord().get('isNew')), + add: relation.members.list.filter(m => !m.getRecord().get('isNew') && canonicalIds.indexOf(m.getRecord().get('id')) === -1), + remove: relation.canonicalMembers.list.filter(m => currentIds.indexOf(m.getRecord().get('id')) === -1) }; var other = this.get('_dirtyRelationships.${rel}') || {}; From 607311ec7498f8963293c9f52178d6172cd588ad Mon Sep 17 00:00:00 2001 From: Chris Seto Date: Tue, 12 Sep 2017 14:22:01 -0400 Subject: [PATCH 09/44] Tweaks and updates for reviews --- addon/components/citation-widget/component.js | 2 +- addon/components/new-osf-navbar/component.js | 11 +++++++++-- addon/const/service-links.js | 3 ++- addon/models/preprint.js | 19 +++++++++++++++++++ addon/utils/load-relationship.js | 13 +++++++++++++ 5 files changed, 44 insertions(+), 4 deletions(-) diff --git a/addon/components/citation-widget/component.js b/addon/components/citation-widget/component.js index 2c76c57c1..d3aca84eb 100644 --- a/addon/components/citation-widget/component.js +++ b/addon/components/citation-widget/component.js @@ -35,7 +35,7 @@ export default Ember.Component.extend({ node: null, store: Ember.inject.service(), - didRender() { + didReceiveAttrs() { const node = this.get('node'); if (!node) { diff --git a/addon/components/new-osf-navbar/component.js b/addon/components/new-osf-navbar/component.js index 9b47c7c2b..a1884c88f 100644 --- a/addon/components/new-osf-navbar/component.js +++ b/addon/components/new-osf-navbar/component.js @@ -26,7 +26,13 @@ import AnalyticsMixin from 'ember-osf/mixins/analytics'; export default Ember.Component.extend(hostAppName, AnalyticsMixin, { layout, session: Ember.inject.service(), - osfServices: osfServices, + osfServices: Ember.computed('hostAppName', function() { + if (this.get('hostAppName') !== 'preprints') return osfServices; + return osfServices.concat([{ + name: 'REVIEWS', + url: serviceLinks.reviewsHome, + }]); + }), serviceLinks: serviceLinks, host: config.OSF.url, currentService: Ember.computed('hostAppName', function() { // Pulls current service name from consuming service's config file @@ -39,9 +45,10 @@ export default Ember.Component.extend(hostAppName, AnalyticsMixin, { currentServiceLink: Ember.computed('serviceLinks', 'currentService', function() { const serviceMapping = { HOME: 'osfHome', + MEETINGS: 'meetingsHome', PREPRINTS: 'preprintsHome', REGISTRIES: 'registriesHome', - MEETINGS: 'meetingsHome' + REVIEWS: 'reviewsHome', }; const service = this.get('currentService'); return this.get('serviceLinks')[serviceMapping[service]]; diff --git a/addon/const/service-links.js b/addon/const/service-links.js index be8a3bf93..3d75a83b2 100644 --- a/addon/const/service-links.js +++ b/addon/const/service-links.js @@ -31,7 +31,8 @@ const serviceLinks = { registriesDiscover: `${osfUrl}registries/discover/`, registriesHome: `${osfUrl}registries/`, registriesSupport: 'http://help.osf.io/m/registrations/', - settings: `${osfUrl}settings/` + settings: `${osfUrl}settings/`, + reviewsHome: `${osfUrl}reviews/`, }; diff --git a/addon/models/preprint.js b/addon/models/preprint.js index dc96b77bb..10673f9f4 100644 --- a/addon/models/preprint.js +++ b/addon/models/preprint.js @@ -1,3 +1,4 @@ +import Ember from 'ember'; import DS from 'ember-data'; import OsfModel from './osf-model'; @@ -37,4 +38,22 @@ export default OsfModel.extend({ provider: DS.belongsTo('preprint-provider', { inverse: 'preprints', async: true }), reviewLogs: DS.hasMany('review-log', { inverse: 'reviewable', async: true }), contributors: DS.hasMany('contributors', { async: true }), + + uniqueSubjects: Ember.computed('subjects', function() { + if (!this.get('subjects')) return []; + return this.get('subjects').reduce((acc, val) => acc.concat(val), []).uniqBy('id'); + }), + + doiUrl: Ember.computed('doi', function() { + return `https://dx.doi.org/${this.get('doi')}`; + }), + + licenseText: Ember.computed('license', function() { + const text = this.get('license.text') || ''; + const {year = '', copyright_holders = []} = this.get('licenseRecord'); + + return text + .replace(/({{year}})/g, year) + .replace(/({{copyrightHolders}})/g, copyright_holders.join(', ')); + }), }); diff --git a/addon/utils/load-relationship.js b/addon/utils/load-relationship.js index 529aa0770..92793b34a 100644 --- a/addon/utils/load-relationship.js +++ b/addon/utils/load-relationship.js @@ -1,5 +1,18 @@ import Ember from 'ember'; +export const ArrayPromiseProxy = Ember.ArrayProxy.extend(Ember.PromiseProxyMixin); + +export function loadRelation(model, relationship) { + if (model.get('content') && !model.query) { + // model was loaded via a relationship, the proxy object + // does not properly proxy .query so we unwrap it here + model = model.get('content') + } + let results = Ember.A(); + let promise = loadAll(model, relationship, results).then(() => results); + return ArrayPromiseProxy.create({promise}); +} + export default function loadAll(model, relationship, dest, options = {}) { var page = options.page || 1; var query = { From e416b28c84b034df75ff65abe77a85f7cbd482d8 Mon Sep 17 00:00:00 2001 From: Chris Seto Date: Tue, 12 Sep 2017 14:34:28 -0400 Subject: [PATCH 10/44] Fix typo --- addon/components/new-osf-navbar/component.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addon/components/new-osf-navbar/component.js b/addon/components/new-osf-navbar/component.js index a1884c88f..00c28aa58 100644 --- a/addon/components/new-osf-navbar/component.js +++ b/addon/components/new-osf-navbar/component.js @@ -27,7 +27,7 @@ export default Ember.Component.extend(hostAppName, AnalyticsMixin, { layout, session: Ember.inject.service(), osfServices: Ember.computed('hostAppName', function() { - if (this.get('hostAppName') !== 'preprints') return osfServices; + if (this.get('hostAppName') !== 'Preprints') return osfServices; return osfServices.concat([{ name: 'REVIEWS', url: serviceLinks.reviewsHome, From 9cc89c5c2fb52a2e84bf106ade52b9d7d7b8e35e Mon Sep 17 00:00:00 2001 From: Abram Booth Date: Thu, 14 Sep 2017 16:08:33 -0400 Subject: [PATCH 11/44] [Feature][MOD-73] Rename log to action (minimal branch) (#2) * Rename `review-log` to `action` * plac8 flake8 * Fix test errors --- addon/adapters/action.js | 3 +++ addon/adapters/review-log.js | 6 ------ addon/models/{review-log.js => action.js} | 4 ++-- addon/models/preprint.js | 2 +- addon/serializers/action.js | 12 ++++++++++++ addon/serializers/node.js | 1 - addon/serializers/osf-serializer.js | 2 ++ addon/serializers/preprint.js | 1 - addon/serializers/review-log.js | 9 --------- app/adapters/action.js | 1 + app/adapters/review-log.js | 1 - app/models/action.js | 1 + app/models/review-log.js | 1 - app/serializers/action.js | 1 + app/serializers/review-log.js | 1 - .../adapters/{review-log-test.js => action-test.js} | 2 +- tests/unit/models/action-test.js | 12 ++++++++++++ tests/unit/models/preprint-test.js | 10 +++++----- tests/unit/models/review-log-test.js | 12 ------------ .../{review-log-test.js => action-test.js} | 4 ++-- 20 files changed, 43 insertions(+), 43 deletions(-) create mode 100644 addon/adapters/action.js delete mode 100644 addon/adapters/review-log.js rename addon/models/{review-log.js => action.js} (79%) create mode 100644 addon/serializers/action.js delete mode 100644 addon/serializers/review-log.js create mode 100644 app/adapters/action.js delete mode 100644 app/adapters/review-log.js create mode 100644 app/models/action.js delete mode 100644 app/models/review-log.js create mode 100644 app/serializers/action.js delete mode 100644 app/serializers/review-log.js rename tests/unit/adapters/{review-log-test.js => action-test.js} (81%) create mode 100644 tests/unit/models/action-test.js delete mode 100644 tests/unit/models/review-log-test.js rename tests/unit/serializers/{review-log-test.js => action-test.js} (76%) diff --git a/addon/adapters/action.js b/addon/adapters/action.js new file mode 100644 index 000000000..f9d075992 --- /dev/null +++ b/addon/adapters/action.js @@ -0,0 +1,3 @@ +import OsfAdapter from './osf-adapter'; + +export default OsfAdapter.extend({}); diff --git a/addon/adapters/review-log.js b/addon/adapters/review-log.js deleted file mode 100644 index cd5d5fe18..000000000 --- a/addon/adapters/review-log.js +++ /dev/null @@ -1,6 +0,0 @@ -import OsfAdapter from './osf-adapter'; -import config from 'ember-get-config'; - -export default OsfAdapter.extend({ - namespace: `${config.OSF.apiNamespace}/reviews`, -}); diff --git a/addon/models/review-log.js b/addon/models/action.js similarity index 79% rename from addon/models/review-log.js rename to addon/models/action.js index 440bb64dc..a61057b9e 100644 --- a/addon/models/review-log.js +++ b/addon/models/action.js @@ -2,7 +2,7 @@ import DS from 'ember-data'; import OsfModel from './osf-model'; export default OsfModel.extend({ - action: DS.attr('string'), + actionTrigger: DS.attr('string'), comment: DS.attr('string'), fromState: DS.attr('string'), toState: DS.attr('string'), @@ -11,6 +11,6 @@ export default OsfModel.extend({ // Relationships provider: DS.belongsTo('preprint-provider', { inverse: null, async: true }), - reviewable: DS.belongsTo('preprint', { inverse: 'reviewLogs', async: true }), + target: DS.belongsTo('preprint', { inverse: 'actions', async: true }), creator: DS.belongsTo('user', { inverse: null, async: true }), }); diff --git a/addon/models/preprint.js b/addon/models/preprint.js index 10673f9f4..5a2a65597 100644 --- a/addon/models/preprint.js +++ b/addon/models/preprint.js @@ -36,7 +36,7 @@ export default OsfModel.extend({ license: DS.belongsTo('license', { inverse: null }), primaryFile: DS.belongsTo('file', { inverse: null }), provider: DS.belongsTo('preprint-provider', { inverse: 'preprints', async: true }), - reviewLogs: DS.hasMany('review-log', { inverse: 'reviewable', async: true }), + actions: DS.hasMany('action', { inverse: 'target', async: true }), contributors: DS.hasMany('contributors', { async: true }), uniqueSubjects: Ember.computed('subjects', function() { diff --git a/addon/serializers/action.js b/addon/serializers/action.js new file mode 100644 index 000000000..c1912d843 --- /dev/null +++ b/addon/serializers/action.js @@ -0,0 +1,12 @@ +import OsfSerializer from './osf-serializer'; + +export default OsfSerializer.extend({ + // Because `trigger` is a private method on DS.Model + attrs: { + actionTrigger: 'trigger', + }, + // Serialize `target` relationship + relationshipTypes: { + target: 'preprints', + }, +}); diff --git a/addon/serializers/node.js b/addon/serializers/node.js index b0c767bf5..dfcfba3a0 100644 --- a/addon/serializers/node.js +++ b/addon/serializers/node.js @@ -1,4 +1,3 @@ -import Ember from 'ember'; import OsfSerializer from './osf-serializer'; export default OsfSerializer.extend({ diff --git a/addon/serializers/osf-serializer.js b/addon/serializers/osf-serializer.js index 7c7587384..e575cf394 100644 --- a/addon/serializers/osf-serializer.js +++ b/addon/serializers/osf-serializer.js @@ -106,6 +106,8 @@ export default DS.JSONAPISerializer.extend({ // Only serialize dirty, whitelisted relationships serialized.data.relationships = {}; for (const relationship in snapshot.record._dirtyRelationships) { + // https://stackoverflow.com/questions/29004314/why-are-object-keys-and-for-in-different + if (!snapshot.record._dirtyRelationships.hasOwnProperty(relationship)) continue; const type = this.get('relationshipTypes')[relationship]; if (type) { serialized.data.relationships[Ember.String.underscore(relationship)] = { diff --git a/addon/serializers/preprint.js b/addon/serializers/preprint.js index 0659804ee..101a999c9 100644 --- a/addon/serializers/preprint.js +++ b/addon/serializers/preprint.js @@ -1,5 +1,4 @@ import OsfSerializer from './osf-serializer'; -import Ember from 'ember'; export default OsfSerializer.extend({ // Serialize these relationships diff --git a/addon/serializers/review-log.js b/addon/serializers/review-log.js deleted file mode 100644 index 2db1b2a06..000000000 --- a/addon/serializers/review-log.js +++ /dev/null @@ -1,9 +0,0 @@ -import OsfSerializer from './osf-serializer'; -import Ember from 'ember'; - -export default OsfSerializer.extend({ - // Serialize reviewable relationship - relationshipTypes: { - reviewable: 'preprints', - }, -}); diff --git a/app/adapters/action.js b/app/adapters/action.js new file mode 100644 index 000000000..ee7a1b714 --- /dev/null +++ b/app/adapters/action.js @@ -0,0 +1 @@ +export { default } from 'ember-osf/adapters/action'; diff --git a/app/adapters/review-log.js b/app/adapters/review-log.js deleted file mode 100644 index 30a05a4a7..000000000 --- a/app/adapters/review-log.js +++ /dev/null @@ -1 +0,0 @@ -export { default } from 'ember-osf/adapters/review-log'; diff --git a/app/models/action.js b/app/models/action.js new file mode 100644 index 000000000..29afbd853 --- /dev/null +++ b/app/models/action.js @@ -0,0 +1 @@ +export { default } from 'ember-osf/models/action'; diff --git a/app/models/review-log.js b/app/models/review-log.js deleted file mode 100644 index 6c653a99e..000000000 --- a/app/models/review-log.js +++ /dev/null @@ -1 +0,0 @@ -export { default } from 'ember-osf/models/review-log'; diff --git a/app/serializers/action.js b/app/serializers/action.js new file mode 100644 index 000000000..0d644d42d --- /dev/null +++ b/app/serializers/action.js @@ -0,0 +1 @@ +export { default } from 'ember-osf/serializers/action'; diff --git a/app/serializers/review-log.js b/app/serializers/review-log.js deleted file mode 100644 index 3c00f2b9f..000000000 --- a/app/serializers/review-log.js +++ /dev/null @@ -1 +0,0 @@ -export { default } from 'ember-osf/serializers/review-log'; diff --git a/tests/unit/adapters/review-log-test.js b/tests/unit/adapters/action-test.js similarity index 81% rename from tests/unit/adapters/review-log-test.js rename to tests/unit/adapters/action-test.js index e14e8207c..bd5b90c1e 100644 --- a/tests/unit/adapters/review-log-test.js +++ b/tests/unit/adapters/action-test.js @@ -1,6 +1,6 @@ import { moduleFor, test } from 'ember-qunit'; -moduleFor('adapter:review-log', 'Unit | Adapter | review log', { +moduleFor('adapter:action', 'Unit | Adapter | action', { // Specify the other units that are required for this test. // needs: ['serializer:foo'] }); diff --git a/tests/unit/models/action-test.js b/tests/unit/models/action-test.js new file mode 100644 index 000000000..6d2e1f14c --- /dev/null +++ b/tests/unit/models/action-test.js @@ -0,0 +1,12 @@ +import { moduleForModel, test } from 'ember-qunit'; + +moduleForModel('action', 'Unit | Model | action', { + // Specify the other units that are required for this test. + needs: ['model:preprint'] +}); + +test('it exists', function(assert) { + let model = this.subject(); + // let store = this.store(); + assert.ok(!!model); +}); diff --git a/tests/unit/models/preprint-test.js b/tests/unit/models/preprint-test.js index 7e3a3a8be..46ba06837 100644 --- a/tests/unit/models/preprint-test.js +++ b/tests/unit/models/preprint-test.js @@ -1,12 +1,12 @@ import { moduleForModel, test } from 'ember-qunit'; moduleForModel('preprint', 'Unit | Model | preprint', { - // Specify the other units that are required for this test. - needs: ['model:contributor', 'model:file', 'model:file-provider', 'model:preprint-provider'] + // Specify the other units that are required for this test. + needs: ['model:contributor', 'model:file', 'model:file-provider', 'model:preprint-provider', 'model:action'] }); test('it exists', function(assert) { - let model = this.subject(); - // let store = this.store(); - assert.ok(!!model); + let model = this.subject(); + // let store = this.store(); + assert.ok(!!model); }); diff --git a/tests/unit/models/review-log-test.js b/tests/unit/models/review-log-test.js deleted file mode 100644 index e981d1684..000000000 --- a/tests/unit/models/review-log-test.js +++ /dev/null @@ -1,12 +0,0 @@ -import { moduleForModel, test } from 'ember-qunit'; - -moduleForModel('review-log', 'Unit | Model | review log', { - // Specify the other units that are required for this test. - needs: [] -}); - -test('it exists', function(assert) { - let model = this.subject(); - // let store = this.store(); - assert.ok(!!model); -}); diff --git a/tests/unit/serializers/review-log-test.js b/tests/unit/serializers/action-test.js similarity index 76% rename from tests/unit/serializers/review-log-test.js rename to tests/unit/serializers/action-test.js index b11bd1728..d4fb4bbcb 100644 --- a/tests/unit/serializers/review-log-test.js +++ b/tests/unit/serializers/action-test.js @@ -1,8 +1,8 @@ import { moduleForModel, test } from 'ember-qunit'; -moduleForModel('review-log', 'Unit | Serializer | review log', { +moduleForModel('action', 'Unit | Serializer | action', { // Specify the other units that are required for this test. - needs: ['serializer:review-log'] + needs: ['serializer:action'] }); // Replace this with your real tests. From 838ad021cac4156556e4ce6c5f97238dd1ced527 Mon Sep 17 00:00:00 2001 From: Chris Seto Date: Tue, 12 Sep 2017 14:22:01 -0400 Subject: [PATCH 12/44] [MOD-72][Feature] Add "My Reviews" for users with view_submissions permission --- addon/authenticators/osf-cookie.js | 6 +- addon/components/new-osf-navbar/component.js | 9 +- addon/components/new-osf-navbar/template.hbs | 3 +- addon/helpers/build-secondary-nav-links.js | 12 +- addon/locales/en/translations.js | 1 + addon/models/user.js | 1 + addon/services/current-user.js | 37 +- addon/utils/load-relationship.js | 5 +- yarn.lock | 1142 ++++++++++++------ 9 files changed, 834 insertions(+), 382 deletions(-) diff --git a/addon/authenticators/osf-cookie.js b/addon/authenticators/osf-cookie.js index 20b311e66..e0a5b9530 100644 --- a/addon/authenticators/osf-cookie.js +++ b/addon/authenticators/osf-cookie.js @@ -69,6 +69,10 @@ export default Base.extend({ * @return {Promise} */ authenticate(code) { - return this._test(code); + // NOTE: Must be wrapped in an RSVP promise + // _test returns a Jquery Promise but authenticate expects an RSVP Promise + return new Ember.RSVP.Promise((resolve, reject) => + this._test(code).then(resolve).fail(reject) + ); } }); diff --git a/addon/components/new-osf-navbar/component.js b/addon/components/new-osf-navbar/component.js index 00c28aa58..d66b46048 100644 --- a/addon/components/new-osf-navbar/component.js +++ b/addon/components/new-osf-navbar/component.js @@ -25,14 +25,9 @@ import AnalyticsMixin from 'ember-osf/mixins/analytics'; */ export default Ember.Component.extend(hostAppName, AnalyticsMixin, { layout, + osfServices, session: Ember.inject.service(), - osfServices: Ember.computed('hostAppName', function() { - if (this.get('hostAppName') !== 'Preprints') return osfServices; - return osfServices.concat([{ - name: 'REVIEWS', - url: serviceLinks.reviewsHome, - }]); - }), + currentUser: Ember.inject.service(), serviceLinks: serviceLinks, host: config.OSF.url, currentService: Ember.computed('hostAppName', function() { // Pulls current service name from consuming service's config file diff --git a/addon/components/new-osf-navbar/template.hbs b/addon/components/new-osf-navbar/template.hbs index 76f689ad4..2d43126c8 100644 --- a/addon/components/new-osf-navbar/template.hbs +++ b/addon/components/new-osf-navbar/template.hbs @@ -36,7 +36,8 @@ - + {{/nav.item}} + {{/navbar.nav}} + {{/navbar.content}} + {{/bs-navbar}} + {{#if showSearch}} {{!SEARCH DROPDOWN (FOR HOME SERVICE) - redirects to /search/?q=search_query}} {{search-dropdown action='toggleSearch'}} diff --git a/addon/components/search-dropdown/template.hbs b/addon/components/search-dropdown/template.hbs index 687b6ddda..ea2dab93b 100644 --- a/addon/components/search-dropdown/template.hbs +++ b/addon/components/search-dropdown/template.hbs @@ -21,11 +21,11 @@ {{!Search help modal - appears after clicking question mark on green search dropdown}}
- {{#bs-modal open=isOpen body=false header=false footer=false}} - {{#bs-modal-header}} + {{#bs-modal open=isOpen as |modal|}} + {{#modal.header}} - {{/bs-modal-header}} - {{#bs-modal-body}} + {{/modal.header}} + {{#modal.body}}

{{t 'eosf.searchHelpModal.queries'}}

{{t 'eosf.searchHelpModal.searchUsesThe'}} Lucene {{t 'eosf.searchHelpModal.searchSyntax'}}. @@ -36,13 +36,9 @@

  • brian AND title:many
  • tags:(psychology)
  • - {{/bs-modal-body}} - - {{#bs-modal-footer}} -
    - -
    - {{/bs-modal-footer}} + {{/modal.body}} + {{#modal.footer}} + {{#bs-button onClick=(action modal.close)}}{{t 'eosf.searchHelpModal.close'}}{{/bs-button}} + {{/modal.footer}} {{/bs-modal}} - -
    \ No newline at end of file + diff --git a/addon/components/search-help-modal/component.js b/addon/components/search-help-modal/component.js index ad227a1c4..d50c61359 100644 --- a/addon/components/search-help-modal/component.js +++ b/addon/components/search-help-modal/component.js @@ -19,9 +19,6 @@ export default Ember.Component.extend({ this.set('currentPath', `${window.location.origin}${window.location.pathname}`); }, actions: { - close() { - this.set('isOpen', false); - }, toggleHelpModal() { this.toggleProperty('isOpen'); }, diff --git a/addon/components/search-help-modal/template.hbs b/addon/components/search-help-modal/template.hbs index faee0a5a3..3c3d9a64d 100644 --- a/addon/components/search-help-modal/template.hbs +++ b/addon/components/search-help-modal/template.hbs @@ -1,10 +1,10 @@ {{!Lucene search help modal}}
    - {{#bs-modal open=isOpen body=false header=false footer=false}} - {{#bs-modal-header}} + {{#bs-modal open=isOpen as |modal|}} + {{#modal.header}} - {{/bs-modal-header}} - {{#bs-modal-body}} + {{/modal.header}} + {{#modal.body}}

    {{t 'eosf.components.searchHelpModal.queries'}}

    {{t 'eosf.components.searchHelpModal.searchUsesThe'}} Lucene {{t 'eosf.components.searchHelpModal.searchSyntax'}}. @@ -15,11 +15,9 @@

  • brian AND title:many
  • tags:(psychology)
  • - {{/bs-modal-body}} - {{#bs-modal-footer}} -
    - -
    - {{/bs-modal-footer}} + {{/modal.body}} + {{#modal.footer}} + {{#bs-button onClick=(action modal.close)}}{{t 'eosf.components.searchHelpModal.close'}}{{/bs-button}} + {{/modal.footer}} {{/bs-modal}} -
    \ No newline at end of file + diff --git a/addon/components/sign-up/style.css b/addon/components/sign-up/style.scss similarity index 100% rename from addon/components/sign-up/style.css rename to addon/components/sign-up/style.scss diff --git a/addon/instance-initializers/ember-osf.js b/addon/instance-initializers/ember-osf.js index 99f0d7153..5016c032f 100644 --- a/addon/instance-initializers/ember-osf.js +++ b/addon/instance-initializers/ember-osf.js @@ -2,61 +2,10 @@ Automatically expose translations for addon in a way that can be merged in with app https://github.com/jamesarosen/ember-i18n/issues/255 */ -import Ember from 'ember'; import en from 'ember-osf/locales/en/translations'; -import tHelper from 'ember-i18n/helper'; export function initialize(appInstance) { - tHelper.reopen({ - theme: Ember.inject.service(), - compute(_, data) { - // If data is defined, clone it because it is not extensible. - data = data ? Object.assign({}, data) : {}; - let translations = this.get('i18n._locale.translations'); - let preprintWord = this.get('theme.provider.preprintWord'); - let getTerms = () => ({ - preprint: translations[`preprintWords.${preprintWord || 'preprint'}.preprint`], - preprints: translations[`preprintWords.${preprintWord || 'preprint'}.preprints`], - Preprint: translations[`preprintWords.${preprintWord || 'preprint'}.Preprint`], - Preprints: translations[`preprintWords.${preprintWord || 'preprint'}.Preprints`] - }); - if (!preprintWord && this.get('theme.provider')) { - this.get('theme.provider').then(provider => { - preprintWord = provider.get('preprintWord') || 'preprint'; - data.preprintWords = getTerms(); - this.recompute(); - }); - return null; - } - data.preprintWords = getTerms(); - return this._super(_, data, true); - } - }); const i18n = appInstance.lookup('service:i18n'); - i18n.reopen({ - theme: Ember.inject.service(), - store: Ember.inject.service(), - t(_, data, skip) { - data = data || {}; - if (typeof data.preprintWords !== 'undefined' || skip) { - return this._super(_, data); - } - let translations = this.get('_locale.translations'); - let providerId = this.get('theme.id'); - let provider = this.get('store').peekRecord('preprint-provider', providerId); - let preprintWord = 'default'; - if (provider) { - preprintWord = provider.get('preprintWord'); - } - data.preprintWords = { - preprint: translations[`preprintWords.${preprintWord}.preprint`], - preprints: translations[`preprintWords.${preprintWord}.preprints`], - Preprint: translations[`preprintWords.${preprintWord}.Preprint`], - Preprints: translations[`preprintWords.${preprintWord}.Preprints`] - }; - return this._super(_, data); - } - }); i18n.addTranslations('en', en); } diff --git a/addon/styles/addon.scss b/addon/styles/addon.scss index cd003c153..0c0b21d94 100644 --- a/addon/styles/addon.scss +++ b/addon/styles/addon.scss @@ -1,19 +1,21 @@ +// Internal Styles +@import 'components/discover-page/style'; +@import 'components/donate-banner/style'; @import 'components/eosf-project-nav/style'; +@import 'components/faceted-search/style'; @import 'components/file-browser/style'; @import 'components/file-widget/style'; @import 'components/navbar-auth-dropdown/style'; -@import 'components/osf-navbar/style'; +@import 'components/new-osf-navbar/style'; @import 'components/osf-mode-footer/style'; +@import 'components/osf-navbar/style'; @import 'components/query-syntax/style'; @import 'components/search-dropdown/style'; -@import 'components/sign-up/style'; -@import 'components/tags-widget/style'; -@import 'components/discover-page/style'; -@import 'components/faceted-search/style'; -@import 'components/search-result/style'; -@import 'components/search-facet-source/style'; @import 'components/search-facet-daterange/style'; -@import 'components/search-facet-worktype/style'; -@import 'components/search-facet-worktype-hierarchy/style'; +@import 'components/search-facet-source/style'; @import 'components/search-facet-worktype-button/style'; -@import 'components/donate-banner/style'; +@import 'components/search-facet-worktype-hierarchy/style'; +@import 'components/search-facet-worktype/style'; +@import 'components/search-result/style'; +@import 'components/sign-up/style'; +@import 'components/tags-widget/style'; diff --git a/addon/utils/load-relationship.js b/addon/utils/load-relationship.js index 9cebfb406..7e8cab427 100644 --- a/addon/utils/load-relationship.js +++ b/addon/utils/load-relationship.js @@ -9,6 +9,8 @@ export function loadRelation(model, relationship) { model = model.get('content') } + // If model is null return a promise that never resolves + // and wait for the next call were model is resolved if (!model) return new Ember.RSVP.Promise(() => null); let results = Ember.A(); diff --git a/app/styles/_ember-osf.scss b/app/styles/_ember-osf.scss new file mode 100644 index 000000000..15ede6b16 --- /dev/null +++ b/app/styles/_ember-osf.scss @@ -0,0 +1,21 @@ +// Internal Styles +@import 'ember-osf/components/discover-page/style'; +@import 'ember-osf/components/donate-banner/style'; +@import 'ember-osf/components/eosf-project-nav/style'; +@import 'ember-osf/components/faceted-search/style'; +@import 'ember-osf/components/file-browser/style'; +@import 'ember-osf/components/file-widget/style'; +@import 'ember-osf/components/navbar-auth-dropdown/style'; +@import 'ember-osf/components/new-osf-navbar/style'; +@import 'ember-osf/components/osf-mode-footer/style'; +@import 'ember-osf/components/osf-navbar/style'; +@import 'ember-osf/components/query-syntax/style'; +@import 'ember-osf/components/search-dropdown/style'; +@import 'ember-osf/components/search-facet-daterange/style'; +@import 'ember-osf/components/search-facet-source/style'; +@import 'ember-osf/components/search-facet-worktype-button/style'; +@import 'ember-osf/components/search-facet-worktype-hierarchy/style'; +@import 'ember-osf/components/search-facet-worktype/style'; +@import 'ember-osf/components/search-result/style'; +@import 'ember-osf/components/sign-up/style'; +@import 'ember-osf/components/tags-widget/style'; diff --git a/bower.json b/bower.json index 3ba52d630..5b0e8e39f 100644 --- a/bower.json +++ b/bower.json @@ -6,7 +6,6 @@ "Faker": "~3.0.0", "pretender": "~0.10.1", "lodash": "~3.7.0", - "bootstrap-sass": "^3.3.6", "jquery-mockjax": "2.1.1", "dropzone": "~4.3.0", "toastr": "^2.1.2", @@ -16,11 +15,8 @@ "c3": "0.4.11", "d3": "3.5.17", "bootstrap-daterangepicker": "^2.1.23" - - }, "devDependencies": { - "bootstrap": "~3.3.5", "osf-style": "https://github.com/CenterforOpenScience/osf-style.git#1.3.0" }, "resolutions": { diff --git a/ember-cli-build.js b/ember-cli-build.js index 7607408ec..c86840c38 100644 --- a/ember-cli-build.js +++ b/ember-cli-build.js @@ -6,12 +6,18 @@ module.exports = function(defaults) { var app = new EmberAddon(defaults, { sassOptions: { includePaths: [ - 'tests/dummy/app/components', - 'bower_components/c3', 'bower_components/bootstrap-daterangepicker', + 'bower_components/c3', + 'bower_components/osf-style/sass', + 'node_modules/bootstrap-sass/assets/stylesheets', + 'tests/dummy/app/components', ] }, - + 'ember-bootstrap': { + bootstrapVersion: 3, + importBootstrapCSS: false, + importBootstrapFont: false, + }, // FIXME // FIXME Will this affect downstream consumers (when they build their apps)? // FIXME @@ -25,7 +31,7 @@ module.exports = function(defaults) { 'ember-cli-babel': { includePolyfill: true - } + }, }); app.import(path.join(app.bowerDirectory, 'dropzone/dist/basic.css')); @@ -37,8 +43,6 @@ module.exports = function(defaults) { app.import(path.join(app.bowerDirectory, 'jquery.tagsinput/src/jquery.tagsinput.js')); app.import(path.join(app.bowerDirectory, 'c3/c3.js')); app.import(path.join(app.bowerDirectory, 'd3/d3.js')); - app.import(path.join(app.bowerDirectory, 'osf-style/css/base.css')); - app.import('vendor/assets/ember-osf.css'); app.import({ test: path.join(app.bowerDirectory, 'ember/ember-template-compiler.js') }); diff --git a/index.js b/index.js index 4d66280e4..876975f35 100644 --- a/index.js +++ b/index.js @@ -4,8 +4,7 @@ var path = require('path'); var config = require('config'); var Funnel = require('broccoli-funnel'); -var mergeTrees = require('broccoli-merge-trees'); -var compileSass = require('broccoli-sass-source-maps'); +var BroccoliMergeTrees = require('broccoli-merge-trees'); // Fetch a list of known backends. The user can always choose to override any of these URLs via ENV vars var knownBackends = require('./config/backends'); @@ -54,8 +53,10 @@ module.exports = { } if (BACKEND === 'local') { - backendUrlConfig.accessToken = eitherConfig('PERSONAL_ACCESS_TOKEN'); backendUrlConfig.isLocal = true; + if (eitherConfig('PERSONAL_ACCESS_TOKEN')) { + backendUrlConfig.accessToken = eitherConfig('PERSONAL_ACCESS_TOKEN'); + } } else if (BACKEND === 'prod') { console.warn("WARNING: you've specified production as a backend. Please do not use production for testing or development purposes"); } else if (BACKEND === 'env') { @@ -85,48 +86,57 @@ module.exports = { authenticator: `authenticator:osf-${defaultAuthorizationType}` }; }, - afterInstall: function(options) { - if (options['ember-osf'].includeStyles) { - this.addAddonToProject('ember-font-awesome'); - } - }, - included: function(app) { - // Documentation of the `included` hook is mostly in the comment - // threads of `ember-cli` issues on github. For example: - // https://github.com/ember-cli/ember-cli/issues/3531#issuecomment-81133458 - this._super.included.apply(this, arguments); - if (app.options['ember-osf'] && app.options['ember-osf'].includeStyles) { - app.options['ember-font-awesome'] = { - useScss: true - }; - } - return app; + // Needed to make Ember CLI SASS happy + // https://github.com/aexmachina/ember-cli-sass#addon-usage + included: function(/* app */) { + this._super.included.apply(this, arguments); }, - treeForAddon: function(tree) { - this.addonTree = tree; - return this._super.treeForAddon.apply(this, arguments); + + // TODO Filter out unused components and junk + // https://github.com/kaliber5/ember-bootstrap/blob/master/index.js#L221 + // treeForAddon: function(tree) { + // tree = this._super.treeForAddon.apply(this, arguments); + // return tree; + // }, + + // Outputs all pod scss files into the addon style tree. + // This allows the addon to build by itself + treeForAddonStyles: function(tree) { + let addonPodStyles = new Funnel(this._treePathFor('addon'), { + annotation: 'Ember OSF Addon Pod Styles', + include: ['components/**/*.scss'], + }); + + return new BroccoliMergeTrees([tree, addonPodStyles, this._bootstrapStyles()], { + annotation: 'Ember OSF Merged Styles' + }); }, - treeForVendor: function(tree) { - var addonStyleTree = this._treeFor('addon-styles'); - var addonPodStyles = new Funnel(path.resolve(this.root, 'addon'), { - include: [ - 'components/**/*css' - ] + + // Outputs all pod scss files into the style tree but prefixed with ember-osf + // This allows apps using this addon to import all the scss they want using "@import 'ember-osf'" + // The actual 'ember-osf' namespace is exported by app/styles/_ember-osf.scss + treeForStyles: function(tree) { + tree = this._super.treeForStyles.apply(this, arguments); + + let addonPodStyles = new Funnel(this._treePathFor('addon'), { + destDir: path.join(tree.destDir, 'ember-osf'), + annotation: 'Ember OSF Pod Styles', + include: ['components/**/*.scss'], }); - var addonCss = compileSass( - [addonStyleTree, addonPodStyles], - 'addon.scss', - 'assets/ember-osf.css', - { - annotation: 'EmberOsf Sass Tree' - }); - return mergeTrees([tree, addonCss].filter(Boolean)); + + return new BroccoliMergeTrees([tree, addonPodStyles, this._bootstrapStyles()], { + annotation: 'Ember OSF Merged Styles' + }); + }, - treeForPublic() { - var assetDir = path.join(path.resolve(this.root, ''), 'addon/assets'); - return new Funnel(assetDir, { - destDir: 'assets/' + + _bootstrapStyles: function() { + let bootstrapPath = path.join(this.app.project.nodeModulesPath, 'bootstrap-sass', 'assets', 'stylesheets'); + + return new Funnel(bootstrapPath, { + annotation: 'Ember OSF Boostrap SASS', + include: ['**/*.scss'], }); } }; diff --git a/package.json b/package.json index 7d8ed562f..c463d2efb 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,6 @@ "bump-version": "npm --no-git-tag-version version ", "preversion": "git-branch-is develop && yarn test", "postversion": "yarn run docs", - "postinstall": "npm rebuild node-sass", "make-release": "git-branch-is develop && git flow release start $npm_package_version && git flow release finish $npm_package_version" }, "repository": { @@ -33,39 +32,35 @@ "broccoli-asset-rev": "2.5.0", "chalk": "1.1.3", "coveralls": "2.13.1", - "ember-a11y": "^0.1.14", - "ember-a11y-testing": "^0.4.2", "ember-ajax": "2.5.6", - "ember-bootstrap": "0.7.2", + "ember-bootstrap": "^1.0.0-rc.2", "ember-browserify": "1.1.13", - "ember-cli": "2.11.1", + "ember-cli": "^2.14.2", "ember-cli-app-version": "2.0.2", - "ember-cli-bootstrap-sassy": "^0.5.6", "ember-cli-code-coverage": "0.3.11", "ember-cli-dependency-checker": "1.3.0", "ember-cli-eslint": "^3.1.0", "ember-cli-inject-live-reload": "1.6.1", - "ember-cli-mirage": "0.1.13", + "ember-cli-moment-shim": "^3.4.0", "ember-cli-qunit": "3.1.2", "ember-cli-release": "0.2.8", - "ember-cli-sass": "^6.2.0", "ember-cli-sri": "2.1.1", "ember-cli-template-lint": "0.5.2", "ember-cli-test-loader": "1.1.1", "ember-cli-uglify": "1.2.0", "ember-collection": "1.0.0-alpha.7", "ember-data": "2.11.3", - "ember-data-factory-guy": "2.11.7", + "ember-data-factory-guy": "^2.13.7", "ember-disable-prototype-extensions": "1.1.2", "ember-disable-proxy-controllers": "1.0.1", "ember-export-application-global": "2.0.0", "ember-faker": "1.1.1", "ember-font-awesome": "3.0.5", "ember-load-initializers": "^1.0.0", - "ember-lodash": "4.17.4", - "ember-metrics": "0.10.0", + "ember-lodash": "^4.17.5", "ember-page-title": "3.2.0", "ember-power-select": "^1.8.4", + "ember-radio-buttons": "4.0.3", "ember-resolver": "4.1.0", "ember-toastr": "1.5.0", "eslint": "^3.19.0", @@ -81,21 +76,21 @@ "ember-addon" ], "dependencies": { + "bootstrap-sass": "^3.3.7", "broccoli-funnel": "1.2.0", "broccoli-merge-trees": "2.0.0", "broccoli-sass-source-maps": "2.0.0", "config": "1.26.1", - "ember-cli-babel": "6.4.1", + "ember-cli-babel": "^6.8.1", "ember-cli-htmlbars": "2.0.1", "ember-cli-htmlbars-inline-precompile": "0.4.3", - "ember-cli-moment-shim": "^3.3.1", - "ember-cli-node-assets": "0.1.6", + "ember-cli-sass": "^6.2.0", "ember-cli-shims": "1.0.2", "ember-data-has-many-query": "https://github.com/cos-forks/ember-data-has-many-query#master", "ember-get-config": "0.2.1", "ember-i18n": "5.0.1", - "ember-moment": "7.3.1", - "ember-radio-buttons": "4.0.3", + "ember-metrics": "^0.12.1", + "ember-moment": "^7.4.1", "ember-simple-auth": "^1.3.0", "ember-sinon": "0.7.0", "ember-sinon-qunit": "1.6.0", diff --git a/tests/dummy/app/styles/app.scss b/tests/dummy/app/styles/app.scss index 1762dc04d..2c8a5d47c 100644 --- a/tests/dummy/app/styles/app.scss +++ b/tests/dummy/app/styles/app.scss @@ -1,5 +1,5 @@ @import "ember-power-select"; -@import "log-detail/style"; +@import "ember-osf"; #main { min-height: 500px; diff --git a/tests/dummy/config/environment.js b/tests/dummy/config/environment.js index 002bae383..50d261153 100644 --- a/tests/dummy/config/environment.js +++ b/tests/dummy/config/environment.js @@ -59,10 +59,6 @@ module.exports = function(environment) { i18n: { defaultLocale: 'en-US' }, - - 'ember-cli-mirage': { - enabled: false - } }; /*if (environment === 'development') { diff --git a/tests/unit/models/osf-model-test.js b/tests/unit/models/osf-model-test.js index a8894df36..480466c65 100644 --- a/tests/unit/models/osf-model-test.js +++ b/tests/unit/models/osf-model-test.js @@ -6,7 +6,7 @@ moduleForModel('osf-model', 'Unit | Model | osf model', { }); test('it exists', function(assert) { - let model = this.subject(); - // let store = this.store(); - assert.ok(!!model); + let model = this.subject(); + // let store = this.store(); + assert.ok(!!model); }); diff --git a/tests/unit/services/current-user-test.js b/tests/unit/services/current-user-test.js index bfc24a6c9..ef47d71b6 100644 --- a/tests/unit/services/current-user-test.js +++ b/tests/unit/services/current-user-test.js @@ -2,11 +2,11 @@ import { moduleFor, test } from 'ember-qunit'; moduleFor('service:current-user', 'Unit | Service | current user', { // Specify the other units that are required for this test. - // needs: ['service:foo'] + needs: ['service:session'] }); // Replace this with your real tests. test('it exists', function(assert) { - let service = this.subject(); - assert.ok(service); + let service = this.subject(); + assert.ok(service); }); diff --git a/yarn.lock b/yarn.lock index c0054af65..33d95ae22 100644 --- a/yarn.lock +++ b/yarn.lock @@ -20,10 +20,10 @@ JSONStream@^1.0.3: through ">=2.2.7 <3" abbrev@1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" -abbrev@1.0.x, abbrev@~1.0.9: +abbrev@1.0.x: version "1.0.9" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" @@ -34,7 +34,7 @@ accepts@1.3.3: mime-types "~2.1.11" negotiator "0.6.1" -accepts@~1.3.3: +accepts@~1.3.4: version "1.3.4" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.4.tgz#86246758c7dd6d21a6474ff084a4740ec05eb21f" dependencies: @@ -78,6 +78,15 @@ ajv@^4.7.0, ajv@^4.9.1: co "^4.6.0" json-stable-stringify "^1.0.1" +ajv@^5.1.0: + version "5.2.3" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.2.3.tgz#c06f598778c44c6b161abafe3466b81ad1814ed2" + dependencies: + co "^4.6.0" + fast-deep-equal "^1.0.0" + json-schema-traverse "^0.3.0" + json-stable-stringify "^1.0.1" + align-text@^0.1.1, align-text@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" @@ -102,12 +111,6 @@ amd-name-resolver@0.0.5: dependencies: ensure-posix-path "^1.0.1" -amd-name-resolver@0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/amd-name-resolver/-/amd-name-resolver-0.0.6.tgz#d3e4ba2dfcaab1d820c1be9de947c67828cfe595" - dependencies: - ensure-posix-path "^1.0.1" - amd-name-resolver@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/amd-name-resolver/-/amd-name-resolver-0.0.7.tgz#814301adfe8a2f109f6e84d5e935196efb669615" @@ -138,22 +141,20 @@ ansi-styles@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.1.0.tgz#eaecbf66cd706882760b2f4691582b8f55d7a7de" -ansi-styles@^2.1.0, ansi-styles@^2.2.1: +ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" +ansi-styles@^3.0.0, ansi-styles@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" + dependencies: + color-convert "^1.9.0" + ansicolors@~0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.2.1.tgz#be089599097b74a5c9c4a84a0cdbcdb62bd87aef" -ansicolors@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.3.2.tgz#665597de86a9ffe3aa9bfbe6cae5c6ea426b4979" - -ansistyles@~0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/ansistyles/-/ansistyles-0.1.3.tgz#5de60415bda071bb37127854c864f41b23254539" - anymatch@^1.3.0: version "1.3.2" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" @@ -168,16 +169,8 @@ aot-test-generators@^0.1.0: jsesc "^2.5.0" aproba@^1.0.3: - version "1.1.2" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.2.tgz#45c6629094de4e96f693ef7eab74ae079c240fc1" - -aproba@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.0.4.tgz#2713680775e7614c8ba186c065d4e2e52d1072c0" - -archy@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" + version "1.2.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" are-we-there-yet@~1.1.2: version "1.1.4" @@ -202,10 +195,18 @@ arr-diff@^2.0.0: dependencies: arr-flatten "^1.0.1" -arr-flatten@^1.0.1: +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + +arr-flatten@^1.0.1, arr-flatten@^1.0.3: version "1.1.0" resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + array-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" @@ -222,13 +223,6 @@ array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" -array-index@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-index/-/array-index-1.0.0.tgz#ec56a749ee103e4e08c790b9c353df16055b97f9" - dependencies: - debug "^2.2.0" - es6-symbol "^3.0.2" - array-map@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" @@ -261,6 +255,10 @@ array-unique@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + arraybuffer.slice@0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz#f33b2159f0532a3f3107a272c0ccfbd1ad2979ca" @@ -269,10 +267,6 @@ arrify@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" -asap@^2.0.0, asap@~2.0.4: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - asn1.js@^4.0.0: version "4.9.1" resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.1.tgz#48ba240b45a9280e94748990ba597d216617fd40" @@ -319,6 +313,10 @@ ast-types@0.8.15: version "0.8.15" resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.8.15.tgz#8eef0827f04dff0ec8857ba925abe3fea6194e52" +ast-types@0.9.11: + version "0.9.11" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.11.tgz#371177bb59232ff5ceaa1d09ee5cad705b1a5aa9" + ast-types@0.9.6: version "0.9.6" resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9" @@ -330,8 +328,8 @@ astw@^2.0.0: acorn "^4.0.3" async-disk-cache@^1.2.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/async-disk-cache/-/async-disk-cache-1.3.2.tgz#ac53d6152843df202c9406e28d774362608d74dd" + version "1.3.3" + resolved "https://registry.yarnpkg.com/async-disk-cache/-/async-disk-cache-1.3.3.tgz#6040486660b370e4051cd9fa9fee275e1fae3728" dependencies: debug "^2.1.3" heimdalljs "^0.2.3" @@ -364,7 +362,7 @@ async@1.x, async@^1.4.0, async@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" -async@^2.0.1, async@^2.4.1: +async@^2.4.1: version "2.5.0" resolved "https://registry.yarnpkg.com/async/-/async-2.5.0.tgz#843190fd6b7357a0b9e1c956edddd5ec8462b54d" dependencies: @@ -378,6 +376,10 @@ asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" +atob@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.0.3.tgz#19c7a760473774468f20b2d2d03372ad7d4cbf5d" + aws-sign2@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.5.0.tgz#c57103f7a17fc037f02d7c2e64b602ea223f7d63" @@ -386,14 +388,14 @@ aws-sign2@~0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" -aws4@^1.2.1: +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + +aws4@^1.2.1, aws4@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" -axe-core@^2.2.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-2.4.1.tgz#55b6ceaa847cb1eaef5d559b6c41035dc3e07dbf" - babel-code-frame@^6.16.0, babel-code-frame@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" @@ -611,17 +613,17 @@ babel-plugin-dead-code-elimination@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/babel-plugin-dead-code-elimination/-/babel-plugin-dead-code-elimination-1.0.2.tgz#5f7c451274dcd7cccdbfbb3e0b85dd28121f0f65" -babel-plugin-debug-macros@^0.1.1, babel-plugin-debug-macros@^0.1.10, babel-plugin-debug-macros@^0.1.11, babel-plugin-debug-macros@^0.1.6: +babel-plugin-debug-macros@^0.1.1, babel-plugin-debug-macros@^0.1.11: version "0.1.11" resolved "https://registry.yarnpkg.com/babel-plugin-debug-macros/-/babel-plugin-debug-macros-0.1.11.tgz#6c562bf561fccd406ce14ab04f42c218cf956605" dependencies: semver "^5.3.0" babel-plugin-ember-modules-api-polyfill@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/babel-plugin-ember-modules-api-polyfill/-/babel-plugin-ember-modules-api-polyfill-2.0.1.tgz#baaf26dcebe2ed1de120021bc42be29f520497b3" + version "2.1.0" + resolved "https://registry.yarnpkg.com/babel-plugin-ember-modules-api-polyfill/-/babel-plugin-ember-modules-api-polyfill-2.1.0.tgz#78848cc4fcc2274882a6c15cbb23fefcdc771301" dependencies: - ember-rfc176-data "^0.2.7" + ember-rfc176-data "^0.3.0" babel-plugin-eval@^1.0.1: version "1.0.1" @@ -912,7 +914,7 @@ babel-polyfill@^6.16.0: core-js "^2.5.0" regenerator-runtime "^0.10.5" -babel-preset-env@^1.2.0, babel-preset-env@^1.5.1: +babel-preset-env@^1.5.1: version "1.6.0" resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.0.tgz#2de1c782a780a0a5d605d199c957596da43c44e4" dependencies: @@ -1045,9 +1047,23 @@ base64id@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/base64id/-/base64id-0.1.0.tgz#02ce0fdeee0cef4f40080e1e73e834f0b1bfce3f" -basic-auth@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-1.1.0.tgz#45221ee429f7ee1e5035be3f51533f1cdfd29884" +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + +basic-auth@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-2.0.0.tgz#015db3f353e02e56377755f962742e8981e7bbba" + dependencies: + safe-buffer "5.1.1" bcrypt-pbkdf@^1.0.0: version "1.0.1" @@ -1069,12 +1085,6 @@ binary-extensions@^1.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/binaryextensions/-/binaryextensions-2.0.0.tgz#e597d1a7a6a3558a2d1c7241a16c99965e6aa40f" -bl@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.1.2.tgz#fdca871a99713aa00d19e3bbba41c44787a65398" - dependencies: - readable-stream "~2.0.5" - blank-object@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/blank-object/-/blank-object-1.0.2.tgz#f990793fbe9a8c8dd013fb3219420bec81d5f4b9" @@ -1094,20 +1104,20 @@ bluebird@^2.9.33: resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-2.11.0.tgz#534b9033c022c9579c56ba3b3e5a5caafbb650e1" bluebird@^3.1.1, bluebird@^3.4.6: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" + version "3.5.1" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: version "4.11.8" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" -body-parser@^1.15.0: - version "1.18.1" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.1.tgz#9c1629370bcfd42917f30641a2dcbe2ec50d4c26" +body-parser@1.18.2, body-parser@^1.15.0: + version "1.18.2" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454" dependencies: bytes "3.0.0" content-type "~1.0.4" - debug "2.6.8" + debug "2.6.9" depd "~1.1.1" http-errors "~1.6.2" iconv-lite "0.4.19" @@ -1137,7 +1147,19 @@ boom@2.x.x: dependencies: hoek "2.x.x" -bootstrap-sass@^3.0.0: +boom@4.x.x: + version "4.3.1" + resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" + dependencies: + hoek "4.x.x" + +boom@5.x.x: + version "5.2.0" + resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02" + dependencies: + hoek "4.x.x" + +bootstrap-sass@^3.3.7: version "3.3.7" resolved "https://registry.yarnpkg.com/bootstrap-sass/-/bootstrap-sass-3.3.7.tgz#6596c7ab40f6637393323ab0bc80d064fc630498" @@ -1155,7 +1177,7 @@ bower-endpoint-parser@0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/bower-endpoint-parser/-/bower-endpoint-parser-0.2.2.tgz#00b565adbfab6f2d35addde977e97962acbcb3f6" -bower@^1.3.12, bower@^1.8.0: +bower@^1.8.0: version "1.8.2" resolved "https://registry.yarnpkg.com/bower/-/bower-1.8.2.tgz#adf53529c8d4af02ef24fb8d5341c1419d33e2f7" @@ -1174,6 +1196,22 @@ braces@^1.8.2: preserve "^0.2.0" repeat-element "^1.1.2" +braces@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.2.2.tgz#241f868c2b2690d9febeee5a7c83fbbf25d00b1b" + dependencies: + arr-flatten "^1.0.3" + array-unique "^0.3.2" + define-property "^1.0.0" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.0" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^2.1.0" + to-regex "^3.0.1" + breakable@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/breakable/-/breakable-1.0.0.tgz#784a797915a38ead27bad456b5572cb4bbaa78c1" @@ -1194,7 +1232,7 @@ broccoli-asset-rewrite@^1.1.0: dependencies: broccoli-filter "^1.2.3" -broccoli-babel-transpiler@^5.4.5, broccoli-babel-transpiler@^5.5.0, broccoli-babel-transpiler@^5.6.1, broccoli-babel-transpiler@^5.6.2: +broccoli-babel-transpiler@^5.5.0, broccoli-babel-transpiler@^5.6.1, broccoli-babel-transpiler@^5.6.2: version "5.7.2" resolved "https://registry.yarnpkg.com/broccoli-babel-transpiler/-/broccoli-babel-transpiler-5.7.2.tgz#756c30544775144e984333b7115f42c916ba08e0" dependencies: @@ -1230,7 +1268,7 @@ broccoli-brocfile-loader@^0.18.0: dependencies: findup-sync "^0.4.2" -broccoli-builder@^0.18.0: +broccoli-builder@^0.18.8: version "0.18.8" resolved "https://registry.yarnpkg.com/broccoli-builder/-/broccoli-builder-0.18.8.tgz#fe54694d544c3cdfdb01028e802eeca65749a879" dependencies: @@ -1298,7 +1336,7 @@ broccoli-concat@^2.0.0, broccoli-concat@^2.1.0: lodash.omit "^4.1.0" lodash.uniq "^4.2.0" -broccoli-concat@^3.0.4, broccoli-concat@^3.2.2: +broccoli-concat@^3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/broccoli-concat/-/broccoli-concat-3.2.2.tgz#86ffdc52606eb590ba9f6b894c5ec7a016f5b7b9" dependencies: @@ -1330,7 +1368,7 @@ broccoli-config-replace@^1.1.2: debug "^2.2.0" fs-extra "^0.24.0" -broccoli-debug@^0.6.1, broccoli-debug@^0.6.2: +broccoli-debug@^0.6.1, broccoli-debug@^0.6.2, broccoli-debug@^0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/broccoli-debug/-/broccoli-debug-0.6.3.tgz#1f33bb0eacb5db81366f0492524c82b1217eb578" dependencies: @@ -1384,7 +1422,7 @@ broccoli-funnel-reducer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/broccoli-funnel-reducer/-/broccoli-funnel-reducer-1.0.0.tgz#11365b2a785aec9b17972a36df87eef24c5cc0ea" -broccoli-funnel@1.2.0, broccoli-funnel@^1.0.0, broccoli-funnel@^1.0.1, broccoli-funnel@^1.0.2, broccoli-funnel@^1.0.6, broccoli-funnel@^1.0.7, broccoli-funnel@^1.1.0, broccoli-funnel@^1.2.0: +broccoli-funnel@1.2.0, broccoli-funnel@^1.0.0, broccoli-funnel@^1.0.1, broccoli-funnel@^1.0.2, broccoli-funnel@^1.0.6, broccoli-funnel@^1.1.0, broccoli-funnel@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/broccoli-funnel/-/broccoli-funnel-1.2.0.tgz#cddc3afc5ff1685a8023488fff74ce6fb5a51296" dependencies: @@ -1403,23 +1441,6 @@ broccoli-funnel@1.2.0, broccoli-funnel@^1.0.0, broccoli-funnel@^1.0.1, broccoli- symlink-or-copy "^1.0.0" walk-sync "^0.3.1" -broccoli-funnel@^0.2.3: - version "0.2.15" - resolved "https://registry.yarnpkg.com/broccoli-funnel/-/broccoli-funnel-0.2.15.tgz#4d0c128bef746e02f91038415aac4adbfaae222d" - dependencies: - array-equal "^1.0.0" - blank-object "^1.0.1" - broccoli-plugin "^1.0.0" - debug "^2.2.0" - fast-ordered-set "^1.0.0" - fs-tree-diff "^0.3.0" - minimatch "^2.0.1" - mkdirp "^0.5.0" - path-posix "^1.0.0" - rimraf "^2.4.3" - symlink-or-copy "^1.0.0" - walk-sync "^0.2.6" - broccoli-funnel@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/broccoli-funnel/-/broccoli-funnel-2.0.1.tgz#6823c73b675ef78fffa7ab800f083e768b51d449" @@ -1471,15 +1492,7 @@ broccoli-merge-trees@2.0.0, broccoli-merge-trees@^2.0.0: broccoli-plugin "^1.3.0" merge-trees "^1.0.1" -broccoli-merge-trees@^0.2.1: - version "0.2.4" - resolved "https://registry.yarnpkg.com/broccoli-merge-trees/-/broccoli-merge-trees-0.2.4.tgz#1936f63bb09e24246b1e91d8c53162c0f7b24c3c" - dependencies: - broccoli-plugin "^1.0.0" - debug "^2.2.0" - symlink-or-copy "^1.0.0" - -broccoli-merge-trees@^1.0.0, broccoli-merge-trees@^1.1.0, broccoli-merge-trees@^1.1.1, broccoli-merge-trees@^1.1.2, broccoli-merge-trees@^1.1.3, broccoli-merge-trees@^1.1.4, broccoli-merge-trees@^1.2.1: +broccoli-merge-trees@^1.0.0, broccoli-merge-trees@^1.1.0, broccoli-merge-trees@^1.1.1, broccoli-merge-trees@^1.1.2, broccoli-merge-trees@^1.1.4, broccoli-merge-trees@^1.2.1: version "1.2.4" resolved "https://registry.yarnpkg.com/broccoli-merge-trees/-/broccoli-merge-trees-1.2.4.tgz#a001519bb5067f06589d91afa2942445a2d0fdb5" dependencies: @@ -1492,9 +1505,9 @@ broccoli-merge-trees@^1.0.0, broccoli-merge-trees@^1.1.0, broccoli-merge-trees@^ rimraf "^2.4.3" symlink-or-copy "^1.0.0" -broccoli-middleware@^0.18.1: - version "0.18.1" - resolved "https://registry.yarnpkg.com/broccoli-middleware/-/broccoli-middleware-0.18.1.tgz#bf525581c2deb652c425942b18580f76d3748122" +broccoli-middleware@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/broccoli-middleware/-/broccoli-middleware-1.0.0.tgz#92f4e1fb9a791ea986245a7077f35cc648dab097" dependencies: handlebars "^4.0.4" mime "^1.2.11" @@ -1570,7 +1583,7 @@ broccoli-sri-hash@^2.1.0: sri-toolbox "^0.2.0" symlink-or-copy "^1.0.1" -broccoli-stew@^1.1.1, broccoli-stew@^1.2.0, broccoli-stew@^1.3.3, broccoli-stew@^1.4.2, broccoli-stew@^1.5.0: +broccoli-stew@^1.1.1, broccoli-stew@^1.2.0, broccoli-stew@^1.3.3, broccoli-stew@^1.4.0, broccoli-stew@^1.4.2, broccoli-stew@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/broccoli-stew/-/broccoli-stew-1.5.0.tgz#d7af8c18511dce510e49d308a62e5977f461883c" dependencies: @@ -1653,12 +1666,6 @@ broccoli-uglify-sourcemap@^1.0.0, broccoli-uglify-sourcemap@^1.0.1: uglify-js "^2.7.0" walk-sync "^0.1.3" -broccoli-unwatched-tree@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/broccoli-unwatched-tree/-/broccoli-unwatched-tree-0.1.3.tgz#ab0fb820f613845bf67a803baad820f68b1e3aae" - dependencies: - broccoli-source "^1.1.0" - broccoli-writer@^0.1.1, broccoli-writer@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/broccoli-writer/-/broccoli-writer-0.1.1.tgz#d4d71aa8f2afbc67a3866b91a2da79084b96ab2d" @@ -1807,7 +1814,7 @@ browserify@^13.0.0: vm-browserify "~0.0.1" xtend "^4.0.0" -browserslist@^2.1.2: +browserslist@^2.0.0, browserslist@^2.1.2: version "2.4.0" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.4.0.tgz#693ee93d01e66468a6348da5498e011f578f87f8" dependencies: @@ -1820,10 +1827,6 @@ bser@^2.0.0: dependencies: node-int64 "^0.4.0" -buffer-shims@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" - buffer-xor@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" @@ -1844,10 +1847,6 @@ builtin-status-codes@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" -builtins@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/builtins/-/builtins-0.0.7.tgz#355219cd6cf18dbe7c01cc7fd2dce765cfdc549a" - builtins@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" @@ -1856,18 +1855,34 @@ bytes@1: version "1.0.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-1.0.0.tgz#3569ede8ba34315fab99c3e92cb04c7220de1fa8" -bytes@2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.5.0.tgz#4c9423ea2d252c270c41b2bdefeff9bb6b62c06a" - bytes@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + cached-path-relative@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/cached-path-relative/-/cached-path-relative-1.0.1.tgz#d09c4b52800aa4c078e2dd81a869aac90d2e54e7" +calculate-cache-key-for-tree@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/calculate-cache-key-for-tree/-/calculate-cache-key-for-tree-1.1.0.tgz#0c3e42c9c134f3c9de5358c0f16793627ea976d6" + dependencies: + json-stable-stringify "^1.0.1" + caller-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" @@ -1907,22 +1922,31 @@ can-symlink@^1.0.0: dependencies: tmp "0.0.28" -caniuse-lite@^1.0.30000718: - version "1.0.30000727" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000727.tgz#20c895768398ded5f98a4beab4a76c285def41d2" +caniuse-api@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-2.0.0.tgz#b1ddb5a5966b16f48dc4998444d4bbc6c7d9d834" + dependencies: + browserslist "^2.0.0" + caniuse-lite "^1.0.0" + lodash.memoize "^4.1.2" + lodash.uniq "^4.5.0" + +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000718: + version "1.0.30000744" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000744.tgz#860fa5c83ba34fe619397d607f30bb474821671b" -capture-exit@^1.0.7: +capture-exit@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-1.2.0.tgz#1c5fcc489fd0ab00d4f1ac7ae1072e3173fbab6f" dependencies: rsvp "^3.3.3" -cardinal@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/cardinal/-/cardinal-0.5.0.tgz#00d5f661dbd4aabfdf7d41ce48a5a59bca35a291" +cardinal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cardinal/-/cardinal-1.0.0.tgz#50e21c1b0aa37729f9377def196b5a9cec932ee9" dependencies: ansicolors "~0.2.1" - redeyed "~0.5.0" + redeyed "~1.0.0" caseless@~0.11.0: version "0.11.0" @@ -1959,6 +1983,14 @@ chalk@^0.5.1: strip-ansi "^0.3.0" supports-color "^0.2.0" +chalk@^2.0.0, chalk@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + charm@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/charm/-/charm-1.0.2.tgz#8add367153a6d9a581331052c4090991da995e35" @@ -1980,10 +2012,6 @@ chokidar@1.6.1: optionalDependencies: fsevents "^1.0.0" -chownr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" - cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" @@ -1995,6 +2023,20 @@ circular-json@^0.3.1: version "0.3.3" resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" +class-utils@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.5.tgz#17e793103750f9627b2176ea34cfd1b565903c80" + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + lazy-cache "^2.0.2" + static-extend "^0.1.1" + +classlist-polyfill@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/classlist-polyfill/-/classlist-polyfill-1.2.0.tgz#935bc2dfd9458a876b279617514638bcaa964a2e" + clean-base-url@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clean-base-url/-/clean-base-url-1.0.0.tgz#c901cf0a20b972435b0eccd52d056824a4351b7b" @@ -2063,21 +2105,10 @@ clone@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f" -clone@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" - clone@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.1.tgz#d217d1e961118e3ac9a4b8bba3285553bf647cdb" -cmd-shim@~2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-2.0.2.tgz#6fcbda99483a8fd15d7d30a196ca69d688a2efdb" - dependencies: - graceful-fs "^4.1.2" - mkdirp "~0.5.0" - co@^3.0.6: version "3.1.0" resolved "https://registry.yarnpkg.com/co/-/co-3.1.0.tgz#4ea54ea5a08938153185e15210c68d9092bc1b78" @@ -2090,6 +2121,23 @@ code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + +color-convert@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" + dependencies: + color-name "^1.1.1" + +color-name@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + colors@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" @@ -2102,13 +2150,6 @@ colors@~0.6.0-1: version "0.6.2" resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc" -columnify@~1.5.4: - version "1.5.4" - resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb" - dependencies: - strip-ansi "^3.0.0" - wcwidth "^1.0.0" - combine-source-map@~0.7.1: version "0.7.2" resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.7.2.tgz#0870312856b307a87cc4ac486f3a9a62aeccc09e" @@ -2172,7 +2213,7 @@ component-emitter@1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.1.2.tgz#296594f2753daa63996d2af08d15a95116c9aec3" -component-emitter@1.2.1, component-emitter@^1.2.0: +component-emitter@1.2.1, component-emitter@^1.2.0, component-emitter@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" @@ -2180,23 +2221,23 @@ component-inherit@0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/component-inherit/-/component-inherit-0.0.3.tgz#645fc4adf58b72b649d5cae65135619db26ff143" -compressible@~2.0.10: +compressible@~2.0.11: version "2.0.11" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.11.tgz#16718a75de283ed8e604041625a2064586797d8a" dependencies: mime-db ">= 1.29.0 < 2" compression@^1.4.4: - version "1.7.0" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.0.tgz#030c9f198f1643a057d776a738e922da4373012d" + version "1.7.1" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.1.tgz#eff2603efc2e22cf86f35d2eb93589f9875373db" dependencies: - accepts "~1.3.3" - bytes "2.5.0" - compressible "~2.0.10" - debug "2.6.8" + accepts "~1.3.4" + bytes "3.0.0" + compressible "~2.0.11" + debug "2.6.9" on-headers "~1.0.1" safe-buffer "5.1.1" - vary "~1.1.1" + vary "~1.1.2" concat-map@0.0.1: version "0.0.1" @@ -2226,13 +2267,6 @@ concat-stream@~1.5.0, concat-stream@~1.5.1: readable-stream "~2.0.0" typedarray "~0.0.5" -config-chain@~1.1.10: - version "1.1.11" - resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.11.tgz#aba09747dfbe4c3e70e766a6e41586e1859fc6f2" - dependencies: - ini "^1.3.4" - proto-list "~1.2.1" - config@1.26.1: version "1.26.1" resolved "https://registry.yarnpkg.com/config/-/config-1.26.1.tgz#f647ce32c345e80ba73a8eaa7a9a4b4e5b290ca1" @@ -2240,28 +2274,25 @@ config@1.26.1: json5 "0.4.0" os-homedir "1.0.2" -configstore@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/configstore/-/configstore-2.1.0.tgz#737a3a7036e9886102aa6099e47bb33ab1aba1a1" +configstore@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.1.1.tgz#094ee662ab83fad9917678de114faaea8fcdca90" dependencies: - dot-prop "^3.0.0" + dot-prop "^4.1.0" graceful-fs "^4.1.2" - mkdirp "^0.5.0" - object-assign "^4.0.1" - os-tmpdir "^1.0.0" - osenv "^0.1.0" - uuid "^2.0.1" - write-file-atomic "^1.1.2" - xdg-basedir "^2.0.0" + make-dir "^1.0.0" + unique-string "^1.0.0" + write-file-atomic "^2.0.0" + xdg-basedir "^3.0.0" connect@^3.3.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/connect/-/connect-3.6.3.tgz#f7320d46a25b4be7b483a2236517f24b1e27e301" + version "3.6.5" + resolved "https://registry.yarnpkg.com/connect/-/connect-3.6.5.tgz#fb8dde7ba0763877d0ec9df9dac0b4b40e72c7da" dependencies: - debug "2.6.8" - finalhandler "1.0.4" - parseurl "~1.3.1" - utils-merge "1.0.0" + debug "2.6.9" + finalhandler "1.0.6" + parseurl "~1.3.2" + utils-merge "1.0.1" console-browserify@^1.1.0: version "1.1.0" @@ -2296,7 +2327,7 @@ content-disposition@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" -content-type@~1.0.2, content-type@~1.0.4: +content-type@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" @@ -2324,11 +2355,15 @@ copy-dereference@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/copy-dereference/-/copy-dereference-1.0.0.tgz#6b131865420fd81b413ba994b44d3655311152b6" +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + core-js@^1.0.0: version "1.2.7" resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" -core-js@^2.4.0, core-js@^2.5.0: +core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0: version "2.5.1" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b" @@ -2342,11 +2377,11 @@ core-object@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/core-object/-/core-object-1.1.0.tgz#86d63918733cf9da1a5aae729e62c0a88e66ad0a" -core-object@^2.0.2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/core-object/-/core-object-2.1.1.tgz#4b7a5f1edefcb1e6d0dcb58eab1b9f90bfc666a8" +core-object@^3.1.3: + version "3.1.5" + resolved "https://registry.yarnpkg.com/core-object/-/core-object-3.1.5.tgz#fa627b87502adc98045e44678e9a8ec3b9c0d2a9" dependencies: - chalk "^1.1.3" + chalk "^2.0.0" core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" @@ -2389,13 +2424,6 @@ create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: safe-buffer "^5.0.1" sha.js "^2.4.8" -cross-spawn-async@^2.1.1: - version "2.2.5" - resolved "https://registry.yarnpkg.com/cross-spawn-async/-/cross-spawn-async-2.2.5.tgz#845ff0c0834a3ded9d160daca6d390906bb288cc" - dependencies: - lru-cache "^4.0.0" - which "^1.2.8" - cross-spawn@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" @@ -2403,7 +2431,7 @@ cross-spawn@^3.0.0: lru-cache "^4.0.1" which "^1.2.9" -cross-spawn@^5.1.0: +cross-spawn@^5.0.1, cross-spawn@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" dependencies: @@ -2423,6 +2451,12 @@ cryptiles@2.x.x: dependencies: boom "2.x.x" +cryptiles@3.x.x: + version "3.1.2" + resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe" + dependencies: + boom "5.x.x" + crypto-browserify@^3.0.0: version "3.11.1" resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.11.1.tgz#948945efc6757a400d6e5e5af47194d10064279f" @@ -2438,6 +2472,10 @@ crypto-browserify@^3.0.0: public-encrypt "^4.0.0" randombytes "^2.0.0" +crypto-random-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e" + ctype@0.5.3: version "0.5.3" resolved "https://registry.yarnpkg.com/ctype/-/ctype-0.5.3.tgz#82c18c2461f74114ef16c135224ad0b9144ca12f" @@ -2454,6 +2492,10 @@ d@1: dependencies: es5-ext "^0.10.9" +dag-map@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/dag-map/-/dag-map-2.0.2.tgz#9714b472de82a1843de2fba9b6876938cab44c68" + dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" @@ -2480,46 +2522,41 @@ debug@2.3.3: dependencies: ms "0.7.2" -debug@2.6.8, debug@^2.1.0, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0, debug@^2.4.0, debug@^2.6.8, debug@~2.6.7: - version "2.6.8" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" +debug@2.6.9, debug@^2.1.0, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0, debug@^2.3.3, debug@^2.4.0, debug@^2.6.8, debug@~2.6.7: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" dependencies: ms "2.0.0" -debuglog@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" - decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" -deep-equal@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - deep-extend@~0.4.0: version "0.4.2" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" +deep-freeze@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/deep-freeze/-/deep-freeze-0.0.1.tgz#3a0b0005de18672819dfd38cd31f91179c893e84" + deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" -defaults@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" dependencies: - clone "^1.0.2" + is-descriptor "^0.1.0" -define-properties@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" dependencies: - foreach "^2.0.5" - object-keys "^1.0.8" + is-descriptor "^1.0.0" -defined@^1.0.0, defined@~1.0.0: +defined@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" @@ -2562,7 +2599,7 @@ delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" -depd@1.1.1, depd@~1.1.0, depd@~1.1.1: +depd@1.1.1, depd@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" @@ -2602,6 +2639,10 @@ detect-file@^0.1.0: dependencies: fs-exists-sync "^0.1.0" +detect-file@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" + detect-indent@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-3.0.1.tgz#9dc5e5ddbceef8325764b9451b02bc6d54084f75" @@ -2623,18 +2664,7 @@ detective@^4.0.0, detective@^4.3.1: acorn "^4.0.3" defined "^1.0.0" -dezalgo@^1.0.0, dezalgo@^1.0.1, dezalgo@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" - dependencies: - asap "^2.0.0" - wrappy "1" - -diff@^1.3.1: - version "1.4.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-1.4.0.tgz#7f28d2eb9ee7b15a97efd89ce63dcfdaa3ccbabf" - -diff@^3.1.0: +diff@^3.1.0, diff@^3.2.0: version "3.3.1" resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" @@ -2657,9 +2687,9 @@ domain-browser@~1.1.0: version "1.1.7" resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" -dot-prop@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177" +dot-prop@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" dependencies: is-obj "^1.0.0" @@ -2679,17 +2709,13 @@ editions@^1.1.1: version "1.3.3" resolved "https://registry.yarnpkg.com/editions/-/editions-1.3.3.tgz#0907101bdda20fac3cbe334c27cbd0688dc99a5b" -editor@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/editor/-/editor-1.0.0.tgz#60c7f87bd62bcc6a894fa8ccd6afb7823a24f742" - ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" electron-to-chromium@^1.3.18: - version "1.3.21" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.21.tgz#a967ebdcfe8ed0083fc244d1894022a8e8113ea2" + version "1.3.24" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.24.tgz#9b7b88bb05ceb9fa016a177833cc2dde388f21b6" elliptic@^6.0.0: version "6.4.0" @@ -2703,50 +2729,48 @@ elliptic@^6.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.0" -ember-a11y-testing@^0.4.2: - version "0.4.3" - resolved "https://registry.yarnpkg.com/ember-a11y-testing/-/ember-a11y-testing-0.4.3.tgz#bd6733bfac7c5c0f423d9472bc62d143ae5c3a2a" - dependencies: - axe-core "^2.2.1" - broccoli-funnel "^1.1.0" - ember-cli-babel "^5.2.4" - ember-cli-version-checker "^1.2.0" - -ember-a11y@^0.1.14: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ember-a11y/-/ember-a11y-0.1.15.tgz#10729ec8ebc6183470cf460d9919863f4d499856" - dependencies: - broccoli-funnel "^1.0.7" - broccoli-merge-trees "^1.1.4" - broccoli-string-replace "^0.1.1" - ember-cli-babel "^6.0.0" - ember-cli-version-checker "^1.1.7" - ember-getowner-polyfill "^1.0.1" - ember-ajax@2.5.6: version "2.5.6" resolved "https://registry.yarnpkg.com/ember-ajax/-/ember-ajax-2.5.6.tgz#a75f743ccf1b95e979a5cf96013b3dba8fa625e4" dependencies: ember-cli-babel "^5.1.5" +ember-assign-polyfill@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/ember-assign-polyfill/-/ember-assign-polyfill-2.0.2.tgz#95e37513beaabc4356d56a844c742509b0b7e7f1" + dependencies: + ember-cli-babel "^6.6.0" + ember-cli-version-checker "^1.2.0" + ember-basic-dropdown@^0.33.1: - version "0.33.5" - resolved "https://registry.yarnpkg.com/ember-basic-dropdown/-/ember-basic-dropdown-0.33.5.tgz#39986d4cc6732edf43fb51eabb70790e99e8ae2c" + version "0.33.6" + resolved "https://registry.yarnpkg.com/ember-basic-dropdown/-/ember-basic-dropdown-0.33.6.tgz#120d462c33ee5ea5ccb25a169e2b5af20d762d8a" dependencies: ember-cli-babel "^6.8.1" ember-cli-htmlbars "^2.0.3" - ember-native-dom-helpers "^0.5.3" + ember-native-dom-helpers "^0.5.4" ember-wormhole "^0.5.2" -ember-bootstrap@0.7.2: - version "0.7.2" - resolved "https://registry.yarnpkg.com/ember-bootstrap/-/ember-bootstrap-0.7.2.tgz#4a9c942239a8a131c092129af91bc9eb8b6a67ec" +ember-bootstrap@^1.0.0-rc.2: + version "1.0.0-rc.2" + resolved "https://registry.yarnpkg.com/ember-bootstrap/-/ember-bootstrap-1.0.0-rc.2.tgz#d7d0f88af0672c72985b0fe9f0f50540611bd83b" dependencies: - broccoli-funnel "^1.0.1" - broccoli-merge-trees "^1.1.1" - ember-cli-babel "^5.1.5" - ember-cli-htmlbars "^1.0.2" - ember-wormhole "^0.3.4" + broccoli-debug "^0.6.3" + broccoli-funnel "^1.2.0" + broccoli-merge-trees "^2.0.0" + broccoli-stew "^1.4.0" + chalk "^2.1.0" + ember-assign-polyfill "^2.0.1" + ember-cli-babel "^6.6.0" + ember-cli-build-config-editor "^0.5.0" + ember-cli-classlist-polyfill "^0.1.0" + ember-cli-htmlbars "^2.0.2" + ember-runtime-enumerable-includes-polyfill "^2.0.0" + ember-wormhole "^0.5.2" + findup-sync "^2.0.0" + fs-extra "^4.0.1" + rsvp "^4.0.1" + silent-error "^1.0.1" ember-browserify@1.1.13: version "1.1.13" @@ -2783,38 +2807,7 @@ ember-cli-app-version@2.0.2: ember-cli-htmlbars "^1.0.0" git-repo-version "0.4.1" -ember-cli-babel@6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-6.1.0.tgz#d9c83a7d0c67cc8a3ccb9bd082971c3593e54fad" - dependencies: - amd-name-resolver "0.0.6" - babel-plugin-debug-macros "^0.1.6" - babel-plugin-transform-es2015-modules-amd "^6.24.0" - babel-polyfill "^6.16.0" - babel-preset-env "^1.2.0" - broccoli-babel-transpiler "^6.0.0" - broccoli-funnel "^1.0.0" - broccoli-source "^1.1.0" - clone "^2.0.0" - ember-cli-version-checker "^1.2.0" - -ember-cli-babel@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-6.4.1.tgz#785a1c24fe3250eb0776b1ab3cee857863b44542" - dependencies: - amd-name-resolver "0.0.6" - babel-plugin-debug-macros "^0.1.10" - babel-plugin-transform-es2015-modules-amd "^6.24.0" - babel-polyfill "^6.16.0" - babel-preset-env "^1.5.1" - broccoli-babel-transpiler "^6.0.0" - broccoli-debug "^0.6.2" - broccoli-funnel "^1.0.0" - broccoli-source "^1.1.0" - clone "^2.0.0" - ember-cli-version-checker "^2.0.0" - -ember-cli-babel@^5.0.0, ember-cli-babel@^5.1.3, ember-cli-babel@^5.1.5, ember-cli-babel@^5.1.6, ember-cli-babel@^5.1.7, ember-cli-babel@^5.2.1, ember-cli-babel@^5.2.4: +ember-cli-babel@^5.0.0, ember-cli-babel@^5.1.5, ember-cli-babel@^5.1.6, ember-cli-babel@^5.1.7, ember-cli-babel@^5.2.1, ember-cli-babel@^5.2.4: version "5.2.4" resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-5.2.4.tgz#5ce4f46b08ed6f6d21e878619fb689719d6e8e13" dependencies: @@ -2824,7 +2817,7 @@ ember-cli-babel@^5.0.0, ember-cli-babel@^5.1.3, ember-cli-babel@^5.1.5, ember-cl ember-cli-version-checker "^1.0.2" resolve "^1.1.2" -ember-cli-babel@^6.0.0, ember-cli-babel@^6.0.0-beta.4, ember-cli-babel@^6.0.0-beta.7, ember-cli-babel@^6.6.0, ember-cli-babel@^6.8.1, ember-cli-babel@^6.8.2: +ember-cli-babel@^6.0.0, ember-cli-babel@^6.0.0-beta.4, ember-cli-babel@^6.0.0-beta.7, ember-cli-babel@^6.1.0, ember-cli-babel@^6.3.0, ember-cli-babel@^6.4.1, ember-cli-babel@^6.6.0, ember-cli-babel@^6.7.0, ember-cli-babel@^6.8.1, ember-cli-babel@^6.8.2: version "6.8.2" resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-6.8.2.tgz#eac2785964f4743f4c815cd53c6288f00cc087d7" dependencies: @@ -2841,16 +2834,7 @@ ember-cli-babel@^6.0.0, ember-cli-babel@^6.0.0-beta.4, ember-cli-babel@^6.0.0-be clone "^2.0.0" ember-cli-version-checker "^2.0.0" -ember-cli-bootstrap-sassy@^0.5.6: - version "0.5.6" - resolved "https://registry.yarnpkg.com/ember-cli-bootstrap-sassy/-/ember-cli-bootstrap-sassy-0.5.6.tgz#d4a557c91acdcac3241f53d7fd14005a714d1217" - dependencies: - bootstrap-sass "^3.0.0" - broccoli-funnel "^1.0.1" - ember-cli-babel "^5.1.7" - resolve "^1.1.7" - -ember-cli-broccoli-sane-watcher@^2.0.3: +ember-cli-broccoli-sane-watcher@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/ember-cli-broccoli-sane-watcher/-/ember-cli-broccoli-sane-watcher-2.0.4.tgz#f43f42f75b7509c212fb926cd9aea86ae19264c6" dependencies: @@ -2860,6 +2844,22 @@ ember-cli-broccoli-sane-watcher@^2.0.3: rsvp "^3.0.18" sane "^1.1.1" +ember-cli-build-config-editor@^0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/ember-cli-build-config-editor/-/ember-cli-build-config-editor-0.5.1.tgz#0847d07b6cb6c80bc64d47c2b9dbe0d484707395" + dependencies: + recast "^0.12.0" + +ember-cli-classlist-polyfill@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/ember-cli-classlist-polyfill/-/ember-cli-classlist-polyfill-0.1.0.tgz#d586196cc44b57f60203ca6d7d7cc2b6b0767202" + dependencies: + broccoli-funnel "^1.2.0" + caniuse-api "^2.0.0" + classlist-polyfill "^1.2.0" + ember-cli-babel "^6.3.0" + fastboot-transform "^0.1.2" + ember-cli-code-coverage@0.3.11: version "0.3.11" resolved "https://registry.yarnpkg.com/ember-cli-code-coverage/-/ember-cli-code-coverage-0.3.11.tgz#9012e14ec5d6ef27d7c6b89d4c8c22b5a49709be" @@ -2934,7 +2934,7 @@ ember-cli-htmlbars@2.0.1: json-stable-stringify "^1.0.0" strip-bom "^3.0.0" -ember-cli-htmlbars@^1.0.0, ember-cli-htmlbars@^1.0.1, ember-cli-htmlbars@^1.0.2, ember-cli-htmlbars@^1.1.1, ember-cli-htmlbars@^1.3.0: +ember-cli-htmlbars@^1.0.0, ember-cli-htmlbars@^1.0.1, ember-cli-htmlbars@^1.1.1, ember-cli-htmlbars@^1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-1.3.4.tgz#461289724b34af372a6a0c4b6635819156963353" dependencies: @@ -2944,7 +2944,7 @@ ember-cli-htmlbars@^1.0.0, ember-cli-htmlbars@^1.0.1, ember-cli-htmlbars@^1.0.2, json-stable-stringify "^1.0.0" strip-bom "^2.0.0" -ember-cli-htmlbars@^2.0.1, ember-cli-htmlbars@^2.0.3: +ember-cli-htmlbars@^2.0.1, ember-cli-htmlbars@^2.0.2, ember-cli-htmlbars@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-2.0.3.tgz#e116e1500dba12f29c94b05b9ec90f52cb8bb042" dependencies: @@ -2991,17 +2991,7 @@ ember-cli-lodash-subset@^1.0.11, ember-cli-lodash-subset@^1.0.7: version "1.0.12" resolved "https://registry.yarnpkg.com/ember-cli-lodash-subset/-/ember-cli-lodash-subset-1.0.12.tgz#af2e77eba5dcb0d77f3308d3a6fd7d3450f6e537" -ember-cli-mirage@0.1.13: - version "0.1.13" - resolved "https://registry.yarnpkg.com/ember-cli-mirage/-/ember-cli-mirage-0.1.13.tgz#914731ebbe4867f4432839ca4fb79561388a7243" - dependencies: - broccoli-funnel "^0.2.3" - broccoli-merge-trees "^0.2.1" - ember-cli-babel "^5.1.3" - ember-inflector "^1.9.2" - ember-lodash "0.0.6" - -ember-cli-moment-shim@^3.3.1: +ember-cli-moment-shim@^3.4.0: version "3.5.0" resolved "https://registry.yarnpkg.com/ember-cli-moment-shim/-/ember-cli-moment-shim-3.5.0.tgz#7ea8d42b0a04c767258287b30447681e52fba0c4" dependencies: @@ -3017,17 +3007,6 @@ ember-cli-moment-shim@^3.3.1: moment "^2.18.1" moment-timezone "^0.5.13" -ember-cli-node-assets@0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/ember-cli-node-assets/-/ember-cli-node-assets-0.1.6.tgz#6488a2949048c801ad6d9e33753c7bce32fc1146" - dependencies: - broccoli-funnel "^1.0.1" - broccoli-merge-trees "^1.1.1" - broccoli-unwatched-tree "^0.1.1" - debug "^2.2.0" - lodash "^4.5.1" - resolve "^1.1.7" - ember-cli-normalize-entity-name@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ember-cli-normalize-entity-name/-/ember-cli-normalize-entity-name-1.0.0.tgz#0b14f7bcbc599aa117b5fddc81e4fd03c4bad5b7" @@ -3038,7 +3017,7 @@ ember-cli-path-utils@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ember-cli-path-utils/-/ember-cli-path-utils-1.0.0.tgz#4e39af8b55301cddc5017739b77a804fba2071ed" -ember-cli-preprocess-registry@^3.0.0: +ember-cli-preprocess-registry@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/ember-cli-preprocess-registry/-/ember-cli-preprocess-registry-3.1.1.tgz#38456c21c4d2b64945850cf9ec68db6ba769288a" dependencies: @@ -3173,87 +3152,92 @@ ember-cli-version-checker@^2.0.0: rsvp "3.0.14" yuidocjs "^0.10.0" -ember-cli@2.11.1: - version "2.11.1" - resolved "https://registry.yarnpkg.com/ember-cli/-/ember-cli-2.11.1.tgz#519f93ee944e0a092e77da81027400a692c5b7d3" +ember-cli@^2.14.2: + version "2.15.1" + resolved "https://registry.yarnpkg.com/ember-cli/-/ember-cli-2.15.1.tgz#773add3cc18e5068f1c5f43a77544efa2712e47b" dependencies: - amd-name-resolver "0.0.6" - bower "^1.3.12" + amd-name-resolver "0.0.7" + babel-plugin-transform-es2015-modules-amd "^6.24.0" bower-config "^1.3.0" bower-endpoint-parser "0.2.2" - broccoli-babel-transpiler "^5.4.5" + broccoli-babel-transpiler "^6.0.0" broccoli-brocfile-loader "^0.18.0" - broccoli-builder "^0.18.0" - broccoli-concat "^3.0.4" + broccoli-builder "^0.18.8" + broccoli-concat "^3.2.2" broccoli-config-loader "^1.0.0" broccoli-config-replace "^1.1.2" broccoli-funnel "^1.0.6" broccoli-funnel-reducer "^1.0.0" - broccoli-merge-trees "^1.1.3" - broccoli-middleware "^0.18.1" + broccoli-merge-trees "^2.0.0" + broccoli-middleware "^1.0.0" broccoli-source "^1.1.0" broccoli-stew "^1.2.0" - capture-exit "^1.0.7" + calculate-cache-key-for-tree "^1.0.0" + capture-exit "^1.1.0" chalk "^1.1.3" clean-base-url "^1.0.0" compression "^1.4.4" - configstore "^2.0.0" + configstore "^3.0.0" console-ui "^1.0.2" - core-object "^2.0.2" - diff "^1.3.1" - ember-cli-broccoli-sane-watcher "^2.0.3" - ember-cli-get-component-path-option "^1.0.0" + core-object "^3.1.3" + dag-map "^2.0.2" + deep-freeze "^0.0.1" + diff "^3.2.0" + ember-cli-broccoli-sane-watcher "^2.0.4" ember-cli-is-package-missing "^1.0.0" ember-cli-legacy-blueprints "^0.1.2" ember-cli-lodash-subset "^1.0.11" ember-cli-normalize-entity-name "^1.0.0" - ember-cli-preprocess-registry "^3.0.0" + ember-cli-preprocess-registry "^3.1.0" ember-cli-string-utils "^1.0.0" - ember-try "^0.2.6" - escape-string-regexp "^1.0.3" - execa "^0.4.0" + ember-try "^0.2.15" + ensure-posix-path "^1.0.2" + execa "^0.7.0" exists-sync "0.0.4" exit "^0.1.2" express "^4.12.3" filesize "^3.1.3" - find-up "^1.1.2" - fs-extra "1.0.0" + find-up "^2.1.0" + fs-extra "^3.0.0" fs-tree-diff "^0.5.2" get-caller-file "^1.0.0" - git-repo-info "^1.0.4" + git-repo-info "^1.4.1" glob "7.1.1" + heimdalljs "^0.2.3" heimdalljs-fs-monitor "^0.1.0" + heimdalljs-graph "^0.3.1" heimdalljs-logger "^0.1.7" http-proxy "^1.9.0" inflection "^1.7.0" - is-git-url "^0.2.0" + is-git-url "^1.0.0" isbinaryfile "^3.0.0" js-yaml "^3.6.1" + json-stable-stringify "^1.0.1" leek "0.0.24" lodash.template "^4.2.5" - markdown-it "8.1.0" - markdown-it-terminal "0.0.4" + markdown-it "^8.3.0" + markdown-it-terminal "0.1.0" minimatch "^3.0.0" - morgan "^1.5.2" + morgan "^1.8.1" node-modules-path "^1.0.0" - nopt "^3.0.1" - npm "3.10.8" + nopt "^3.0.6" npm-package-arg "^4.1.1" portfinder "^1.0.7" promise-map-series "^0.2.1" - quick-temp "0.1.6" - resolve "^1.1.6" + quick-temp "^0.1.8" + resolve "^1.3.0" rsvp "^3.3.3" - sane "^1.1.1" + sane "^1.6.0" semver "^5.1.1" silent-error "^1.0.0" sort-package-json "^1.4.0" - symlink-or-copy "^1.0.1" + symlink-or-copy "^1.1.8" temp "0.8.3" - testem "^1.8.1" + testem "^1.18.0" tiny-lr "^1.0.3" - tree-sync "^1.1.4" + tree-sync "^1.2.1" uuid "^3.0.0" + validate-npm-package-name "^3.0.0" walk-sync "^0.3.0" yam "0.0.22" @@ -3281,12 +3265,14 @@ ember-cookies@^0.0.13: ember-cli-babel "^5.1.7" ember-getowner-polyfill "^1.2.2" -ember-data-factory-guy@2.11.7: - version "2.11.7" - resolved "https://registry.yarnpkg.com/ember-data-factory-guy/-/ember-data-factory-guy-2.11.7.tgz#80745cc01de574f855e8bd62c2ff05f5a92cc614" +ember-data-factory-guy@^2.13.7: + version "2.13.7" + resolved "https://registry.yarnpkg.com/ember-data-factory-guy/-/ember-data-factory-guy-2.13.7.tgz#0d15d56ef36ba2224fbb2ee6349cd7691ef20459" dependencies: broccoli-funnel "^1.0.1" broccoli-merge-trees "^1.1.1" + ember-cli-babel "^6.7.0" + jquery-mockjax "^2.2.1" "ember-data-has-many-query@https://github.com/cos-forks/ember-data-has-many-query#master": version "0.2.0" @@ -3351,8 +3337,8 @@ ember-faker@1.1.1: resolved "https://registry.yarnpkg.com/ember-faker/-/ember-faker-1.1.1.tgz#90ca83edef385d8f43bed3ceaed263b59f68773c" "ember-fetch@^2.1.0 || ^3.0.0": - version "3.3.1" - resolved "https://registry.yarnpkg.com/ember-fetch/-/ember-fetch-3.3.1.tgz#47f7c0d282bfe61d4899f3a9d5af9f71e5558910" + version "3.4.0" + resolved "https://registry.yarnpkg.com/ember-fetch/-/ember-fetch-3.4.0.tgz#7896cb5e32b411a70a0e4927d230390a1894b6cd" dependencies: broccoli-funnel "^1.2.0" broccoli-stew "^1.4.2" @@ -3378,7 +3364,7 @@ ember-get-config@0.2.1: broccoli-file-creator "^1.1.1" ember-cli-babel "^5.1.6" -ember-getowner-polyfill@^1.0.0, ember-getowner-polyfill@^1.0.1, ember-getowner-polyfill@^1.1.0, ember-getowner-polyfill@^1.2.2: +ember-getowner-polyfill@^1.1.0, ember-getowner-polyfill@^1.2.2: version "1.2.5" resolved "https://registry.yarnpkg.com/ember-getowner-polyfill/-/ember-getowner-polyfill-1.2.5.tgz#ceff8a09897d0d7e05c821bb71666a95eb26dc92" dependencies: @@ -3386,7 +3372,7 @@ ember-getowner-polyfill@^1.0.0, ember-getowner-polyfill@^1.0.1, ember-getowner-p ember-cli-version-checker "^1.2.0" ember-factory-for-polyfill "^1.1.0" -ember-getowner-polyfill@^2.0.0: +ember-getowner-polyfill@^2.0.0, ember-getowner-polyfill@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/ember-getowner-polyfill/-/ember-getowner-polyfill-2.0.1.tgz#9bfe2b4d527ed174e76fef2c8f30937d77cb66fb" dependencies: @@ -3402,7 +3388,7 @@ ember-i18n@5.0.1: ember-cli-version-checker "^1.2.0" ember-getowner-polyfill "^1.2.2" -ember-inflector@^1.9.2, ember-inflector@^1.9.4: +ember-inflector@^1.9.4: version "1.12.1" resolved "https://registry.yarnpkg.com/ember-inflector/-/ember-inflector-1.12.1.tgz#d8bd2ca2f327b439720f89923fe614d46b5da1ca" dependencies: @@ -3414,28 +3400,20 @@ ember-load-initializers@^1.0.0: dependencies: ember-cli-babel "^6.0.0-beta.7" -ember-lodash@0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/ember-lodash/-/ember-lodash-0.0.6.tgz#07e9ce9ad2b3c6e28383b45195a036a6c7c42eb9" - dependencies: - broccoli-merge-trees "^0.2.1" - ember-cli-babel "^5.1.5" - lodash-es "^3.10.0" - -ember-lodash@4.17.4: - version "4.17.4" - resolved "https://registry.yarnpkg.com/ember-lodash/-/ember-lodash-4.17.4.tgz#62a76e322e140281c31406b6dd5a11cf318c452d" +ember-lodash@^4.17.5: + version "4.17.5" + resolved "https://registry.yarnpkg.com/ember-lodash/-/ember-lodash-4.17.5.tgz#bda557402facae144567d1ef530b3de7c38bcde1" dependencies: broccoli-debug "^0.6.1" broccoli-funnel "^1.1.0" broccoli-merge-trees "^2.0.0" broccoli-string-replace "^0.1.1" - ember-cli-babel "6.1.0" + ember-cli-babel "^6.4.1" lodash-es "^4.17.4" -ember-macro-helpers@^0.14.1: - version "0.14.5" - resolved "https://registry.yarnpkg.com/ember-macro-helpers/-/ember-macro-helpers-0.14.5.tgz#52b267db835c2dab25badfd44187e67d1f9c9e2c" +ember-macro-helpers@^0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/ember-macro-helpers/-/ember-macro-helpers-0.15.1.tgz#a402651fafb3a25b3612a8c09843bc4061553a13" dependencies: ember-cli-babel "^6.0.0" ember-cli-string-utils "^1.1.0" @@ -3451,23 +3429,24 @@ ember-maybe-import-regenerator@^0.1.5: ember-cli-babel "^6.0.0-beta.4" regenerator-runtime "^0.9.5" -ember-metrics@0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/ember-metrics/-/ember-metrics-0.10.0.tgz#b3400aa8f001af5f39691266bea1d10b943c3cf6" +ember-metrics@^0.12.1: + version "0.12.1" + resolved "https://registry.yarnpkg.com/ember-metrics/-/ember-metrics-0.12.1.tgz#8659343bf7b8bda403e70d482ff59cc9714d89f6" dependencies: broccoli-funnel "^1.0.1" - ember-cli-babel "^5.1.6" - ember-getowner-polyfill "^1.0.0" - ember-runtime-enumerable-includes-polyfill "^1.0.1" + ember-cli-babel "^6.1.0" + ember-getowner-polyfill "^2.0.0" + ember-runtime-enumerable-includes-polyfill "^2.0.0" -ember-moment@7.3.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/ember-moment/-/ember-moment-7.3.1.tgz#20cf679f4a10abd839633afead1dd816963bf3d2" +ember-moment@^7.4.1: + version "7.4.1" + resolved "https://registry.yarnpkg.com/ember-moment/-/ember-moment-7.4.1.tgz#88018c4d981643bb4521ad39539f60ba3ec6bf42" dependencies: - ember-cli-babel "^5.1.6" - ember-macro-helpers "^0.14.1" + ember-cli-babel "^6.6.0" + ember-getowner-polyfill "^2.0.1" + ember-macro-helpers "^0.15.1" -ember-native-dom-helpers@^0.5.3: +ember-native-dom-helpers@^0.5.4: version "0.5.4" resolved "https://registry.yarnpkg.com/ember-native-dom-helpers/-/ember-native-dom-helpers-0.5.4.tgz#0bc1506a643fb7adc0abf1d09c44a7914459296b" dependencies: @@ -3483,8 +3462,8 @@ ember-page-title@3.2.0: ember-cli-htmlbars "^2.0.1" ember-power-select@^1.8.4: - version "1.9.6" - resolved "https://registry.yarnpkg.com/ember-power-select/-/ember-power-select-1.9.6.tgz#3cb5245932db9174801c830497750b5e5c9dc786" + version "1.9.8" + resolved "https://registry.yarnpkg.com/ember-power-select/-/ember-power-select-1.9.8.tgz#93adf238c770705b17588c6ebf7ad8d3daadba3a" dependencies: ember-basic-dropdown "^0.33.1" ember-cli-babel "^6.6.0" @@ -3517,9 +3496,9 @@ ember-resolver@4.1.0: ember-cli-version-checker "^1.1.6" resolve "^1.3.2" -ember-rfc176-data@^0.2.7: - version "0.2.7" - resolved "https://registry.yarnpkg.com/ember-rfc176-data/-/ember-rfc176-data-0.2.7.tgz#bd355bc9b473e08096b518784170a23388bc973b" +ember-rfc176-data@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/ember-rfc176-data/-/ember-rfc176-data-0.3.0.tgz#6aee728cb521c5f80710990965027b9c320f6f08" ember-router-generator@^1.0.0: version "1.2.3" @@ -3527,13 +3506,20 @@ ember-router-generator@^1.0.0: dependencies: recast "^0.11.3" -ember-runtime-enumerable-includes-polyfill@^1.0.0, ember-runtime-enumerable-includes-polyfill@^1.0.1: +ember-runtime-enumerable-includes-polyfill@^1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/ember-runtime-enumerable-includes-polyfill/-/ember-runtime-enumerable-includes-polyfill-1.0.4.tgz#16a7612e347a2edf07da8b2f2f09dbfee70deba0" dependencies: ember-cli-babel "^5.1.6" ember-cli-version-checker "^1.1.6" +ember-runtime-enumerable-includes-polyfill@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ember-runtime-enumerable-includes-polyfill/-/ember-runtime-enumerable-includes-polyfill-2.0.0.tgz#6e9ba118bc909d1d7762de1b03a550d8955308a9" + dependencies: + ember-cli-babel "^6.0.0" + ember-cli-version-checker "^1.1.6" + ember-simple-auth@^1.3.0: version "1.4.0" resolved "https://registry.yarnpkg.com/ember-simple-auth/-/ember-simple-auth-1.4.0.tgz#b989fb94a334ca1634e62f9ca99b0b94f16167ec" @@ -3605,7 +3591,7 @@ ember-try-config@^2.0.1: rsvp "^3.2.1" semver "^5.1.0" -ember-try@^0.2.6: +ember-try@^0.2.15: version "0.2.17" resolved "https://registry.yarnpkg.com/ember-try/-/ember-try-0.2.17.tgz#0ffff687630291b4cf94f5b196e728c1a92d8aec" dependencies: @@ -3629,12 +3615,6 @@ ember-weakmap@^2.0.0: dependencies: ember-cli-babel "^5.1.6" -ember-wormhole@^0.3.4: - version "0.3.6" - resolved "https://registry.yarnpkg.com/ember-wormhole/-/ember-wormhole-0.3.6.tgz#bbe21bb5478ad254efe4fff4019ac6710f4ad85c" - dependencies: - ember-cli-babel "^5.0.0" - ember-wormhole@^0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/ember-wormhole/-/ember-wormhole-0.5.2.tgz#cc0ceb7db4f8b8da0fd852edc81d75cb1dcd92f1" @@ -3737,24 +3717,6 @@ error@^7.0.0: string-template "~0.2.1" xtend "~4.0.0" -es-abstract@^1.5.0: - version "1.8.2" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.8.2.tgz#25103263dc4decbda60e0c737ca32313518027ee" - dependencies: - es-to-primitive "^1.1.1" - function-bind "^1.1.1" - has "^1.0.1" - is-callable "^1.1.3" - is-regex "^1.0.4" - -es-to-primitive@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" - dependencies: - is-callable "^1.1.1" - is-date-object "^1.0.1" - is-symbol "^1.0.1" - es5-ext@^0.10.14, es5-ext@^0.10.9, es5-ext@~0.10.14: version "0.10.30" resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.30.tgz#7141a16836697dbabfaaaeee41495ce29f52c939" @@ -3795,7 +3757,7 @@ es6-set@~0.1.5: es6-symbol "3.1.1" event-emitter "~0.3.5" -es6-symbol@3.1.1, es6-symbol@^3.0.2, es6-symbol@^3.1, es6-symbol@^3.1.1, es6-symbol@~3.1, es6-symbol@~3.1.1: +es6-symbol@3.1.1, es6-symbol@^3.1, es6-symbol@^3.1.1, es6-symbol@~3.1, es6-symbol@~3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" dependencies: @@ -3815,7 +3777,7 @@ escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" -escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.3, escape-string-regexp@^1.0.5: +escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -3901,16 +3863,12 @@ eslint@^3.0.0, eslint@^3.19.0: user-home "^2.0.0" espree@^3.4.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.0.tgz#98358625bdd055861ea27e2867ea729faf463d8d" + version "3.5.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.1.tgz#0c988b8ab46db53100a1954ae4ba995ddd27d87e" dependencies: acorn "^5.1.1" acorn-jsx "^3.0.0" -esprima-fb@~12001.1.0-dev-harmony-fb: - version "12001.1.0-dev-harmony-fb" - resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-12001.1.0-dev-harmony-fb.tgz#d84400384ba95ce2678c617ad24a7f40808da915" - esprima-fb@~15001.1001.0-dev-harmony-fb: version "15001.1001.0-dev-harmony-fb" resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-15001.1001.0-dev-harmony-fb.tgz#43beb57ec26e8cf237d3dd8b33e42533577f2659" @@ -3923,7 +3881,7 @@ esprima@^3.1.1, esprima@^3.1.3, esprima@~3.1.0: version "3.1.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" -esprima@^4.0.0: +esprima@^4.0.0, esprima@~4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" @@ -3935,6 +3893,10 @@ esprima@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad" +esprima@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.0.0.tgz#53cf247acda77313e551c3aa2e73342d3fb4f7d9" + esquery@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa" @@ -3968,7 +3930,7 @@ esutils@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.0.0.tgz#8151d358e20c8acc7fb745e7472c0025fe496570" -etag@~1.8.0: +etag@~1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" @@ -4004,15 +3966,16 @@ exec-sh@^0.2.0: dependencies: merge "^1.1.3" -execa@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.4.0.tgz#4eb6467a36a095fabb2970ff9d5e3fb7bce6ebc3" +execa@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" dependencies: - cross-spawn-async "^2.1.1" + cross-spawn "^5.0.1" + get-stream "^3.0.0" is-stream "^1.1.0" - npm-run-path "^1.0.0" - object-assign "^4.0.1" - path-key "^1.0.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" strip-eof "^1.0.0" exists-stat@1.0.0: @@ -4041,6 +4004,18 @@ expand-brackets@^0.1.4: dependencies: is-posix-bracket "^0.1.0" +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + expand-range@^1.8.1: version "1.8.2" resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" @@ -4053,40 +4028,54 @@ expand-tilde@^1.2.2: dependencies: os-homedir "^1.0.1" +expand-tilde@^2.0.0, expand-tilde@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" + dependencies: + homedir-polyfill "^1.0.1" + express@^4.10.7, express@^4.12.3, express@^4.13.1: - version "4.15.4" - resolved "https://registry.yarnpkg.com/express/-/express-4.15.4.tgz#032e2253489cf8fce02666beca3d11ed7a2daed1" + version "4.16.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.16.1.tgz#6b33b560183c9b253b7b62144df33a4654ac9ed0" dependencies: - accepts "~1.3.3" + accepts "~1.3.4" array-flatten "1.1.1" + body-parser "1.18.2" content-disposition "0.5.2" - content-type "~1.0.2" + content-type "~1.0.4" cookie "0.3.1" cookie-signature "1.0.6" - debug "2.6.8" + debug "2.6.9" depd "~1.1.1" encodeurl "~1.0.1" escape-html "~1.0.3" - etag "~1.8.0" - finalhandler "~1.0.4" - fresh "0.5.0" + etag "~1.8.1" + finalhandler "1.1.0" + fresh "0.5.2" merge-descriptors "1.0.1" methods "~1.1.2" on-finished "~2.3.0" - parseurl "~1.3.1" + parseurl "~1.3.2" path-to-regexp "0.1.7" - proxy-addr "~1.1.5" - qs "6.5.0" + proxy-addr "~2.0.2" + qs "6.5.1" range-parser "~1.2.0" - send "0.15.4" - serve-static "1.12.4" - setprototypeof "1.0.3" + safe-buffer "5.1.1" + send "0.16.1" + serve-static "1.13.1" + setprototypeof "1.1.0" statuses "~1.3.1" type-is "~1.6.15" - utils-merge "1.0.0" - vary "~1.1.1" + utils-merge "1.0.1" + vary "~1.1.2" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + dependencies: + is-extendable "^0.1.0" -extend@^3.0.0, extend@~3.0.0: +extend@^3.0.0, extend@~3.0.0, extend@~3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" @@ -4104,6 +4093,19 @@ extglob@^0.3.1: dependencies: is-extglob "^1.0.0" +extglob@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.2.tgz#3290f46208db1b2e8eb8be0c94ed9e6ad80edbe2" + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + extract-zip@~1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.5.0.tgz#92ccf6d81ef70a9fa4c1747114ccef6d8688a6c4" @@ -4117,6 +4119,10 @@ extsprintf@1.3.0, extsprintf@^1.2.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" +fast-deep-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" + fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" @@ -4147,6 +4153,12 @@ fastboot-filter-initializers@^0.0.2: dependencies: broccoli-funnel "^1.0.1" +fastboot-transform@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/fastboot-transform/-/fastboot-transform-0.1.2.tgz#f910d666ab93e75604492ea655270d1804bc8de7" + dependencies: + broccoli-stew "^1.5.0" + faye-websocket@~0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" @@ -4204,15 +4216,36 @@ fill-range@^2.1.0: repeat-element "^1.1.2" repeat-string "^1.5.2" -finalhandler@1.0.4, finalhandler@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.0.4.tgz#18574f2e7c4b98b8ae3b230c21f201f31bdb3fb7" +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + +finalhandler@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.0.6.tgz#007aea33d1a4d3e42017f624848ad58d212f814f" + dependencies: + debug "2.6.9" + encodeurl "~1.0.1" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.2" + statuses "~1.3.1" + unpipe "~1.0.0" + +finalhandler@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz#ce0b6855b45853e791b2fcc680046d88253dd7f5" dependencies: - debug "2.6.8" + debug "2.6.9" encodeurl "~1.0.1" escape-html "~1.0.3" on-finished "~2.3.0" - parseurl "~1.3.1" + parseurl "~1.3.2" statuses "~1.3.1" unpipe "~1.0.0" @@ -4220,13 +4253,19 @@ find-index@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/find-index/-/find-index-1.1.0.tgz#53007c79cd30040d6816d79458e8837d5c5705ef" -find-up@^1.0.0, find-up@^1.1.2: +find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" dependencies: path-exists "^2.0.0" pinkie-promise "^2.0.0" +find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + dependencies: + locate-path "^2.0.0" + findup-sync@0.4.3, findup-sync@^0.4.2: version "0.4.3" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.4.3.tgz#40043929e7bc60adf0b7f4827c4c6e75a0deca12" @@ -4242,6 +4281,15 @@ findup-sync@^0.2.1: dependencies: glob "~4.3.0" +findup-sync@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc" + dependencies: + detect-file "^1.0.0" + is-glob "^3.1.0" + micromatch "^3.0.4" + resolve-dir "^1.0.1" + findup@^0.1.5: version "0.1.5" resolved "https://registry.yarnpkg.com/findup/-/findup-0.1.5.tgz#8ad929a3393bac627957a7e5de4623b06b0e2ceb" @@ -4260,8 +4308,8 @@ fireworm@^0.7.0: minimatch "^3.0.2" flat-cache@^1.2.1: - version "1.2.2" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96" + version "1.3.0" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.0.tgz#d3030b32b38154f4e3b7e9c709f490f7ef97c481" dependencies: circular-json "^0.3.1" del "^2.0.2" @@ -4272,13 +4320,7 @@ font-awesome@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/font-awesome/-/font-awesome-4.7.0.tgz#8fa8cf0411a1a31afd07b06d2902bb9fc815a133" -for-each@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.2.tgz#2c40450b9348e97f281322593ba96704b9abd4d4" - dependencies: - is-function "~1.0.0" - -for-in@^1.0.1: +for-in@^1.0.1, for-in@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -4288,10 +4330,6 @@ for-own@^0.1.4: dependencies: for-in "^1.0.1" -foreach@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" - forever-agent@~0.5.0: version "0.5.2" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.5.2.tgz#6d0e09c4921f94a27f63d3b49c5feff1ea4c5130" @@ -4308,14 +4346,6 @@ form-data@~0.1.0: combined-stream "~0.0.4" mime "~1.2.11" -form-data@~1.0.0-rc4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-1.0.1.tgz#ae315db9a4907fa065502304a66d7733475ee37c" - dependencies: - async "^2.0.1" - combined-stream "^1.0.5" - mime-types "^2.1.11" - form-data@~2.1.1: version "2.1.4" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" @@ -4324,32 +4354,38 @@ form-data@~2.1.1: combined-stream "^1.0.5" mime-types "^2.1.12" +form-data@~2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.1.tgz#6fb94fbd71885306d73d15cc497fe4cc4ecd44bf" + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.12" + formatio@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/formatio/-/formatio-1.2.0.tgz#f3b2167d9068c4698a8d51f4f760a39a54d818eb" dependencies: samsam "1.x" -forwarded@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.1.tgz#8a4e30c640b05395399a3549c730257728048961" +forwarded@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" -fresh@0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.0.tgz#f474ca5e6a9246d6fd8e0953cfa9b9c805afa78e" +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + dependencies: + map-cache "^0.2.2" + +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" fs-exists-sync@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" -fs-extra@1.0.0, fs-extra@^1.0.0, fs-extra@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-1.0.0.tgz#cd3ce5f7e7cb6145883fcae3191e9877f8587950" - dependencies: - graceful-fs "^4.1.2" - jsonfile "^2.1.0" - klaw "^1.0.0" - fs-extra@^0.24.0: version "0.24.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.24.0.tgz#d4e4342a96675cb7846633a6099249332b539952" @@ -4379,6 +4415,14 @@ fs-extra@^0.30.0: path-is-absolute "^1.0.0" rimraf "^2.2.8" +fs-extra@^1.0.0, fs-extra@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-1.0.0.tgz#cd3ce5f7e7cb6145883fcae3191e9877f8587950" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^2.1.0" + klaw "^1.0.0" + fs-extra@^2.0.0: version "2.1.2" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-2.1.2.tgz#046c70163cef9aad46b0e4a7fa467fb22d71de35" @@ -4386,17 +4430,26 @@ fs-extra@^2.0.0: graceful-fs "^4.1.2" jsonfile "^2.1.0" +fs-extra@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-3.0.1.tgz#3794f378c58b342ea7dbbb23095109c4b3b62291" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^3.0.0" + universalify "^0.1.0" + +fs-extra@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.2.tgz#f91704c53d1b461f893452b0c307d9997647ab6b" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^4.0.0" + universalify "^0.1.0" + fs-readdir-recursive@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-0.1.2.tgz#315b4fb8c1ca5b8c47defef319d073dad3568059" -fs-tree-diff@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/fs-tree-diff/-/fs-tree-diff-0.3.1.tgz#41a84ee34994bd564c63d9852f1109c5de7f9290" - dependencies: - debug "^2.2.0" - fast-ordered-set "^1.0.2" - fs-tree-diff@^0.5.0, fs-tree-diff@^0.5.2, fs-tree-diff@^0.5.3, fs-tree-diff@^0.5.4, fs-tree-diff@^0.5.6: version "0.5.6" resolved "https://registry.yarnpkg.com/fs-tree-diff/-/fs-tree-diff-0.5.6.tgz#342665749e8dca406800b672268c8f5073f3e623" @@ -4413,23 +4466,6 @@ fs-tree@^1.0.0: mkdirp "~0.5.0" rimraf "~2.2.8" -fs-vacuum@~1.2.9: - version "1.2.10" - resolved "https://registry.yarnpkg.com/fs-vacuum/-/fs-vacuum-1.2.10.tgz#b7629bec07a4031a2548fdf99f5ecf1cc8b31e36" - dependencies: - graceful-fs "^4.1.2" - path-is-inside "^1.0.1" - rimraf "^2.5.2" - -fs-write-stream-atomic@~1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -4441,7 +4477,7 @@ fsevents@^1.0.0: nan "^2.3.0" node-pre-gyp "^0.6.36" -fstream-ignore@^1.0.0, fstream-ignore@^1.0.5: +fstream-ignore@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" dependencies: @@ -4449,14 +4485,7 @@ fstream-ignore@^1.0.0, fstream-ignore@^1.0.5: inherits "2" minimatch "^3.0.0" -fstream-npm@~1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/fstream-npm/-/fstream-npm-1.2.1.tgz#08c4a452f789dcbac4c89a4563c902b2c862fd5b" - dependencies: - fstream-ignore "^1.0.0" - inherits "2" - -fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2, fstream@~1.0.10: +fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: version "1.0.11" resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" dependencies: @@ -4465,25 +4494,11 @@ fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2, fstream@~1.0.10: mkdirp ">=0.5 0" rimraf "2" -function-bind@^1.0.2, function-bind@^1.1.1, function-bind@~1.1.0: +function-bind@^1.0.2: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" -gauge@~2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.6.0.tgz#d35301ad18e96902b4751dcbbe40f4218b942a46" - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-color "^0.1.7" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -gauge@~2.7.1, gauge@~2.7.3: +gauge@~2.7.3: version "2.7.4" resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" dependencies: @@ -4520,6 +4535,14 @@ get-stdin@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" +get-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" @@ -4532,7 +4555,7 @@ git-branch-is@0.1.0: dependencies: commander "^2.9.0" -git-repo-info@^1.0.4, git-repo-info@^1.1.2: +git-repo-info@^1.0.4, git-repo-info@^1.1.2, git-repo-info@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/git-repo-info/-/git-repo-info-1.4.1.tgz#2a072823254aaf62fcf0766007d7b6651bd41943" @@ -4630,7 +4653,7 @@ glob@^5.0.10, glob@^5.0.15: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.0, glob@^7.0.3, glob@^7.0.4, glob@^7.0.5, glob@^7.1.0, glob@^7.1.1, glob@~7.1.1, glob@~7.1.2: +glob@^7.0.0, glob@^7.0.3, glob@^7.0.4, glob@^7.0.5, glob@^7.1.0, glob@~7.1.1: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: @@ -4650,17 +4673,6 @@ glob@~4.3.0: minimatch "^2.0.1" once "^1.3.0" -glob@~7.0.6: - version "7.0.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a" - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.2" - once "^1.3.0" - path-is-absolute "^1.0.0" - global-modules@^0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-0.2.3.tgz#ea5a3bed42c6d6ce995a4f8a1269b5dae223828d" @@ -4668,6 +4680,14 @@ global-modules@^0.2.3: global-prefix "^0.1.4" is-windows "^0.2.0" +global-modules@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" + dependencies: + global-prefix "^1.0.1" + is-windows "^1.0.1" + resolve-dir "^1.0.0" + global-prefix@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-0.1.5.tgz#8d3bc6b8da3ca8112a160d8d496ff0462bfef78f" @@ -4677,6 +4697,16 @@ global-prefix@^0.1.4: is-windows "^0.2.0" which "^1.2.12" +global-prefix@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" + dependencies: + expand-tilde "^2.0.2" + homedir-polyfill "^1.0.1" + ini "^1.3.4" + is-windows "^1.0.1" + which "^1.2.14" + globals@^6.4.0: version "6.4.1" resolved "https://registry.yarnpkg.com/globals/-/globals-6.4.1.tgz#8498032b3b6d1cc81eebc5f79690d8fe29fabf4f" @@ -4704,7 +4734,7 @@ globule@^1.0.0: lodash "~4.17.4" minimatch "~3.0.2" -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@~4.1.6: +graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" @@ -4747,6 +4777,10 @@ har-schema@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + har-validator@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" @@ -4763,6 +4797,13 @@ har-validator@~4.2.1: ajv "^4.9.1" har-schema "^1.0.5" +har-validator@~5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" + dependencies: + ajv "^5.1.0" + har-schema "^2.0.0" + has-ansi@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-0.1.0.tgz#84f265aae8c0e6a88a12d7022894b7568894c62e" @@ -4787,10 +4828,6 @@ has-binary@0.1.7: dependencies: isarray "0.0.1" -has-color@^0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/has-color/-/has-color-0.1.7.tgz#67144a5260c34fc3cca677d041daf52fe7b78b2f" - has-cors@1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39" @@ -4799,11 +4836,42 @@ has-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" -has-unicode@^2.0.0, has-unicode@~2.0.1: +has-flag@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" + +has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" -has@^1.0.0, has@^1.0.1, has@~1.0.1: +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +has@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" dependencies: @@ -4854,7 +4922,7 @@ hawk@1.1.1: hoek "0.9.x" sntp "0.2.x" -hawk@~3.1.3: +hawk@3.1.3, hawk@~3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" dependencies: @@ -4863,6 +4931,15 @@ hawk@~3.1.3: hoek "2.x.x" sntp "1.x.x" +hawk@~6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038" + dependencies: + boom "4.x.x" + cryptiles "3.x.x" + hoek "4.x.x" + sntp "2.x.x" + heimdalljs-fs-monitor@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/heimdalljs-fs-monitor/-/heimdalljs-fs-monitor-0.1.0.tgz#d404a65688c6714c485469ed3495da4853440272" @@ -4870,6 +4947,10 @@ heimdalljs-fs-monitor@^0.1.0: heimdalljs "^0.2.0" heimdalljs-logger "^0.1.7" +heimdalljs-graph@^0.3.1: + version "0.3.3" + resolved "https://registry.yarnpkg.com/heimdalljs-graph/-/heimdalljs-graph-0.3.3.tgz#ea801dbba659c8d522fe1cb83b2d605726e4918f" + heimdalljs-logger@^0.1.7: version "0.1.9" resolved "https://registry.yarnpkg.com/heimdalljs-logger/-/heimdalljs-logger-0.1.9.tgz#d76ada4e45b7bb6f786fc9c010a68eb2e2faf176" @@ -4905,6 +4986,10 @@ hoek@2.x.x: version "2.16.3" resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" +hoek@4.x.x: + version "4.2.0" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d" + home-or-tmp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-1.0.0.tgz#4b9f1e40800c3e50c6c27f781676afcce71f3985" @@ -4919,20 +5004,16 @@ home-or-tmp@^2.0.0: os-homedir "^1.0.0" os-tmpdir "^1.0.1" -homedir-polyfill@^1.0.0: +homedir-polyfill@^1.0.0, homedir-polyfill@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" dependencies: parse-passwd "^1.0.0" -hosted-git-info@^2.1.4, hosted-git-info@^2.1.5, hosted-git-info@^2.4.2: +hosted-git-info@^2.1.4, hosted-git-info@^2.1.5: version "2.5.0" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" -hosted-git-info@~2.1.5: - version "2.1.5" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.1.5.tgz#0ba81d90da2e25ab34a332e6ec77936e1598118b" - htmlescape@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/htmlescape/-/htmlescape-1.1.1.tgz#3a03edc2214bca3b66424a3e7959349509cb0351" @@ -4947,8 +5028,8 @@ http-errors@1.6.2, http-errors@~1.6.2: statuses ">= 1.3.1 < 2" http-parser-js@>=0.4.0: - version "0.4.6" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.6.tgz#195273f58704c452d671076be201329dd341dc55" + version "0.4.9" + resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.9.tgz#ea1a04fb64adff0242e9974f297dd4c3cad271e1" http-proxy@^1.13.1, http-proxy@^1.9.0: version "1.16.2" @@ -4973,6 +5054,14 @@ http-signature@~1.1.0: jsprim "^1.2.2" sshpk "^1.7.0" +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + https-browserify@~0.0.0: version "0.0.1" resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-0.0.1.tgz#3f91365cabe60b77ed0ebba24b454e3e09d95a82" @@ -4985,10 +5074,6 @@ ieee754@^1.1.4: version "1.1.8" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" -iferr@^0.1.5, iferr@~0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - ignore@^3.2.0: version "3.3.5" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.5.tgz#c4e715455f6073a8d7e5dae72d2fc9d71663dba6" @@ -5019,7 +5104,7 @@ inflection@^1.7.0, inflection@^1.7.1, inflection@^1.8.0: version "1.12.0" resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.12.0.tgz#a200935656d6f5f6bc4dc7502e1aecb703228416" -inflight@^1.0.4, inflight@~1.0.5: +inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" dependencies: @@ -5034,23 +5119,10 @@ inherits@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" -ini@^1.3.4, ini@~1.3.0, ini@~1.3.4: +ini@^1.3.4, ini@~1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" -init-package-json@~1.9.4: - version "1.9.6" - resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-1.9.6.tgz#789fc2b74466a4952b9ea77c0575bc78ebd60a61" - dependencies: - glob "^7.1.1" - npm-package-arg "^4.0.0 || ^5.0.0" - promzard "^0.3.0" - read "~1.0.1" - read-package-json "1 || 2" - semver "2.x || 3.x || 4 || 5" - validate-npm-package-license "^3.0.1" - validate-npm-package-name "^3.0.0" - inline-source-map-comment@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/inline-source-map-comment/-/inline-source-map-comment-1.0.5.tgz#50a8a44c2a790dfac441b5c94eccd5462635faf6" @@ -5131,9 +5203,15 @@ invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" -ipaddr.js@1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.4.0.tgz#296aca878a821816e5b85d0a285a99bcff4582f0" +ipaddr.js@1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.5.2.tgz#d4b505bde9946987ccf0fc58d9010ff9607e3fa0" + +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + dependencies: + kind-of "^3.0.2" is-arrayish@^0.2.1: version "0.2.1" @@ -5155,13 +5233,27 @@ is-builtin-module@^1.0.0: dependencies: builtin-modules "^1.0.0" -is-callable@^1.1.1, is-callable@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + dependencies: + kind-of "^3.0.2" + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" -is-date-object@^1.0.1: +is-descriptor@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.1.tgz#2c6023599bde2de9d5d2c8b9a9d94082036b6ef2" + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" is-dotfile@^1.0.0: version "1.0.3" @@ -5173,7 +5265,7 @@ is-equal-shallow@^0.1.3: dependencies: is-primitive "^2.0.0" -is-extendable@^0.1.1: +is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" @@ -5181,6 +5273,10 @@ is-extglob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" +is-extglob@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + is-finite@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" @@ -5197,17 +5293,13 @@ is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" -is-function@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.1.tgz#12cfb98b65b57dd3d193a3121f5f6e2f437602b5" - is-git-url@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/is-git-url/-/is-git-url-0.2.0.tgz#b9ce0fb044821c88880213d602db03bdb255da1b" -is-git-url@^0.2.0: - version "0.2.3" - resolved "https://registry.yarnpkg.com/is-git-url/-/is-git-url-0.2.3.tgz#445200d6fbd6da028fb5e01440d9afc93f3ccb64" +is-git-url@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-git-url/-/is-git-url-1.0.0.tgz#53f684cd143285b52c3244b4e6f28253527af66b" is-glob@^2.0.0, is-glob@^2.0.1: version "2.0.1" @@ -5215,6 +5307,12 @@ is-glob@^2.0.0, is-glob@^2.0.1: dependencies: is-extglob "^1.0.0" +is-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + dependencies: + is-extglob "^2.1.0" + is-integer@^1.0.4: version "1.0.7" resolved "https://registry.yarnpkg.com/is-integer/-/is-integer-1.0.7.tgz#6bde81aacddf78b659b6629d629cadc51a886d5c" @@ -5246,6 +5344,12 @@ is-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" +is-odd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-1.0.0.tgz#3b8a932eb028b3775c39bb09e91767accdb69088" + dependencies: + is-number "^3.0.0" + is-path-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" @@ -5262,6 +5366,12 @@ is-path-inside@^1.0.0: dependencies: path-is-inside "^1.0.1" +is-plain-object@^2.0.1, is-plain-object@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + dependencies: + isobject "^3.0.1" + is-posix-bracket@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" @@ -5278,12 +5388,6 @@ is-property@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" -is-regex@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" - dependencies: - has "^1.0.1" - is-resolvable@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62" @@ -5294,10 +5398,6 @@ is-stream@^1.0.1, is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" -is-symbol@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" - is-type@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/is-type/-/is-type-0.0.1.tgz#f651d85c365d44955d14a51d8d7061f3f6b4779c" @@ -5316,6 +5416,10 @@ is-windows@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.2.0.tgz#de1aa6d63ea29dd248737b69f1ff8b8002d2108c" +is-windows@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.1.tgz#310db70f742d259a16a369202b51af84233310d9" + isarray@0.0.1, isarray@~0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" @@ -5338,6 +5442,10 @@ isobject@^2.0.0: dependencies: isarray "1.0.0" +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" @@ -5386,6 +5494,16 @@ istextorbinary@2.1.0: editions "^1.1.1" textextensions "1 || 2" +jquery-mockjax@^2.2.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/jquery-mockjax/-/jquery-mockjax-2.2.2.tgz#9c7d2b103a44cf61c99cc78a9ee7878504b60907" + dependencies: + jquery ">=1.5.2" + +jquery@>=1.5.2: + version "3.2.1" + resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.2.1.tgz#5c4d9de652af6cd0a770154a631bba12b015c787" + js-base64@^2.1.8: version "2.3.2" resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.3.2.tgz#a79a923666372b580f8e27f51845c6f7e8fbfbaf" @@ -5459,9 +5577,9 @@ jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" -json-parse-better-errors@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz#50183cd1b2d25275de069e9e71b467ac9eab973a" +json-schema-traverse@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" json-schema@0.2.3: version "0.2.3" @@ -5501,6 +5619,18 @@ jsonfile@^2.1.0: optionalDependencies: graceful-fs "^4.1.6" +jsonfile@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.1.tgz#a5ecc6f65f53f662c4415c7675a0331d0992ec66" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + optionalDependencies: + graceful-fs "^4.1.6" + jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" @@ -5540,7 +5670,7 @@ kew@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/kew/-/kew-0.7.0.tgz#79d93d2d33363d6fdd2970b335d9141ad591d79b" -kind-of@^3.0.2: +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: version "3.2.2" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" dependencies: @@ -5552,6 +5682,10 @@ kind-of@^4.0.0: dependencies: is-buffer "^1.1.5" +kind-of@^5.0.0, kind-of@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.0.2.tgz#f57bec933d9a2209ffa96c5c08343607b7035fda" + klaw@^1.0.0: version "1.3.1" resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" @@ -5580,6 +5714,12 @@ lazy-cache@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" +lazy-cache@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-2.0.2.tgz#b9190a4f913354694840859f8a8f7084d8822264" + dependencies: + set-getter "^0.1.0" + lcid@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" @@ -5649,13 +5789,12 @@ loader@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/loader/-/loader-2.1.1.tgz#8848b12a3f00572e5a4249333ccdac79773fb402" -lockfile@~1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/lockfile/-/lockfile-1.0.3.tgz#2638fc39a0331e9cac1a04b71799931c9c50df79" - -lodash-es@^3.10.0: - version "3.10.1" - resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-3.10.1.tgz#a1c85d9829c9009004339dc3846dbabb46cf4e19" +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" lodash-es@^4.17.4: version "4.17.4" @@ -5669,14 +5808,6 @@ lodash-node@^3.2.0: version "3.10.2" resolved "https://registry.yarnpkg.com/lodash-node/-/lodash-node-3.10.2.tgz#2598d5b1b54e6a68b4cb544e5c730953cbf632f7" -lodash._arraycopy@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._arraycopy/-/lodash._arraycopy-3.0.0.tgz#76e7b7c1f1fb92547374878a562ed06a3e50f6e1" - -lodash._arrayeach@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._arrayeach/-/lodash._arrayeach-3.0.0.tgz#bab156b2a90d3f1bbd5c653403349e5e5933ef9e" - lodash._baseassign@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" @@ -5729,21 +5860,10 @@ lodash._baseflatten@^3.0.0: lodash.isarguments "^3.0.0" lodash.isarray "^3.0.0" -lodash._basefor@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/lodash._basefor/-/lodash._basefor-3.0.3.tgz#7550b4e9218ef09fad24343b612021c79b4c20c2" - lodash._basetostring@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5" -lodash._baseuniq@~4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash._baseuniq/-/lodash._baseuniq-4.6.0.tgz#0ebb44e456814af7905c6212fa2c9b2d51b841e8" - dependencies: - lodash._createset "~4.0.0" - lodash._root "~3.0.0" - lodash._basevalues@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7" @@ -5760,10 +5880,6 @@ lodash._createassigner@^3.0.0: lodash._isiterateecall "^3.0.0" lodash.restparam "^3.0.0" -lodash._createset@~4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/lodash._createset/-/lodash._createset-4.0.3.tgz#0f4659fbb09d75194fa9e2b88a6644d363c9fe26" - lodash._createwrapper@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/lodash._createwrapper/-/lodash._createwrapper-2.3.0.tgz#d1aae1102dadf440e8e06fc133a6edd7fe146075" @@ -5817,7 +5933,7 @@ lodash._reunescapedhtml@~2.3.0: lodash._htmlescapes "~2.3.0" lodash.keys "~2.3.0" -lodash._root@^3.0.0, lodash._root@~3.0.0: +lodash._root@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692" @@ -5862,7 +5978,7 @@ lodash.bind@~2.3.0: lodash._renative "~2.3.0" lodash._slice "~2.3.0" -lodash.clonedeep@^4.3.2, lodash.clonedeep@^4.4.1, lodash.clonedeep@~4.5.0: +lodash.clonedeep@^4.3.2, lodash.clonedeep@^4.4.1: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" @@ -5949,18 +6065,6 @@ lodash.isobject@~2.3.0: dependencies: lodash._objecttypes "~2.3.0" -lodash.isplainobject@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-3.2.0.tgz#9a8238ae16b200432960cd7346512d0123fbf4c5" - dependencies: - lodash._basefor "^3.0.0" - lodash.isarguments "^3.0.0" - lodash.keysin "^3.0.0" - -lodash.istypedarray@^3.0.0: - version "3.0.6" - resolved "https://registry.yarnpkg.com/lodash.istypedarray/-/lodash.istypedarray-3.0.6.tgz#c9a477498607501d8e8494d283b87c39281cef62" - lodash.keys@^3.0.0: version "3.1.2" resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" @@ -5977,34 +6081,15 @@ lodash.keys@~2.3.0: lodash._shimkeys "~2.3.0" lodash.isobject "~2.3.0" -lodash.keysin@^3.0.0: - version "3.0.8" - resolved "https://registry.yarnpkg.com/lodash.keysin/-/lodash.keysin-3.0.8.tgz#22c4493ebbedb1427962a54b445b2c8a767fb47f" - dependencies: - lodash.isarguments "^3.0.0" - lodash.isarray "^3.0.0" +lodash.memoize@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" lodash.memoize@~3.0.3: version "3.0.4" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-3.0.4.tgz#2dcbd2c287cbc0a55cc42328bd0c736150d53e3f" -lodash.merge@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-3.3.2.tgz#0d90d93ed637b1878437bb3e21601260d7afe994" - dependencies: - lodash._arraycopy "^3.0.0" - lodash._arrayeach "^3.0.0" - lodash._createassigner "^3.0.0" - lodash._getnative "^3.0.0" - lodash.isarguments "^3.0.0" - lodash.isarray "^3.0.0" - lodash.isplainobject "^3.0.0" - lodash.istypedarray "^3.0.0" - lodash.keys "^3.0.0" - lodash.keysin "^3.0.0" - lodash.toplainobject "^3.0.0" - -lodash.merge@^4.3.0, lodash.merge@^4.4.0, lodash.merge@^4.5.1: +lodash.merge@^4.3.0, lodash.merge@^4.4.0, lodash.merge@^4.5.1, lodash.merge@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.0.tgz#69884ba144ac33fe699737a6086deffadd0f89c5" @@ -6083,18 +6168,7 @@ lodash.templatesettings@~2.3.0: lodash._reinterpolate "~2.3.0" lodash.escape "~2.3.0" -lodash.toplainobject@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash.toplainobject/-/lodash.toplainobject-3.0.0.tgz#28790ad942d293d78aa663a07ecf7f52ca04198d" - dependencies: - lodash._basecopy "^3.0.0" - lodash.keysin "^3.0.0" - -lodash.union@~4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.union/-/lodash.union-4.6.0.tgz#48bb5088409f16f1821666641c44dd1aaae3cd88" - -lodash.uniq@^4.2.0, lodash.uniq@~4.5.0: +lodash.uniq@^4.2.0, lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" @@ -6108,10 +6182,6 @@ lodash.values@~2.3.0: dependencies: lodash.keys "~2.3.0" -lodash.without@~4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.without/-/lodash.without-4.4.0.tgz#3cd4574a00b67bae373a94b748772640507b7aac" - lodash@^3.10.0, lodash@^3.10.1, lodash@^3.9.3: version "3.10.1" resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" @@ -6149,7 +6219,7 @@ lru-cache@2: version "2.7.3" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952" -lru-cache@^4.0.0, lru-cache@^4.0.1: +lru-cache@^4.0.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" dependencies: @@ -6160,37 +6230,43 @@ make-array@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/make-array/-/make-array-0.1.2.tgz#335e36ebb0c5a43154d21213a1ecaeae2a1bb3ef" +make-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.0.0.tgz#97a011751e91dd87cfadef58832ebb04936de978" + dependencies: + pify "^2.3.0" + makeerror@1.0.x: version "1.0.11" resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" dependencies: tmpl "1.0.x" +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + map-obj@^1.0.0, map-obj@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" -markdown-it-terminal@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/markdown-it-terminal/-/markdown-it-terminal-0.0.4.tgz#3f2ce624ba2ca964a78b8b388d605ee330de9ced" +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" dependencies: - ansi-styles "^2.1.0" - cardinal "^0.5.0" - cli-table "^0.3.1" - lodash.merge "^3.3.2" - markdown-it "^4.4.0" + object-visit "^1.0.0" -markdown-it@8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-8.1.0.tgz#38902d4e7bac2260c073eb67be623211fbb2c2e3" +markdown-it-terminal@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/markdown-it-terminal/-/markdown-it-terminal-0.1.0.tgz#545abd8dd01c3d62353bfcea71db580b51d22bd9" dependencies: - argparse "^1.0.7" - entities "~1.1.1" - linkify-it "^2.0.0" - mdurl "^1.0.1" - uc.micro "^1.0.3" + ansi-styles "^3.0.0" + cardinal "^1.0.0" + cli-table "^0.3.1" + lodash.merge "^4.6.0" + markdown-it "^8.3.1" -markdown-it@^4.3.0, markdown-it@^4.4.0: +markdown-it@^4.3.0: version "4.4.0" resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-4.4.0.tgz#3df373dbea587a9a7fef3e56311b68908f75c414" dependencies: @@ -6200,9 +6276,19 @@ markdown-it@^4.3.0, markdown-it@^4.4.0: mdurl "~1.0.0" uc.micro "^1.0.0" +markdown-it@^8.3.0, markdown-it@^8.3.1: + version "8.4.0" + resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-8.4.0.tgz#e2400881bf171f7018ed1bd9da441dac8af6306d" + dependencies: + argparse "^1.0.7" + entities "~1.1.1" + linkify-it "^2.0.0" + mdurl "^1.0.1" + uc.micro "^1.0.3" + matcher-collection@^1.0.0, matcher-collection@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/matcher-collection/-/matcher-collection-1.0.4.tgz#2f66ae0869996f29e43d0b62c83dd1d43e581755" + version "1.0.5" + resolved "https://registry.yarnpkg.com/matcher-collection/-/matcher-collection-1.0.5.tgz#2ee095438372cb8884f058234138c05c644ec339" dependencies: minimatch "^3.0.2" @@ -6303,9 +6389,27 @@ micromatch@^2.1.5, micromatch@^2.3.7: parse-glob "^3.0.4" regex-cache "^0.4.2" +micromatch@^3.0.4: + version "3.1.0" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.0.tgz#5102d4eaf20b6997d6008e3acfe1c44a3fa815e2" + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.2.2" + define-property "^1.0.0" + extend-shallow "^2.0.1" + extglob "^2.0.2" + fragment-cache "^0.2.1" + kind-of "^5.0.2" + nanomatch "^1.2.1" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + miller-rabin@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.0.tgz#4a62fb1d42933c05583982f4c716f6fb9e6c6d3d" + version "4.0.1" + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" dependencies: bn.js "^4.0.0" brorand "^1.0.1" @@ -6314,7 +6418,7 @@ miller-rabin@^4.0.0: version "1.30.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" -mime-types@^2.1.11, mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.15, mime-types@~2.1.16, mime-types@~2.1.7: +mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.15, mime-types@~2.1.16, mime-types@~2.1.17, mime-types@~2.1.7: version "2.1.17" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" dependencies: @@ -6324,13 +6428,9 @@ mime-types@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-1.0.2.tgz#995ae1392ab8affcbfcb2641dd054e943c0d5dce" -mime@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" - -mime@^1.2.11: - version "1.4.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.0.tgz#69e9e0db51d44f2a3b56e48b7817d7d137f1a343" +mime@1.4.1, mime@^1.2.11: + version "1.4.1" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" mime@~1.2.11: version "1.2.11" @@ -6374,7 +6474,7 @@ minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -minimist@1.2.0, minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@~1.2.0: +minimist@1.2.0, minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" @@ -6382,6 +6482,13 @@ minimist@~0.0.1: version "0.0.10" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" +mixin-deep@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.2.0.tgz#d02b8c6f8b6d4b8f5982d3fd009c4919851c3fe2" + dependencies: + for-in "^1.0.2" + is-extendable "^0.1.1" + mkdirp@0.3.x, mkdirp@^0.3.5: version "0.3.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.5.tgz#de3e5f8961c88c787ee1368df849ac4413eca8d7" @@ -6392,7 +6499,7 @@ mkdirp@0.5.0: dependencies: minimist "0.0.8" -mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: +mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: @@ -6438,19 +6545,19 @@ moment@2.18.1, "moment@>= 2.6.0", "moment@>= 2.9.0", moment@^2.18.1: version "2.18.1" resolved "https://registry.yarnpkg.com/moment/-/moment-2.18.1.tgz#c36193dd3ce1c2eed2adb7c802dbbc77a81b1c0f" -morgan@^1.5.2: - version "1.8.2" - resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.8.2.tgz#784ac7734e4a453a9c6e6e8680a9329275c8b687" +morgan@^1.8.1: + version "1.9.0" + resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.9.0.tgz#d01fa6c65859b76fcf31b3cb53a3821a311d8051" dependencies: - basic-auth "~1.1.0" - debug "2.6.8" - depd "~1.1.0" + basic-auth "~2.0.0" + debug "2.6.9" + depd "~1.1.1" on-finished "~2.3.0" on-headers "~1.0.1" mout@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/mout/-/mout-1.0.0.tgz#9bdf1d4af57d66d47cb353a6335a3281098e1501" + version "1.1.0" + resolved "https://registry.yarnpkg.com/mout/-/mout-1.1.0.tgz#0b29d41e6a80fa9e2d4a5be9d602e1d9d02177f6" ms@0.7.1: version "0.7.1" @@ -6476,14 +6583,26 @@ mute-stream@0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.6.tgz#48962b19e169fd1dfc240b3f1e7317627bbc47db" -mute-stream@~0.0.4: - version "0.0.7" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" - nan@^2.3.0, nan@^2.3.2: version "2.7.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.7.0.tgz#d95bf721ec877e08db276ed3fc6eb78f9083ad46" +nanomatch@^1.2.1: + version "1.2.3" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.3.tgz#15e1c02dcf990c27a283b08c0ba1801ce249a6a6" + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^1.0.0" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + is-odd "^1.0.0" + kind-of "^5.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + native-promise-only@^0.8.1: version "0.8.1" resolved "https://registry.yarnpkg.com/native-promise-only/-/native-promise-only-0.8.1.tgz#20a318c30cb45f71fe7adfbf7b21c99c1472ef11" @@ -6510,8 +6629,8 @@ node-fetch@^1.3.3: is-stream "^1.0.1" node-fetch@^2.0.0-alpha.3: - version "2.0.0-alpha.8" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.0.0-alpha.8.tgz#f586cf6730ce30431c7d4528ce561d81add8ba90" + version "2.0.0-alpha.9" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.0.0-alpha.9.tgz#990c0634f510f76449a0d6f6eaec96b22f273628" node-gyp@^3.3.1: version "3.6.2" @@ -6531,25 +6650,6 @@ node-gyp@^3.3.1: tar "^2.0.0" which "1" -node-gyp@~3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.4.0.tgz#dda558393b3ecbbe24c9e6b8703c71194c63fa36" - dependencies: - fstream "^1.0.0" - glob "^7.0.3" - graceful-fs "^4.1.2" - minimatch "^3.0.2" - mkdirp "^0.5.0" - nopt "2 || 3" - npmlog "0 || 1 || 2 || 3" - osenv "0" - path-array "^1.0.0" - request "2" - rimraf "2" - semver "2.x || 3.x || 4 || 5" - tar "^2.0.0" - which "1" - node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" @@ -6568,17 +6668,17 @@ node-notifier@^5.0.1: which "^1.2.12" node-pre-gyp@^0.6.36: - version "0.6.37" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.37.tgz#3c872b236b2e266e4140578fe1ee88f693323a05" + version "0.6.38" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.38.tgz#e92a20f83416415bb4086f6d1fb78b3da73d113d" dependencies: + hawk "3.1.3" mkdirp "^0.5.1" nopt "^4.0.1" npmlog "^4.0.2" rc "^1.1.7" - request "^2.81.0" + request "2.81.0" rimraf "^2.6.1" semver "^5.3.0" - tape "^4.6.3" tar "^2.2.1" tar-pack "^3.4.0" @@ -6605,11 +6705,11 @@ node-sass@^4.1.0: sass-graph "^2.1.1" stdout-stream "^1.4.0" -node-uuid@~1.4.0, node-uuid@~1.4.7: +node-uuid@~1.4.0: version "1.4.8" resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907" -"nopt@2 || 3", nopt@3.x, nopt@^3.0.1, nopt@^3.0.3, nopt@~3.0.6: +"nopt@2 || 3", nopt@3.x, nopt@^3.0.3, nopt@^3.0.6: version "3.0.6" resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" dependencies: @@ -6628,11 +6728,7 @@ nopt@^4.0.1: abbrev "1" osenv "^0.1.4" -normalize-git-url@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/normalize-git-url/-/normalize-git-url-3.0.2.tgz#8e5f14be0bdaedb73e07200310aa416c27350fc4" - -normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, "normalize-package-data@~1.0.1 || ^2.0.0": +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: version "2.4.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" dependencies: @@ -6641,161 +6737,28 @@ normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package- semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-package-data@~2.3.5: - version "2.3.8" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.8.tgz#d819eda2a9dedbd1ffa563ea4071d936782295bb" - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - normalize-path@^2.0.0, normalize-path@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" dependencies: remove-trailing-separator "^1.0.1" -npm-cache-filename@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/npm-cache-filename/-/npm-cache-filename-1.0.2.tgz#ded306c5b0bfc870a9e9faf823bc5f283e05ae11" - npm-git-info@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/npm-git-info/-/npm-git-info-1.0.3.tgz#a933c42ec321e80d3646e0d6e844afe94630e1d5" -npm-install-checks@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-3.0.0.tgz#d4aecdfd51a53e3723b7b2f93b2ee28e307bc0d7" - dependencies: - semver "^2.3.0 || 3.x || 4 || 5" - -"npm-package-arg@^3.0.0 || ^4.0.0", npm-package-arg@^4.1.1, npm-package-arg@~4.2.0: +npm-package-arg@^4.1.1: version "4.2.1" resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-4.2.1.tgz#593303fdea85f7c422775f17f9eb7670f680e3ec" dependencies: hosted-git-info "^2.1.5" semver "^5.1.0" -"npm-package-arg@^4.0.0 || ^5.0.0": - version "5.1.2" - resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-5.1.2.tgz#fb18d17bb61e60900d6312619919bd753755ab37" - dependencies: - hosted-git-info "^2.4.2" - osenv "^0.1.4" - semver "^5.1.0" - validate-npm-package-name "^3.0.0" - -npm-registry-client@~7.2.1: - version "7.2.1" - resolved "https://registry.yarnpkg.com/npm-registry-client/-/npm-registry-client-7.2.1.tgz#c792266b088cc313f8525e7e35248626c723db75" - dependencies: - concat-stream "^1.5.2" - graceful-fs "^4.1.6" - normalize-package-data "~1.0.1 || ^2.0.0" - npm-package-arg "^3.0.0 || ^4.0.0" - once "^1.3.3" - request "^2.74.0" - retry "^0.10.0" - semver "2 >=2.2.1 || 3.x || 4 || 5" - slide "^1.1.3" - optionalDependencies: - npmlog "~2.0.0 || ~3.1.0" - -npm-run-path@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-1.0.0.tgz#f5c32bf595fe81ae927daec52e82f8b000ac3c8f" - dependencies: - path-key "^1.0.0" - -npm-user-validate@~0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/npm-user-validate/-/npm-user-validate-0.1.5.tgz#52465d50c2d20294a57125b996baedbf56c5004b" - -npm@3.10.8: - version "3.10.8" - resolved "https://registry.yarnpkg.com/npm/-/npm-3.10.8.tgz#8f76ff8c6da04b61dd371d554ce40a0b8916c15e" - dependencies: - abbrev "~1.0.9" - ansicolors "~0.3.2" - ansistyles "~0.1.3" - aproba "~1.0.4" - archy "~1.0.0" - asap "~2.0.4" - chownr "~1.0.1" - cmd-shim "~2.0.2" - columnify "~1.5.4" - config-chain "~1.1.10" - dezalgo "~1.0.3" - editor "~1.0.0" - fs-vacuum "~1.2.9" - fs-write-stream-atomic "~1.0.8" - fstream "~1.0.10" - fstream-npm "~1.2.0" - glob "~7.0.6" - graceful-fs "~4.1.6" - has-unicode "~2.0.1" - hosted-git-info "~2.1.5" - iferr "~0.1.5" - inflight "~1.0.5" - inherits "~2.0.3" - ini "~1.3.4" - init-package-json "~1.9.4" - lockfile "~1.0.1" - lodash._baseuniq "~4.6.0" - lodash.clonedeep "~4.5.0" - lodash.union "~4.6.0" - lodash.uniq "~4.5.0" - lodash.without "~4.4.0" - mkdirp "~0.5.1" - node-gyp "~3.4.0" - nopt "~3.0.6" - normalize-git-url "~3.0.2" - normalize-package-data "~2.3.5" - npm-cache-filename "~1.0.2" - npm-install-checks "~3.0.0" - npm-package-arg "~4.2.0" - npm-registry-client "~7.2.1" - npm-user-validate "~0.1.5" - npmlog "~4.0.0" - once "~1.4.0" - opener "~1.4.1" - osenv "~0.1.3" - path-is-inside "~1.0.1" - read "~1.0.7" - read-cmd-shim "~1.0.1" - read-installed "~4.0.3" - read-package-json "~2.0.4" - read-package-tree "~5.1.5" - readable-stream "~2.1.5" - realize-package-specifier "~3.0.3" - request "~2.74.0" - retry "~0.10.0" - rimraf "~2.5.4" - semver "~5.3.0" - sha "~2.0.1" - slide "~1.1.6" - sorted-object "~2.0.0" - strip-ansi "~3.0.1" - tar "~2.2.1" - text-table "~0.2.0" - uid-number "0.0.6" - umask "~1.1.0" - unique-filename "~1.1.0" - unpipe "~1.0.0" - validate-npm-package-name "~2.2.2" - which "~1.2.11" - wrappy "~1.0.2" - write-file-atomic "~1.2.0" - -"npmlog@0 || 1 || 2 || 3", "npmlog@~2.0.0 || ~3.1.0": - version "3.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-3.1.2.tgz#2d46fa874337af9498a2f12bb43d8d0be4a36873" +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.6.0" - set-blocking "~2.0.0" + path-key "^2.0.0" "npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2: version "4.1.2" @@ -6806,15 +6769,6 @@ npm@3.10.8: gauge "~2.7.3" set-blocking "~2.0.0" -npmlog@~4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.2.tgz#d03950e0e78ce1527ba26d2a7592e9348ac3e75f" - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.1" - set-blocking "~2.0.0" - number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" @@ -6823,7 +6777,7 @@ oauth-sign@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.3.0.tgz#cb540f93bb2b22a7d5941691a288d60e8ea9386e" -oauth-sign@~0.8.1: +oauth-sign@~0.8.1, oauth-sign@~0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" @@ -6843,13 +6797,19 @@ object-component@0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/object-component/-/object-component-0.0.3.tgz#f0c69aa50efc95b866c186f400a33769cb2f1291" -object-inspect@~1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.3.0.tgz#5b1eb8e6742e2ee83342a637034d844928ba2f6d" +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" -object-keys@^1.0.8: - version "1.0.11" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + dependencies: + isobject "^3.0.0" object.omit@^2.0.0: version "2.0.1" @@ -6858,6 +6818,12 @@ object.omit@^2.0.0: for-own "^0.1.4" is-extendable "^0.1.1" +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + dependencies: + isobject "^3.0.1" + on-finished@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" @@ -6868,7 +6834,7 @@ on-headers@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" -once@1.x, once@^1.3.0, once@^1.3.3, once@~1.4.0: +once@1.x, once@^1.3.0, once@^1.3.3: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" dependencies: @@ -6878,10 +6844,6 @@ onetime@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" -opener@~1.4.1: - version "1.4.3" - resolved "https://registry.yarnpkg.com/opener/-/opener-1.4.3.tgz#5c6da2c5d7e5831e8ffa3964950f8d6674ac90b8" - optimist@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" @@ -6941,7 +6903,7 @@ os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" -osenv@0, osenv@^0.1.0, osenv@^0.1.3, osenv@^0.1.4, osenv@~0.1.3: +osenv@0, osenv@^0.1.3, osenv@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" dependencies: @@ -6956,6 +6918,20 @@ output-file-sync@^1.1.0: mkdirp "^0.5.1" object-assign "^4.1.0" +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + +p-limit@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + dependencies: + p-limit "^1.1.0" + pagination-pager@2.4.4: version "2.4.4" resolved "https://registry.yarnpkg.com/pagination-pager/-/pagination-pager-2.4.4.tgz#bfcb77303081c7f11ea1a66e139ab8b84218f25e" @@ -7019,15 +6995,13 @@ parseuri@0.0.5: dependencies: better-assert "~1.0.0" -parseurl@~1.3.1: +parseurl@~1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" -path-array@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-array/-/path-array-1.0.1.tgz#7e2f0f35f07a2015122b868b7eac0eb2c4fec271" - dependencies: - array-index "^1.0.0" +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" path-browserify@~0.0.0: version "0.0.0" @@ -7043,17 +7017,21 @@ path-exists@^2.0.0: dependencies: pinkie-promise "^2.0.0" +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" -path-is-inside@^1.0.1, path-is-inside@~1.0.1: +path-is-inside@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" -path-key@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-1.0.0.tgz#5d53d578019646c0d68800db4e146e6bdc2ac7af" +path-key@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" path-parse@^1.0.5: version "1.0.5" @@ -7103,6 +7081,10 @@ performance-now@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + phantomjs-prebuilt@2.1.14: version "2.1.14" resolved "https://registry.yarnpkg.com/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.14.tgz#d53d311fcfb7d1d08ddb24014558f1188c516da0" @@ -7117,7 +7099,7 @@ phantomjs-prebuilt@2.1.14: request-progress "~2.0.1" which "~1.2.10" -pify@^2.0.0: +pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -7143,6 +7125,10 @@ portfinder@^1.0.7: debug "^2.2.0" mkdirp "0.5.x" +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" @@ -7183,22 +7169,12 @@ promise-map-series@^0.2.0, promise-map-series@^0.2.1: dependencies: rsvp "^3.0.14" -promzard@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee" - dependencies: - read "1" - -proto-list@~1.2.1: - version "1.2.4" - resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" - -proxy-addr@~1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.5.tgz#71c0ee3b102de3f202f3b64f608d173fcba1a918" +proxy-addr@~2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.2.tgz#6571504f47bb988ec8180253f85dd7e14952bdec" dependencies: - forwarded "~0.1.0" - ipaddr.js "1.4.0" + forwarded "~0.1.2" + ipaddr.js "1.5.2" pseudomap@^1.0.2: version "1.0.2" @@ -7226,11 +7202,7 @@ q@^1.1.2: version "1.5.0" resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" -qs@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.0.tgz#8d04954d364def3efc55b5a0793e1e2c8b1e6e49" - -qs@6.5.1, qs@^6.4.0: +qs@6.5.1, qs@^6.4.0, qs@~6.5.1: version "6.5.1" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" @@ -7238,10 +7210,6 @@ qs@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/qs/-/qs-1.0.2.tgz#50a93e2b5af6691c31bcea5dae78ee6ea1903768" -qs@~6.2.0: - version "6.2.3" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.3.tgz#1cfcb25c10a9b2b483053ff39f5dfc9233908cfe" - qs@~6.3.0: version "6.3.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c" @@ -7258,15 +7226,7 @@ querystring@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" -quick-temp@0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/quick-temp/-/quick-temp-0.1.6.tgz#a6242a15cba9f9cdbd341287b5c569e318eec307" - dependencies: - mktemp "~0.4.0" - rimraf "~2.2.6" - underscore.string "~2.3.3" - -quick-temp@^0.1.0, quick-temp@^0.1.2, quick-temp@^0.1.3, quick-temp@^0.1.5: +quick-temp@^0.1.0, quick-temp@^0.1.2, quick-temp@^0.1.3, quick-temp@^0.1.5, quick-temp@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/quick-temp/-/quick-temp-0.1.8.tgz#bab02a242ab8fb0dd758a3c9776b32f9a5d94408" dependencies: @@ -7349,52 +7309,12 @@ rc@^1.1.7: minimist "^1.2.0" strip-json-comments "~2.0.1" -read-cmd-shim@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-1.0.1.tgz#2d5d157786a37c055d22077c32c53f8329e91c7b" - dependencies: - graceful-fs "^4.1.2" - -read-installed@~4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/read-installed/-/read-installed-4.0.3.tgz#ff9b8b67f187d1e4c29b9feb31f6b223acd19067" - dependencies: - debuglog "^1.0.1" - read-package-json "^2.0.0" - readdir-scoped-modules "^1.0.0" - semver "2 || 3 || 4 || 5" - slide "~1.1.3" - util-extend "^1.0.1" - optionalDependencies: - graceful-fs "^4.1.2" - read-only-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/read-only-stream/-/read-only-stream-2.0.0.tgz#2724fd6a8113d73764ac288d4386270c1dbf17f0" dependencies: readable-stream "^2.0.2" -"read-package-json@1 || 2", read-package-json@^2.0.0, read-package-json@~2.0.4: - version "2.0.12" - resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-2.0.12.tgz#68ea45f98b3741cb6e10ae3bbd42a605026a6951" - dependencies: - glob "^7.1.1" - json-parse-better-errors "^1.0.0" - normalize-package-data "^2.0.0" - slash "^1.0.0" - optionalDependencies: - graceful-fs "^4.1.2" - -read-package-tree@~5.1.5: - version "5.1.6" - resolved "https://registry.yarnpkg.com/read-package-tree/-/read-package-tree-5.1.6.tgz#4f03e83d0486856fb60d97c94882841c2a7b1b7a" - dependencies: - debuglog "^1.0.1" - dezalgo "^1.0.0" - once "^1.3.0" - read-package-json "^2.0.0" - readdir-scoped-modules "^1.0.0" - read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" @@ -7410,13 +7330,7 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" -read@1, read@~1.0.1, read@~1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" - dependencies: - mute-stream "~0.0.4" - -"readable-stream@1 || 2", readable-stream@^2, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.6: +readable-stream@^2, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.6: version "2.3.3" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" dependencies: @@ -7437,7 +7351,7 @@ readable-stream@~1.0.2: isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@~2.0.0, readable-stream@~2.0.5: +readable-stream@~2.0.0: version "2.0.6" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e" dependencies: @@ -7448,27 +7362,6 @@ readable-stream@~2.0.0, readable-stream@~2.0.5: string_decoder "~0.10.x" util-deprecate "~1.0.1" -readable-stream@~2.1.5: - version "2.1.5" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0" - dependencies: - buffer-shims "^1.0.0" - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - string_decoder "~0.10.x" - util-deprecate "~1.0.1" - -readdir-scoped-modules@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.0.2.tgz#9fafa37d286be5d92cbaebdee030dc9b5f406747" - dependencies: - debuglog "^1.0.1" - dezalgo "^1.0.0" - graceful-fs "^4.1.2" - once "^1.3.0" - readdirp@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" @@ -7486,13 +7379,6 @@ readline2@^1.0.1: is-fullwidth-code-point "^1.0.0" mute-stream "0.0.5" -realize-package-specifier@~3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/realize-package-specifier/-/realize-package-specifier-3.0.3.tgz#d0def882952b8de3f67eba5e91199661271f41f4" - dependencies: - dezalgo "^1.0.1" - npm-package-arg "^4.1.1" - recast@0.10.33: version "0.10.33" resolved "https://registry.yarnpkg.com/recast/-/recast-0.10.33.tgz#942808f7aa016f1fa7142c461d7e5704aaa8d697" @@ -7520,6 +7406,16 @@ recast@^0.11.17, recast@^0.11.3: private "~0.1.5" source-map "~0.5.0" +recast@^0.12.0: + version "0.12.6" + resolved "https://registry.yarnpkg.com/recast/-/recast-0.12.6.tgz#4b0fb82feb1d10b3bd62d34943426d9b3ed30d4c" + dependencies: + ast-types "0.9.11" + core-js "^2.4.1" + esprima "~4.0.0" + private "~0.1.5" + source-map "~0.5.0" + rechoir@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" @@ -7533,15 +7429,15 @@ redent@^1.0.0: indent-string "^2.1.0" strip-indent "^1.0.1" -redeyed@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/redeyed/-/redeyed-0.5.0.tgz#7ab000e60ee3875ac115d29edb32c1403c6c25d1" +redeyed@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/redeyed/-/redeyed-1.0.1.tgz#e96c193b40c0816b00aec842698e61185e55498a" dependencies: - esprima-fb "~12001.1.0-dev-harmony-fb" + esprima "~3.0.0" regenerate@^1.2.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" + version "1.3.3" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f" regenerator-runtime@^0.10.5: version "0.10.5" @@ -7580,6 +7476,12 @@ regex-cache@^0.4.2: dependencies: is-equal-shallow "^0.1.3" +regex-not@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.0.tgz#42f83e39771622df826b02af176525d6a5f157f9" + dependencies: + extend-shallow "^2.0.1" + regexpu-core@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" @@ -7616,7 +7518,7 @@ repeat-element@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" -repeat-string@^1.5.2: +repeat-string@^1.5.2, repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" @@ -7638,18 +7540,45 @@ request-progress@~2.0.1: dependencies: throttleit "^1.0.0" -request@2, request@^2.74.0, request@^2.79.0, request@^2.81.0: - version "2.81.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" +request@2, request@^2.79.0: + version "2.83.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356" + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.6.0" + caseless "~0.12.0" + combined-stream "~1.0.5" + extend "~3.0.1" + forever-agent "~0.6.1" + form-data "~2.3.1" + har-validator "~5.0.3" + hawk "~6.0.2" + http-signature "~1.2.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.17" + oauth-sign "~0.8.2" + performance-now "^2.1.0" + qs "~6.5.1" + safe-buffer "^5.1.1" + stringstream "~0.0.5" + tough-cookie "~2.3.3" + tunnel-agent "^0.6.0" + uuid "^3.1.0" + +request@2.79.0, request@~2.79.0: + version "2.79.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" dependencies: aws-sign2 "~0.6.0" aws4 "^1.2.1" - caseless "~0.12.0" + caseless "~0.11.0" combined-stream "~1.0.5" extend "~3.0.0" forever-agent "~0.6.1" form-data "~2.1.1" - har-validator "~4.2.1" + har-validator "~2.0.6" hawk "~3.1.3" http-signature "~1.1.0" is-typedarray "~1.0.0" @@ -7657,26 +7586,24 @@ request@2, request@^2.74.0, request@^2.79.0, request@^2.81.0: json-stringify-safe "~5.0.1" mime-types "~2.1.7" oauth-sign "~0.8.1" - performance-now "^0.2.0" - qs "~6.4.0" - safe-buffer "^5.0.1" + qs "~6.3.0" stringstream "~0.0.4" tough-cookie "~2.3.0" - tunnel-agent "^0.6.0" + tunnel-agent "~0.4.1" uuid "^3.0.0" -request@2.79.0, request@~2.79.0: - version "2.79.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" +request@2.81.0: + version "2.81.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" dependencies: aws-sign2 "~0.6.0" aws4 "^1.2.1" - caseless "~0.11.0" + caseless "~0.12.0" combined-stream "~1.0.5" extend "~3.0.0" forever-agent "~0.6.1" form-data "~2.1.1" - har-validator "~2.0.6" + har-validator "~4.2.1" hawk "~3.1.3" http-signature "~1.1.0" is-typedarray "~1.0.0" @@ -7684,10 +7611,12 @@ request@2.79.0, request@~2.79.0: json-stringify-safe "~5.0.1" mime-types "~2.1.7" oauth-sign "~0.8.1" - qs "~6.3.0" + performance-now "^0.2.0" + qs "~6.4.0" + safe-buffer "^5.0.1" stringstream "~0.0.4" tough-cookie "~2.3.0" - tunnel-agent "~0.4.1" + tunnel-agent "^0.6.0" uuid "^3.0.0" request@~2.40.0: @@ -7709,32 +7638,6 @@ request@~2.40.0: tough-cookie ">=0.12.0" tunnel-agent "~0.4.0" -request@~2.74.0: - version "2.74.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.74.0.tgz#7693ca768bbb0ea5c8ce08c084a45efa05b892ab" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - bl "~1.1.2" - caseless "~0.11.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~1.0.0-rc4" - har-validator "~2.0.6" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - node-uuid "~1.4.7" - oauth-sign "~0.8.1" - qs "~6.2.0" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "~0.4.1" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -7761,10 +7664,21 @@ resolve-dir@^0.1.0: expand-tilde "^1.2.2" global-modules "^0.2.3" +resolve-dir@^1.0.0, resolve-dir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" + dependencies: + expand-tilde "^2.0.0" + global-modules "^1.0.0" + resolve-from@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + resolve@0.6.x: version "0.6.3" resolved "https://registry.yarnpkg.com/resolve/-/resolve-0.6.3.tgz#dd957982e7e736debdf53b58a4dd91754575dd46" @@ -7779,7 +7693,7 @@ resolve@1.3.2: dependencies: path-parse "^1.0.5" -resolve@^1.1.2, resolve@^1.1.3, resolve@^1.1.4, resolve@^1.1.6, resolve@^1.1.7, resolve@^1.3.2, resolve@^1.3.3, resolve@^1.4.0, resolve@~1.4.0: +resolve@^1.1.2, resolve@^1.1.3, resolve@^1.1.4, resolve@^1.1.6, resolve@^1.3.0, resolve@^1.3.2, resolve@^1.3.3, resolve@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.4.0.tgz#a75be01c53da25d934a98ebd0e4c4a7312f92a86" dependencies: @@ -7792,23 +7706,13 @@ restore-cursor@^1.0.1: exit-hook "^1.0.0" onetime "^1.0.0" -resumer@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/resumer/-/resumer-0.0.0.tgz#f1e8f461e4064ba39e82af3cdc2a8c893d076759" - dependencies: - through "~2.3.4" - -retry@^0.10.0, retry@~0.10.0: - version "0.10.1" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" - right-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" dependencies: align-text "^0.1.1" -rimraf@2, rimraf@^2.2.8, rimraf@^2.3.2, rimraf@^2.3.4, rimraf@^2.4.1, rimraf@^2.4.3, rimraf@^2.4.4, rimraf@^2.5.1, rimraf@^2.5.2, rimraf@^2.5.3, rimraf@^2.5.4, rimraf@^2.6.1: +rimraf@2, rimraf@^2.2.8, rimraf@^2.3.2, rimraf@^2.3.4, rimraf@^2.4.1, rimraf@^2.4.3, rimraf@^2.4.4, rimraf@^2.5.1, rimraf@^2.5.3, rimraf@^2.5.4, rimraf@^2.6.1: version "2.6.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" dependencies: @@ -7818,12 +7722,6 @@ rimraf@~2.2.6, rimraf@~2.2.8: version "2.2.8" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" -rimraf@~2.5.4: - version "2.5.4" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.5.4.tgz#96800093cbf1a0c86bd95b4625467535c29dfa04" - dependencies: - glob "^7.0.5" - ripemd160@^2.0.0, ripemd160@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" @@ -7839,6 +7737,10 @@ rsvp@^3.0.14, rsvp@^3.0.16, rsvp@^3.0.17, rsvp@^3.0.18, rsvp@^3.0.21, rsvp@^3.0. version "3.6.2" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.6.2.tgz#2e96491599a96cde1b515d5674a8f7a91452926a" +rsvp@^4.0.1: + version "4.7.0" + resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.7.0.tgz#dc1b0b1a536f7dec9d2be45e0a12ad4197c9fd96" + rsvp@~3.0.6: version "3.0.21" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.0.21.tgz#49c588fe18ef293bcd0ab9f4e6756e6ac433359f" @@ -7876,10 +7778,10 @@ safe-json-parse@~1.0.1: resolved "https://registry.yarnpkg.com/safe-json-parse/-/safe-json-parse-1.0.1.tgz#3e76723e38dfdda13c9b1d29a1e07ffee4b30b57" samsam@1.x, samsam@^1.1.3: - version "1.2.1" - resolved "https://registry.yarnpkg.com/samsam/-/samsam-1.2.1.tgz#edd39093a3184370cb859243b2bdf255e7d8ea67" + version "1.3.0" + resolved "https://registry.yarnpkg.com/samsam/-/samsam-1.3.0.tgz#8d1d9350e25622da30de3e44ba692b5221ab7c50" -sane@^1.1.1: +sane@^1.1.1, sane@^1.6.0: version "1.7.0" resolved "https://registry.yarnpkg.com/sane/-/sane-1.7.0.tgz#b3579bccb45c94cf20355cc81124990dfd346e30" dependencies: @@ -7907,7 +7809,7 @@ scss-tokenizer@^0.2.3: js-base64 "^2.1.8" source-map "^0.4.2" -"semver@2 >=2.2.1 || 3.x || 4 || 5", "semver@2 || 3 || 4 || 5", "semver@2.x || 3.x || 4 || 5", "semver@^2.3.0 || 3.x || 4 || 5", semver@^5.1.0, semver@^5.1.1, semver@^5.3.0: +"semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.1.1, semver@^5.3.0: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" @@ -7919,57 +7821,79 @@ semver@~5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" -send@0.15.4: - version "0.15.4" - resolved "https://registry.yarnpkg.com/send/-/send-0.15.4.tgz#985faa3e284b0273c793364a35c6737bd93905b9" +send@0.16.1: + version "0.16.1" + resolved "https://registry.yarnpkg.com/send/-/send-0.16.1.tgz#a70e1ca21d1382c11d0d9f6231deb281080d7ab3" dependencies: - debug "2.6.8" + debug "2.6.9" depd "~1.1.1" destroy "~1.0.4" encodeurl "~1.0.1" escape-html "~1.0.3" - etag "~1.8.0" - fresh "0.5.0" + etag "~1.8.1" + fresh "0.5.2" http-errors "~1.6.2" - mime "1.3.4" + mime "1.4.1" ms "2.0.0" on-finished "~2.3.0" range-parser "~1.2.0" statuses "~1.3.1" -serve-static@1.12.4: - version "1.12.4" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.12.4.tgz#9b6aa98eeb7253c4eedc4c1f6fdbca609901a961" +serve-static@1.13.1: + version "1.13.1" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.1.tgz#4c57d53404a761d8f2e7c1e8a18a47dbf278a719" dependencies: encodeurl "~1.0.1" escape-html "~1.0.3" - parseurl "~1.3.1" - send "0.15.4" + parseurl "~1.3.2" + send "0.16.1" set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" +set-getter@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/set-getter/-/set-getter-0.1.0.tgz#d769c182c9d5a51f409145f2fba82e5e86e80376" + dependencies: + to-object-path "^0.3.0" + set-immediate-shim@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" +set-value@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.1" + to-object-path "^0.3.0" + +set-value@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + setprototypeof@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" +setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + sha.js@^2.4.0, sha.js@^2.4.8, sha.js@~2.4.4: - version "2.4.8" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.8.tgz#37068c2c476b6baf402d14a49c67f597921f634f" + version "2.4.9" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.9.tgz#98f64880474b74f4a38b8da9d3c0f2d104633e7d" dependencies: inherits "^2.0.1" - -sha@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/sha/-/sha-2.0.1.tgz#6030822fbd2c9823949f8f72ed6411ee5cf25aae" - dependencies: - graceful-fs "^4.1.2" - readable-stream "^2.0.2" + safe-buffer "^5.0.1" shasum@^1.0.0: version "1.0.2" @@ -8013,7 +7937,7 @@ sigmund@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" -signal-exit@^3.0.0: +signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" @@ -8060,9 +7984,32 @@ slice-ansi@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" -slide@^1.1.3, slide@^1.1.5, slide@~1.1.3, slide@~1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.1.tgz#e12b5487faded3e3dea0ac91e9400bf75b401370" + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^2.0.0" sntp@0.2.x: version "0.2.4" @@ -8076,6 +8023,12 @@ sntp@1.x.x: dependencies: hoek "2.x.x" +sntp@2.x.x: + version "2.0.2" + resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.0.2.tgz#5064110f0af85f7cfdb7d6b67a40028ce52b4b2b" + dependencies: + hoek "4.x.x" + socket.io-adapter@0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-0.5.0.tgz#cb6d4bb8bec81e1078b99677f9ced0046066bb8b" @@ -8130,9 +8083,14 @@ sort-package-json@^1.4.0: dependencies: sort-object-keys "^1.1.1" -sorted-object@~2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/sorted-object/-/sorted-object-2.0.1.tgz#7d631f4bd3a798a24af1dffcfbfe83337a5df5fc" +source-map-resolve@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.0.tgz#fcad0b64b70afb27699e425950cb5ebcd410bc20" + dependencies: + atob "^2.0.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" source-map-support@^0.2.10: version "0.2.10" @@ -8150,6 +8108,10 @@ source-map-url@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.3.0.tgz#7ecaf13b57bcd09da8a40c5d269db33799d4aaf9" +source-map-url@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" + source-map@0.1.32: version "0.1.32" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.32.tgz#c8b6c167797ba4740a8ea33252162ff08591b266" @@ -8226,6 +8188,18 @@ spdx-license-ids@^1.0.2: version "1.2.2" resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" +split-string@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-2.1.1.tgz#af4b06d821560426446c3cd931cda618940d37d0" + dependencies: + extend-shallow "^2.0.1" + +split-string@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.0.2.tgz#6129bc92731716e5aa1fb73c333078f0b7c114c8" + dependencies: + extend-shallow "^2.0.1" + sprintf-js@^1.0.3: version "1.1.1" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.1.tgz#36be78320afe5801f6cea3ee78b6e5aab940ea0c" @@ -8256,6 +8230,13 @@ stable@~0.1.3: version "0.1.6" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.6.tgz#910f5d2aed7b520c6e777499c1f32e139fdecb10" +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + "statuses@>= 1.3.1 < 2", statuses@~1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" @@ -8320,14 +8301,6 @@ string.prototype.startswith@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/string.prototype.startswith/-/string.prototype.startswith-0.2.0.tgz#da68982e353a4e9ac4a43b450a2045d1c445ae7b" -string.prototype.trim@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz#d04de2c89e137f4d7d206f086b5ed2fae6be8cea" - dependencies: - define-properties "^1.1.2" - es-abstract "^1.5.0" - function-bind "^1.0.2" - string_decoder@0.10, string_decoder@~0.10.0, string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" @@ -8346,7 +8319,7 @@ stringset@~0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/stringset/-/stringset-0.2.1.tgz#ef259c4e349344377fcd1c913dd2e848c9c042b5" -stringstream@~0.0.4: +stringstream@~0.0.4, stringstream@~0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" @@ -8356,7 +8329,7 @@ strip-ansi@^0.3.0: dependencies: ansi-regex "^0.2.1" -strip-ansi@^3.0.0, strip-ansi@^3.0.1, strip-ansi@~3.0.1: +strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" dependencies: @@ -8422,6 +8395,12 @@ supports-color@^3.1.0: dependencies: has-flag "^1.0.0" +supports-color@^4.0.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" + dependencies: + has-flag "^2.0.0" + symlink-or-copy@^1.0.0, symlink-or-copy@^1.0.1, symlink-or-copy@^1.1.8: version "1.1.8" resolved "https://registry.yarnpkg.com/symlink-or-copy/-/symlink-or-copy-1.1.8.tgz#cabe61e0010c1c023c173b25ee5108b37f4b4aa3" @@ -8452,24 +8431,6 @@ tap-parser@^5.1.0: optionalDependencies: readable-stream "^2" -tape@^4.6.3: - version "4.8.0" - resolved "https://registry.yarnpkg.com/tape/-/tape-4.8.0.tgz#f6a9fec41cc50a1de50fa33603ab580991f6068e" - dependencies: - deep-equal "~1.0.1" - defined "~1.0.0" - for-each "~0.3.2" - function-bind "~1.1.0" - glob "~7.1.2" - has "~1.0.1" - inherits "~2.0.3" - minimist "~1.2.0" - object-inspect "~1.3.0" - resolve "~1.4.0" - resumer "~0.0.0" - string.prototype.trim "~1.1.2" - through "~2.3.8" - tar-pack@^3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984" @@ -8483,7 +8444,7 @@ tar-pack@^3.4.0: tar "^2.2.1" uid-number "^0.0.6" -tar@^2.0.0, tar@^2.2.1, tar@~2.2.1: +tar@^2.0.0, tar@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" dependencies: @@ -8498,7 +8459,7 @@ temp@0.8.3: os-tmpdir "^1.0.0" rimraf "~2.2.6" -testem@^1.8.1: +testem@^1.18.0: version "1.18.4" resolved "https://registry.yarnpkg.com/testem/-/testem-1.18.4.tgz#e45fed922bec2f54a616c43f11922598ac97eb41" dependencies: @@ -8552,7 +8513,7 @@ through2@^2.0.0: readable-stream "^2.1.5" xtend "~4.0.1" -"through@>=2.2.7 <3", through@^2.3.6, through@^2.3.8, through@~2.3.4, through@~2.3.8: +"through@>=2.2.7 <3", through@^2.3.6, through@^2.3.8, through@~2.3.8: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" @@ -8601,9 +8562,30 @@ to-fast-properties@^1.0.0, to-fast-properties@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" -tough-cookie@>=0.12.0, tough-cookie@~2.3.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + +to-regex@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.1.tgz#15358bee4a2c83bd76377ba1dc049d0f18837aae" + dependencies: + define-property "^0.2.5" + extend-shallow "^2.0.1" + regex-not "^1.0.0" + +tough-cookie@>=0.12.0, tough-cookie@~2.3.0, tough-cookie@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561" dependencies: punycode "^1.4.1" @@ -8611,7 +8593,7 @@ tracejs@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/tracejs/-/tracejs-0.1.8.tgz#6c26787b1853f1371634622c1c80bc44026c5d70" -tree-sync@^1.1.4, tree-sync@^1.2.2: +tree-sync@^1.2.1, tree-sync@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/tree-sync/-/tree-sync-1.2.2.tgz#2cf76b8589f59ffedb58db5a3ac7cb013d0158b7" dependencies: @@ -8714,7 +8696,7 @@ uglify-to-browserify@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" -uid-number@0.0.6, uid-number@^0.0.6: +uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" @@ -8722,18 +8704,10 @@ ultron@1.0.x: version "1.0.2" resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" -umask@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" - umd@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/umd/-/umd-3.0.1.tgz#8ae556e11011f63c2596708a8837259f01b3d60e" -underscore.string@~2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-2.3.3.tgz#71c08bf6b428b1133f37e78fa3a21c82f7329b0d" - underscore.string@~3.3.4: version "3.3.4" resolved "https://registry.yarnpkg.com/underscore.string/-/underscore.string-3.3.4.tgz#2c2a3f9f83e64762fdc45e6ceac65142864213db" @@ -8745,28 +8719,46 @@ underscore@>=1.8.3, underscore@^1.6.0: version "1.8.3" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.8.3.tgz#4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022" -unique-filename@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.0.tgz#d05f2fe4032560871f30e93cbe735eea201514f3" +union-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" dependencies: - unique-slug "^2.0.0" + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^0.4.3" -unique-slug@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.0.tgz#db6676e7c7cc0629878ff196097c78855ae9f4ab" +unique-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" dependencies: - imurmurhash "^0.1.4" + crypto-random-string "^1.0.0" + +universalify@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.1.tgz#fa71badd4437af4c148841e3b3b165f9e9e590b7" unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + untildify@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/untildify/-/untildify-2.1.0.tgz#17eb2807987f76952e9c0485fc311d06a826a2e0" dependencies: os-homedir "^1.0.0" +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + url@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" @@ -8774,6 +8766,14 @@ url@~0.11.0: punycode "1.3.2" querystring "0.2.0" +use@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/use/-/use-2.0.2.tgz#ae28a0d72f93bf22422a18a2e379993112dec8e8" + dependencies: + define-property "^0.2.5" + isobject "^3.0.0" + lazy-cache "^2.0.2" + user-home@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" @@ -8792,25 +8792,17 @@ util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" -util-extend@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/util-extend/-/util-extend-1.0.3.tgz#a7c216d267545169637b3b6edc6ca9119e2ff93f" - util@0.10.3, util@~0.10.1: version "0.10.3" resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" dependencies: inherits "2.0.1" -utils-merge@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" - -uuid@^2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" -uuid@^3.0.0: +uuid@^3.0.0, uuid@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" @@ -8827,15 +8819,9 @@ validate-npm-package-name@^3.0.0: dependencies: builtins "^1.0.3" -validate-npm-package-name@~2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-2.2.2.tgz#f65695b22f7324442019a3c7fa39a6e7fd299085" - dependencies: - builtins "0.0.7" - -vary@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.1.tgz#67535ebb694c1d52257457984665323f587e8d37" +vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" verror@1.10.0: version "1.10.0" @@ -8886,12 +8872,6 @@ watch@~0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/watch/-/watch-0.10.0.tgz#77798b2da0f9910d595f1ace5b0c2258521f21dc" -wcwidth@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" - dependencies: - defaults "^1.0.3" - websocket-driver@>=0.5.1: version "0.7.0" resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" @@ -8911,7 +8891,7 @@ which-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" -which@1, which@^1.1.1, which@^1.2.12, which@^1.2.8, which@^1.2.9: +which@1, which@^1.1.1, which@^1.2.12, which@^1.2.14, which@^1.2.9: version "1.3.0" resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" dependencies: @@ -8921,7 +8901,7 @@ which@1.0.x: version "1.0.9" resolved "https://registry.yarnpkg.com/which/-/which-1.0.9.tgz#460c1da0f810103d0321a9b633af9e575e64486f" -which@~1.2.10, which@~1.2.11: +which@~1.2.10: version "1.2.14" resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" dependencies: @@ -8954,8 +8934,8 @@ wordwrap@^1.0.0, wordwrap@~1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" workerpool@^2.2.1: - version "2.2.4" - resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-2.2.4.tgz#c9dbe01e103e92df0e8f55356fc860135fbd43b0" + version "2.3.0" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-2.3.0.tgz#86c5cbe946b55e7dc9d12b1936c8801a6e2d744d" dependencies: object-assign "4.1.1" @@ -8966,25 +8946,17 @@ wrap-ansi@^2.0.0: string-width "^1.0.1" strip-ansi "^3.0.1" -wrappy@1, wrappy@~1.0.2: +wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" -write-file-atomic@^1.1.2: - version "1.3.4" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-1.3.4.tgz#f807a4f0b1d9e913ae7a48112e6cc3af1991b45f" +write-file-atomic@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" dependencies: graceful-fs "^4.1.11" imurmurhash "^0.1.4" - slide "^1.1.5" - -write-file-atomic@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-1.2.0.tgz#14c66d4e4cb3ca0565c28cf3b7a6f3e4d5938fab" - dependencies: - graceful-fs "^4.1.2" - imurmurhash "^0.1.4" - slide "^1.1.5" + signal-exit "^3.0.2" write@^0.2.1: version "0.2.1" @@ -9003,11 +8975,9 @@ wtf-8@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wtf-8/-/wtf-8-1.0.0.tgz#392d8ba2d0f1c34d1ee2d630f15d0efb68e1048a" -xdg-basedir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-2.0.0.tgz#edbc903cc385fc04523d966a335504b5504d1bd2" - dependencies: - os-homedir "^1.0.0" +xdg-basedir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" xmldom@^0.1.19: version "0.1.27" From 56680df3650a2162cc38f6b329ce90504ad48f21 Mon Sep 17 00:00:00 2001 From: Lauren Barker Date: Mon, 2 Oct 2017 11:34:35 -0400 Subject: [PATCH 22/44] Wait for currentUser.user to resolve (#9) --- tests/unit/helpers/build-secondary-nav-links-test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/unit/helpers/build-secondary-nav-links-test.js b/tests/unit/helpers/build-secondary-nav-links-test.js index 6d1789662..7b4a1740c 100644 --- a/tests/unit/helpers/build-secondary-nav-links-test.js +++ b/tests/unit/helpers/build-secondary-nav-links-test.js @@ -79,7 +79,7 @@ test('returns home service links, authenticated', function(assert) { test('returns home service links, unauthenticated', function(assert) { - this.register('service:session', sessionStubUnauthenticated); + this.register('service:session', sessionStubUnauthenticated); this.inject.service('session', { as: 'sessionStub' }); this.set('currentService', 'HOME'); this.render(hbs` From 5eccd081f11e3721a4b785a1036f5af34196bf6d Mon Sep 17 00:00:00 2001 From: Abram Booth Date: Thu, 5 Oct 2017 15:47:59 -0400 Subject: [PATCH 23/44] Update ember-data-has-many-query dependency --- yarn.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yarn.lock b/yarn.lock index c0054af65..1a1fc7771 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3290,7 +3290,7 @@ ember-data-factory-guy@2.11.7: "ember-data-has-many-query@https://github.com/cos-forks/ember-data-has-many-query#master": version "0.2.0" - resolved "https://github.com/cos-forks/ember-data-has-many-query#7e41ea918af97d174526f9468dd29a47ad0eff5c" + resolved "https://github.com/cos-forks/ember-data-has-many-query#cc586f54606d167dc53e3f85d131231d572d9745" dependencies: ember-cli-babel "^5.1.6" From 6f49fc99d8756fd664484e4c6faac2b862cb54e0 Mon Sep 17 00:00:00 2001 From: Abram Booth Date: Fri, 6 Oct 2017 11:36:56 -0400 Subject: [PATCH 24/44] Revert to non-forked ember-data-has-many-query --- package.json | 2 +- yarn.lock | 55 +++++++++++++++++++++++++++------------------------- 2 files changed, 30 insertions(+), 27 deletions(-) diff --git a/package.json b/package.json index 7d8ed562f..228263cbd 100644 --- a/package.json +++ b/package.json @@ -91,7 +91,7 @@ "ember-cli-moment-shim": "^3.3.1", "ember-cli-node-assets": "0.1.6", "ember-cli-shims": "1.0.2", - "ember-data-has-many-query": "https://github.com/cos-forks/ember-data-has-many-query#master", + "ember-data-has-many-query": "^0.2.0", "ember-get-config": "0.2.1", "ember-i18n": "5.0.1", "ember-moment": "7.3.1", diff --git a/yarn.lock b/yarn.lock index 1a1fc7771..64ffd7d8a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -122,6 +122,10 @@ ansi-escapes@^1.1.0: version "1.4.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" +ansi-regex@*, ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + ansi-regex@^0.2.0, ansi-regex@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-0.2.1.tgz#0d8e946967a3d8143f93e24e298525fc1b2235f9" @@ -130,10 +134,6 @@ ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - ansi-styles@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.1.0.tgz#eaecbf66cd706882760b2f4691582b8f55d7a7de" @@ -1384,7 +1384,7 @@ broccoli-funnel-reducer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/broccoli-funnel-reducer/-/broccoli-funnel-reducer-1.0.0.tgz#11365b2a785aec9b17972a36df87eef24c5cc0ea" -broccoli-funnel@1.2.0, broccoli-funnel@^1.0.0, broccoli-funnel@^1.0.1, broccoli-funnel@^1.0.2, broccoli-funnel@^1.0.6, broccoli-funnel@^1.0.7, broccoli-funnel@^1.1.0, broccoli-funnel@^1.2.0: +broccoli-funnel@1.2.0, broccoli-funnel@^1.0.0, broccoli-funnel@^1.0.1, broccoli-funnel@^1.0.2, broccoli-funnel@^1.0.6, broccoli-funnel@^1.1.0, broccoli-funnel@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/broccoli-funnel/-/broccoli-funnel-1.2.0.tgz#cddc3afc5ff1685a8023488fff74ce6fb5a51296" dependencies: @@ -2486,7 +2486,7 @@ debug@2.6.8, debug@^2.1.0, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0, debug@^2.4. dependencies: ms "2.0.0" -debuglog@^1.0.1: +debuglog@*, debuglog@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" @@ -2712,17 +2712,6 @@ ember-a11y-testing@^0.4.2: ember-cli-babel "^5.2.4" ember-cli-version-checker "^1.2.0" -ember-a11y@^0.1.14: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ember-a11y/-/ember-a11y-0.1.15.tgz#10729ec8ebc6183470cf460d9919863f4d499856" - dependencies: - broccoli-funnel "^1.0.7" - broccoli-merge-trees "^1.1.4" - broccoli-string-replace "^0.1.1" - ember-cli-babel "^6.0.0" - ember-cli-version-checker "^1.1.7" - ember-getowner-polyfill "^1.0.1" - ember-ajax@2.5.6: version "2.5.6" resolved "https://registry.yarnpkg.com/ember-ajax/-/ember-ajax-2.5.6.tgz#a75f743ccf1b95e979a5cf96013b3dba8fa625e4" @@ -3288,9 +3277,9 @@ ember-data-factory-guy@2.11.7: broccoli-funnel "^1.0.1" broccoli-merge-trees "^1.1.1" -"ember-data-has-many-query@https://github.com/cos-forks/ember-data-has-many-query#master": +ember-data-has-many-query@^0.2.0: version "0.2.0" - resolved "https://github.com/cos-forks/ember-data-has-many-query#cc586f54606d167dc53e3f85d131231d572d9745" + resolved "https://registry.yarnpkg.com/ember-data-has-many-query/-/ember-data-has-many-query-0.2.0.tgz#97ae2c29d6d7f77d3837cca9f165c26bf6e6fb0a" dependencies: ember-cli-babel "^5.1.6" @@ -3378,7 +3367,7 @@ ember-get-config@0.2.1: broccoli-file-creator "^1.1.1" ember-cli-babel "^5.1.6" -ember-getowner-polyfill@^1.0.0, ember-getowner-polyfill@^1.0.1, ember-getowner-polyfill@^1.1.0, ember-getowner-polyfill@^1.2.2: +ember-getowner-polyfill@^1.0.0, ember-getowner-polyfill@^1.1.0, ember-getowner-polyfill@^1.2.2: version "1.2.5" resolved "https://registry.yarnpkg.com/ember-getowner-polyfill/-/ember-getowner-polyfill-1.2.5.tgz#ceff8a09897d0d7e05c821bb71666a95eb26dc92" dependencies: @@ -4993,7 +4982,7 @@ ignore@^3.2.0: version "3.3.5" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.5.tgz#c4e715455f6073a8d7e5dae72d2fc9d71663dba6" -imurmurhash@^0.1.4: +imurmurhash@*, imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" @@ -5733,6 +5722,10 @@ lodash._basefor@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash._basefor/-/lodash._basefor-3.0.3.tgz#7550b4e9218ef09fad24343b612021c79b4c20c2" +lodash._baseindexof@*: + version "3.1.0" + resolved "https://registry.yarnpkg.com/lodash._baseindexof/-/lodash._baseindexof-3.1.0.tgz#fe52b53a1c6761e42618d654e4a25789ed61822c" + lodash._basetostring@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5" @@ -5748,10 +5741,14 @@ lodash._basevalues@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7" -lodash._bindcallback@^3.0.0: +lodash._bindcallback@*, lodash._bindcallback@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e" +lodash._cacheindexof@*: + version "3.0.2" + resolved "https://registry.yarnpkg.com/lodash._cacheindexof/-/lodash._cacheindexof-3.0.2.tgz#3dc69ac82498d2ee5e3ce56091bafd2adc7bde92" + lodash._createassigner@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz#838a5bae2fdaca63ac22dee8e19fa4e6d6970b11" @@ -5760,6 +5757,12 @@ lodash._createassigner@^3.0.0: lodash._isiterateecall "^3.0.0" lodash.restparam "^3.0.0" +lodash._createcache@*: + version "3.1.2" + resolved "https://registry.yarnpkg.com/lodash._createcache/-/lodash._createcache-3.1.2.tgz#56d6a064017625e79ebca6b8018e17440bdcf093" + dependencies: + lodash._getnative "^3.0.0" + lodash._createset@~4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/lodash._createset/-/lodash._createset-4.0.3.tgz#0f4659fbb09d75194fa9e2b88a6644d363c9fe26" @@ -5782,7 +5785,7 @@ lodash._escapestringchar@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/lodash._escapestringchar/-/lodash._escapestringchar-2.3.0.tgz#cce73ae60fc6da55d2bf8a0679c23ca2bab149fc" -lodash._getnative@^3.0.0: +lodash._getnative@*, lodash._getnative@^3.0.0: version "3.9.1" resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" @@ -6020,7 +6023,7 @@ lodash.omit@^4.1.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.omit/-/lodash.omit-4.5.0.tgz#6eb19ae5a1ee1dd9df0b969e66ce0b7fa30b5e60" -lodash.restparam@^3.0.0: +lodash.restparam@*, lodash.restparam@^3.0.0: version "3.6.1" resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" @@ -7460,7 +7463,7 @@ readable-stream@~2.1.5: string_decoder "~0.10.x" util-deprecate "~1.0.1" -readdir-scoped-modules@^1.0.0: +readdir-scoped-modules@*, readdir-scoped-modules@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.0.2.tgz#9fafa37d286be5d92cbaebdee030dc9b5f406747" dependencies: @@ -8814,7 +8817,7 @@ uuid@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" -validate-npm-package-license@^3.0.1: +validate-npm-package-license@*, validate-npm-package-license@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" dependencies: From e7e565b2f4bb1528a2d7a98d2f3b8d2aff8b6d81 Mon Sep 17 00:00:00 2001 From: Abram Booth Date: Tue, 17 Oct 2017 14:27:03 -0400 Subject: [PATCH 25/44] Update CHANGELOG --- CHANGELOG.md | 28 ++++++++++++++++++++ addon/components/new-osf-navbar/component.js | 4 +-- addon/helpers/build-secondary-nav-links.js | 24 +++++++---------- 3 files changed, 39 insertions(+), 17 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3392a1283..b54876720 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,32 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - updateContents() - file-widget, a file browser widget for quick files - humanFileSize, converting size number to a readable version like 5kB +- `action` model/adapter/serializer + - New model in OSF API corresponding to a user-triggered state transition of an object +- fields on `preprint-provider` model: + - `permissions` + - `reviewsWorkflow` + - `reviewsCommentsPrivate` + - `reviewsCommentsAnonymous` +- properties on `preprint-provider` model: + - `reviewableStatusCounts` +- fields on `preprint` model + - `reviewsState` + - `dateLastTransitioned` + - `actions` + - `contributors` +- properties on `preprint` model + - `uniqueSubjects` + - `articleDoiUrl` + - `preprintDoiUrl` + - `licenseText` +- fields on `user` model: + - `canViewReviews` + - `actions` +- `user` property on `currentUser` service + - Returns a promise proxy object that resolves to the logged-in user or to `null` if no user is logged in +- `loadRelation` function in `utils/load-relationship` + - Like `loadAll`, but returns a promise proxy that resolves to the full array once the relationship is completely fetched ### Changed - Use delete link for delete url, if present @@ -21,6 +47,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - file-browser-item now supports icons for different file extensions - dropzone-widget now has custom dropzone class that extends dropzone functionality to conditionally disallow folders and multiple files from being dropped - 'Search' button in navbar to link to search page +- Consolidate logic for serializing dirty relationships into `osf-serializer` + - Override `relationshipTypes` in a serializer to include `fieldName: 'apiType'` pairs of all relationships which may be included when saving updates ## [0.11.1] - 2017-10-16 ### Changed diff --git a/addon/components/new-osf-navbar/component.js b/addon/components/new-osf-navbar/component.js index d66b46048..1c7838a23 100644 --- a/addon/components/new-osf-navbar/component.js +++ b/addon/components/new-osf-navbar/component.js @@ -27,7 +27,6 @@ export default Ember.Component.extend(hostAppName, AnalyticsMixin, { layout, osfServices, session: Ember.inject.service(), - currentUser: Ember.inject.service(), serviceLinks: serviceLinks, host: config.OSF.url, currentService: Ember.computed('hostAppName', function() { // Pulls current service name from consuming service's config file @@ -40,10 +39,9 @@ export default Ember.Component.extend(hostAppName, AnalyticsMixin, { currentServiceLink: Ember.computed('serviceLinks', 'currentService', function() { const serviceMapping = { HOME: 'osfHome', - MEETINGS: 'meetingsHome', PREPRINTS: 'preprintsHome', REGISTRIES: 'registriesHome', - REVIEWS: 'reviewsHome', + MEETINGS: 'meetingsHome', }; const service = this.get('currentService'); return this.get('serviceLinks')[serviceMapping[service]]; diff --git a/addon/helpers/build-secondary-nav-links.js b/addon/helpers/build-secondary-nav-links.js index a42ac13cc..47ef81b36 100644 --- a/addon/helpers/build-secondary-nav-links.js +++ b/addon/helpers/build-secondary-nav-links.js @@ -19,8 +19,7 @@ export default Ember.Helper.extend({ // Helper defined using a class, so can in currentUser: Ember.inject.service(), compute(params) { // Helpers defined using a class need a compute function const currentService = params[0].toUpperCase(); - const serviceSubmitLink = Ember.isEmpty(params[1]) ? serviceLinks.preprintsSubmit : params[1] + 'submit'; - const serviceDiscoverLink = Ember.isEmpty(params[1]) ? serviceLinks.preprintsDiscover: params[1] + 'discover'; + const baseServiceUrl = params[1]; const session = this.get('session'); let links = Ember.Object.create({ HOME: [ @@ -43,12 +42,12 @@ export default Ember.Helper.extend({ // Helper defined using a class, so can in PREPRINTS: [ { name: 'eosf.navbar.addAPreprint', - href: serviceSubmitLink, + href: Ember.isEmpty(baseServiceUrl) ? serviceLinks.preprintsSubmit : baseServiceUrl + 'submit', type: 'addAPreprint' }, { name: 'eosf.navbar.search', - href: serviceDiscoverLink, + href: Ember.isEmpty(baseServiceUrl) ? serviceLinks.preprintsDiscover : baseServiceUrl + 'discover', type: 'search' }, { @@ -102,16 +101,6 @@ export default Ember.Helper.extend({ // Helper defined using a class, so can in href: serviceLinks.myQuickFiles } ); - } else { - links.HOME.push( - { - name: 'eosf.navbar.support', - href: serviceLinks.osfSupport - } - ); - } - - if (session.get('isAuthenticated')) { this.get('currentUser.user').then((user) => { if (user.get('canViewReviews')) { links.PREPRINTS.insertAt(1, { @@ -120,6 +109,13 @@ export default Ember.Helper.extend({ // Helper defined using a class, so can in }); } }) + } else { + links.HOME.push( + { + name: 'eosf.navbar.support', + href: serviceLinks.osfSupport + } + ); } if (Object.keys(links).includes(currentService)) { From 78e32c46643d70b4f26a738e5e60ee7ef8214389 Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Tue, 28 Nov 2017 14:03:29 -0500 Subject: [PATCH 26/44] Update index.js --- index.js | 79 +++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 56 insertions(+), 23 deletions(-) diff --git a/index.js b/index.js index 876975f35..2c6ab9cc2 100644 --- a/index.js +++ b/index.js @@ -5,6 +5,8 @@ var path = require('path'); var config = require('config'); var Funnel = require('broccoli-funnel'); var BroccoliMergeTrees = require('broccoli-merge-trees'); +var mergeTrees = require('broccoli-merge-trees'); +var compileSass = require('broccoli-sass-source-maps'); // Fetch a list of known backends. The user can always choose to override any of these URLs via ENV vars var knownBackends = require('./config/backends'); @@ -53,6 +55,7 @@ module.exports = { } if (BACKEND === 'local') { + backendUrlConfig.accessToken = eitherConfig('PERSONAL_ACCESS_TOKEN'); backendUrlConfig.isLocal = true; if (eitherConfig('PERSONAL_ACCESS_TOKEN')) { backendUrlConfig.accessToken = eitherConfig('PERSONAL_ACCESS_TOKEN'); @@ -86,31 +89,23 @@ module.exports = { authenticator: `authenticator:osf-${defaultAuthorizationType}` }; }, - - // Needed to make Ember CLI SASS happy - // https://github.com/aexmachina/ember-cli-sass#addon-usage - included: function(/* app */) { - this._super.included.apply(this, arguments); + afterInstall: function(options) { + if (options['ember-osf'].includeStyles) { + this.addAddonToProject('ember-font-awesome'); + } }, + included: function(app) { + // Documentation of the `included` hook is mostly in the comment + // threads of `ember-cli` issues on github. For example: + // https://github.com/ember-cli/ember-cli/issues/3531#issuecomment-81133458 + this._super.included.apply(this, arguments); - // TODO Filter out unused components and junk - // https://github.com/kaliber5/ember-bootstrap/blob/master/index.js#L221 - // treeForAddon: function(tree) { - // tree = this._super.treeForAddon.apply(this, arguments); - // return tree; - // }, - - // Outputs all pod scss files into the addon style tree. - // This allows the addon to build by itself - treeForAddonStyles: function(tree) { - let addonPodStyles = new Funnel(this._treePathFor('addon'), { - annotation: 'Ember OSF Addon Pod Styles', - include: ['components/**/*.scss'], - }); - - return new BroccoliMergeTrees([tree, addonPodStyles, this._bootstrapStyles()], { - annotation: 'Ember OSF Merged Styles' - }); + if (app.options['ember-osf'] && app.options['ember-osf'].includeStyles) { + app.options['ember-font-awesome'] = { + useScss: true + }; + } + return app; }, // Outputs all pod scss files into the style tree but prefixed with ember-osf @@ -138,5 +133,43 @@ module.exports = { annotation: 'Ember OSF Boostrap SASS', include: ['**/*.scss'], }); + }, + treeForAddon: function(tree) { + this.addonTree = tree; + return this._super.treeForAddon.apply(this, arguments); + }, + // Outputs all pod scss files into the addon style tree. + // This allows the addon to build by itself + treeForAddonStyles: function(tree) { + let addonPodStyles = new Funnel(this._treePathFor('addon'), { + annotation: 'Ember OSF Addon Pod Styles', + include: ['components/**/*.scss'], + }); + + return new BroccoliMergeTrees([tree, addonPodStyles, this._bootstrapStyles()], { + annotation: 'Ember OSF Merged Styles' + }); + }, + treeForVendor: function(tree) { + var addonStyleTree = this._treeFor('addon-styles'); + var addonPodStyles = new Funnel(path.resolve(this.root, 'addon'), { + include: [ + 'components/**/*css' + ] + }); + var addonCss = compileSass( + [addonStyleTree, addonPodStyles], + 'addon.scss', + 'assets/ember-osf.css', + { + annotation: 'EmberOsf Sass Tree' + }); + return mergeTrees([tree, addonCss].filter(Boolean)); + }, + treeForPublic() { + var assetDir = path.join(path.resolve(this.root, ''), 'addon/assets'); + return new Funnel(assetDir, { + destDir: 'assets/' + }); } }; From 1068a8a2559200f3d88ca2f71f603f94965e36e8 Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Tue, 28 Nov 2017 14:44:24 -0500 Subject: [PATCH 27/44] update ember-cli-build.js --- ember-cli-build.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ember-cli-build.js b/ember-cli-build.js index 7675f5f38..9558f4fa1 100644 --- a/ember-cli-build.js +++ b/ember-cli-build.js @@ -11,6 +11,8 @@ module.exports = function(defaults) { 'bower_components/osf-style/sass', 'node_modules/bootstrap-sass/assets/stylesheets', 'tests/dummy/app/components', + 'bower_components/c3', + 'bower_components/bootstrap-daterangepicker', ] }, // FIXME @@ -30,8 +32,8 @@ module.exports = function(defaults) { 'ember-bootstrap': { bootstrapVersion: 3, - importBootstrapCSS: false, importBootstrapFont: true, + importBootstrapCSS: false }, }); @@ -44,6 +46,8 @@ module.exports = function(defaults) { app.import(path.join(app.bowerDirectory, 'jquery.tagsinput/src/jquery.tagsinput.js')); app.import(path.join(app.bowerDirectory, 'c3/c3.js')); app.import(path.join(app.bowerDirectory, 'd3/d3.js')); + app.import(path.join(app.bowerDirectory, 'osf-style/css/base.css')); + app.import('vendor/assets/ember-osf.css'); app.import({ test: path.join(app.bowerDirectory, 'ember/ember-template-compiler.js') }); From 299a4941fb47abe466915d6c3957f8bb07f74762 Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Thu, 7 Dec 2017 20:27:02 -0500 Subject: [PATCH 28/44] Update dependencies --- bower.json | 1 - package.json | 10 ++++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/bower.json b/bower.json index 5e8132f28..fddd7ff6c 100644 --- a/bower.json +++ b/bower.json @@ -6,7 +6,6 @@ "Faker": "~3.0.0", "pretender": "~0.10.1", "lodash": "~3.7.0", - "jquery-mockjax": "2.1.1", "dropzone": "~4.3.0", "font-awesome": "~4.5.0", "typeahead.js": "^0.11.1", diff --git a/package.json b/package.json index 930a64632..602acf989 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "ember-cli-eslint": "^3.1.0", "ember-cli-inject-live-reload": "1.6.1", "ember-cli-moment-shim": "^3.4.0", - "ember-cli-qunit": "3.1.2", + "ember-cli-qunit": "^4.0.0", "ember-cli-release": "0.2.8", "ember-cli-sri": "2.1.1", "ember-cli-template-lint": "0.5.2", @@ -58,12 +58,14 @@ "ember-export-application-global": "2.0.0", "ember-faker": "1.1.1", "ember-font-awesome": "3.0.5", + "ember-inflector": "^2.1.0", "ember-load-initializers": "^1.0.0", "ember-lodash": "^4.17.5", "ember-page-title": "3.2.0", "ember-power-select": "^1.8.4", "ember-radio-buttons": "4.0.3", "ember-resolver": "4.1.0", + "ember-template-compiler": "^1.9.0-alpha", "ember-toastr": "1.5.0", "eslint": "^3.19.0", "git-branch-is": "0.1.0", @@ -83,8 +85,8 @@ "broccoli-merge-trees": "2.0.0", "broccoli-sass-source-maps": "2.0.0", "config": "1.26.1", - "ember-cli-babel": "^6.8.1", "ember-ace": "^1.2.0", + "ember-cli-babel": "^6.8.1", "ember-cli-htmlbars": "2.0.1", "ember-cli-htmlbars-inline-precompile": "0.4.3", "ember-cli-sass": "^6.2.0", @@ -105,8 +107,8 @@ "js-yaml": "3.8.4", "keen-tracking": "1.1.3", "langs": "1.0.2", - "toastr": "^2.1.2", - "moment-timezone": "^0.5.13" + "moment-timezone": "^0.5.13", + "toastr": "^2.1.2" }, "ember-addon": { "configPath": "tests/dummy/config" From bfa2220bc59aad0283a3582bc9cffee69846947b Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Thu, 7 Dec 2017 20:27:24 -0500 Subject: [PATCH 29/44] Update ember-cli-build --- ember-cli-build.js | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/ember-cli-build.js b/ember-cli-build.js index 9558f4fa1..0fa83845d 100644 --- a/ember-cli-build.js +++ b/ember-cli-build.js @@ -11,8 +11,6 @@ module.exports = function(defaults) { 'bower_components/osf-style/sass', 'node_modules/bootstrap-sass/assets/stylesheets', 'tests/dummy/app/components', - 'bower_components/c3', - 'bower_components/bootstrap-daterangepicker', ] }, // FIXME @@ -48,8 +46,6 @@ module.exports = function(defaults) { app.import(path.join(app.bowerDirectory, 'd3/d3.js')); app.import(path.join(app.bowerDirectory, 'osf-style/css/base.css')); app.import('vendor/assets/ember-osf.css'); - app.import({ - test: path.join(app.bowerDirectory, 'ember/ember-template-compiler.js') - }); + app.import(path.join(app.bowerDirectory, 'ember/ember-template-compiler.js')); return app.toTree(); }; From 72c9d25a025175b49efd22a4f65cd80a79f19b5a Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Thu, 7 Dec 2017 20:28:45 -0500 Subject: [PATCH 30/44] update searchable count --- addon/components/total-share-results/template.hbs | 2 +- addon/locales/en/translations.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/addon/components/total-share-results/template.hbs b/addon/components/total-share-results/template.hbs index 157d2b5c9..5585ab21e 100644 --- a/addon/components/total-share-results/template.hbs +++ b/addon/components/total-share-results/template.hbs @@ -1,6 +1,6 @@ {{#if (and shareTotalText shareTotal)}}

    - {{t shareTotalText count=(number-format shareTotal)}} + {{number-format shareTotal}} {{t shareTotalText}} {{t "eosf.components.discoverPage.asOf"}} {{moment-format currentDate "MMMM DD, YYYY"}}

    {{/if}} \ No newline at end of file diff --git a/addon/locales/en/translations.js b/addon/locales/en/translations.js index 17a5843c7..d3810d387 100644 --- a/addon/locales/en/translations.js +++ b/addon/locales/en/translations.js @@ -212,7 +212,7 @@ export default { helpDescription: 'This gives you many options, but can be very simple as well. Examples of valid searches include:' }, totalShareResults: { - 'searchablePreprints': `{{count}} searchable {{preprintWords.preprints}}`, + 'searchablePreprints': `searchable {{preprintWords.preprints}}`, 'searchableRegistries': `{{count}} searchable registrations`, 'searchableEvents': `{{count}} searchable events`, } From 6c1fed94e373da866c7855e01ebd4e5083a7f6ac Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Thu, 7 Dec 2017 20:29:13 -0500 Subject: [PATCH 31/44] Add preprint-word util --- addon/utils/preprint-word.js | 28 ++++++++++++++++ app/utils/preprint-word.js | 1 + tests/unit/utils/preprint-word-test.js | 44 ++++++++++++++++++++++++++ 3 files changed, 73 insertions(+) create mode 100644 addon/utils/preprint-word.js create mode 100644 app/utils/preprint-word.js create mode 100644 tests/unit/utils/preprint-word-test.js diff --git a/addon/utils/preprint-word.js b/addon/utils/preprint-word.js new file mode 100644 index 000000000..b2c8e74b1 --- /dev/null +++ b/addon/utils/preprint-word.js @@ -0,0 +1,28 @@ +import { singularize, pluralize } from 'ember-inflector'; + +function capitalize(string) +{ + return string.charAt(0).toUpperCase() + string.slice(1); +} + +export default function preprintWord() { + const entries = ['document', 'paper', 'preprint', 'thesis']; + const wordDict = {}; + + for (let i = 0; i < entries.length; i++) { + wordDict[entries[i]] = { + plural: pluralize(entries[i]), + pluralCapitalized: pluralize(capitalize(entries[i])), + singular: singularize(entries[i]), + singularCapitalized: capitalize(entries[i]), + }; + wordDict['none'] = { + plural: '', + pluralCapitalized: '', + singular: '', + singularCapitalized: '', + }; + } + + return wordDict; +} diff --git a/app/utils/preprint-word.js b/app/utils/preprint-word.js new file mode 100644 index 000000000..fc912576c --- /dev/null +++ b/app/utils/preprint-word.js @@ -0,0 +1 @@ +export { default } from 'ember-osf/utils/preprint-word'; diff --git a/tests/unit/utils/preprint-word-test.js b/tests/unit/utils/preprint-word-test.js new file mode 100644 index 000000000..71d92672e --- /dev/null +++ b/tests/unit/utils/preprint-word-test.js @@ -0,0 +1,44 @@ +import preprintWord from 'dummy/utils/preprint-word'; +import { module, test } from 'qunit'; + +module('Unit | Utility | preprint word'); + +// Replace this with your real tests. +test('it works', function(assert) { + let result = preprintWord(); + const expected = + { + document: { + plural: 'documents', + pluralCapitalized: 'Documents', + singular: 'document', + singularCapitalized: 'Document', + }, + paper: { + plural: 'papers', + pluralCapitalized: 'Papers', + singular: 'paper', + singularCapitalized: 'Paper', + }, + preprint: { + plural: 'preprints', + pluralCapitalized: 'Preprints', + singular: 'preprint', + singularCapitalized: 'Preprint', + }, + none: { + plural: '', + pluralCapitalized: '', + singular: '', + singularCapitalized: '', + }, + thesis: { + plural: 'theses', + pluralCapitalized: 'Theses', + singular: 'thesis', + singularCapitalized: 'Thesis', + }, + + }; + assert.deepEqual(result, expected); +}); From 702b92847b180862520ef376dfa698384e5a4866 Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Thu, 7 Dec 2017 20:31:38 -0500 Subject: [PATCH 32/44] Update tests / settings --- tests/.jshintrc | 52 +++++++ .../components/file-editor/component-test.js | 2 +- .../total-share-results/component-test.js | 2 +- tests/test-helper.js | 3 + .../helpers/build-secondary-nav-links-test.js | 4 +- yarn.lock | 135 ++++++++++-------- 6 files changed, 133 insertions(+), 65 deletions(-) create mode 100644 tests/.jshintrc diff --git a/tests/.jshintrc b/tests/.jshintrc new file mode 100644 index 000000000..809b7e61d --- /dev/null +++ b/tests/.jshintrc @@ -0,0 +1,52 @@ +{ + "predef": [ + "document", + "window", + "location", + "setTimeout", + "$", + "-Promise", + "define", + "console", + "visit", + "exists", + "fillIn", + "click", + "keyEvent", + "triggerEvent", + "find", + "findWithAssert", + "wait", + "DS", + "andThen", + "currentURL", + "currentPath", + "currentRouteName" +], + "node": true, + "browser": false, + "boss": true, + "curly": true, + "debug": false, + "devel": false, + "eqeqeq": true, + "evil": true, + "forin": false, + "immed": false, + "laxbreak": false, + "newcap": true, + "noarg": true, + "noempty": false, + "nonew": false, + "nomen": false, + "onevar": false, + "plusplus": false, + "regexp": false, + "undef": true, + "sub": true, + "strict": false, + "white": false, + "eqnull": true, + "esversion": 6, + "unused": true +} diff --git a/tests/integration/components/file-editor/component-test.js b/tests/integration/components/file-editor/component-test.js index fe037a144..c5abcd54e 100644 --- a/tests/integration/components/file-editor/component-test.js +++ b/tests/integration/components/file-editor/component-test.js @@ -68,7 +68,7 @@ test('save new text', function(assert) { assert.equal(actual, expected, 'Save function properly passes new value'); }); - this.render(` + this.render(hbs` {{file-editor save=(action externalSaveAction)}} `); diff --git a/tests/integration/components/total-share-results/component-test.js b/tests/integration/components/total-share-results/component-test.js index e0931b42d..8e418ec47 100644 --- a/tests/integration/components/total-share-results/component-test.js +++ b/tests/integration/components/total-share-results/component-test.js @@ -32,5 +32,5 @@ test('it renders', function(assert) { shareTotal=shareTotal shareTotalText=shareTotalText }}`); - assert.strictEqual(this.$('span')[0].innerText, 'searchable preprints'); + assert.strictEqual(this.$('span')[0].innerText, '100 searchable preprints'); }); diff --git a/tests/test-helper.js b/tests/test-helper.js index e6cfb70fe..c9aa12d62 100644 --- a/tests/test-helper.js +++ b/tests/test-helper.js @@ -1,6 +1,9 @@ import resolver from './helpers/resolver'; +import { start } from 'ember-cli-qunit'; + import { setResolver } from 'ember-qunit'; setResolver(resolver); +start(); diff --git a/tests/unit/helpers/build-secondary-nav-links-test.js b/tests/unit/helpers/build-secondary-nav-links-test.js index f1ef0337c..8a2da2218 100644 --- a/tests/unit/helpers/build-secondary-nav-links-test.js +++ b/tests/unit/helpers/build-secondary-nav-links-test.js @@ -74,7 +74,7 @@ test('returns home service links, authenticated', function(assert) { {{/each}} `); - assert.equal(this.$()[0].innerText, 'My Projects Search Support'); + assert.equal(this.$()[0].innerText, 'My Projects My Projects Search Support'); }); @@ -88,7 +88,7 @@ test('returns home service links, unauthenticated', function(assert) { {{/each}} `); - assert.equal(this.$()[0].innerText, 'Search Support'); + assert.equal(this.$()[0].innerText, 'Browse Support Search Support'); }); test('returns Registries service links', function(assert) { diff --git a/yarn.lock b/yarn.lock index 438327e36..ca3aa3184 100644 --- a/yarn.lock +++ b/yarn.lock @@ -65,6 +65,13 @@ ember-compatibility-helpers "^0.1.1" ember-get-config "^0.2.3" +"@ember/test-helpers@^0.7.1": + version "0.7.3" + resolved "https://registry.yarnpkg.com/@ember/test-helpers/-/test-helpers-0.7.3.tgz#49bdaeda12e1016d064f5c8857e0b31cd109e031" + dependencies: + broccoli-funnel "^2.0.1" + ember-cli-babel "^6.8.1" + "@glimmer/di@^0.2.0": version "0.2.0" resolved "https://registry.yarnpkg.com/@glimmer/di/-/di-0.2.0.tgz#73bfd4a6ee4148a80bf092e8a5d29bcac9d4ce7e" @@ -361,10 +368,6 @@ ast-types@0.8.12: version "0.8.12" resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.8.12.tgz#a0d90e4351bb887716c83fd637ebf818af4adfcc" -ast-types@0.8.15: - version "0.8.15" - resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.8.15.tgz#8eef0827f04dff0ec8857ba925abe3fea6194e52" - ast-types@0.9.6: version "0.9.6" resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9" @@ -763,6 +766,10 @@ babel-plugin-syntax-exponentiation-operator@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" +babel-plugin-syntax-object-rest-spread@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" + babel-plugin-syntax-trailing-function-commas@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" @@ -968,6 +975,13 @@ babel-plugin-transform-exponentiation-operator@^6.22.0: babel-plugin-syntax-exponentiation-operator "^6.8.0" babel-runtime "^6.22.0" +babel-plugin-transform-object-rest-spread@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" + dependencies: + babel-plugin-syntax-object-rest-spread "^6.8.0" + babel-runtime "^6.26.0" + babel-plugin-transform-regenerator@^6.22.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" @@ -2213,6 +2227,12 @@ commander@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.1.0.tgz#d121bbae860d9992a3d517ba96f56588e47c6781" +common-tags@^1.4.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.5.1.tgz#e2e39931a013cd02253defeed89a1ad615a27f07" + dependencies: + babel-runtime "^6.26.0" + commoner@~0.10.3: version "0.10.8" resolved "https://registry.yarnpkg.com/commoner/-/commoner-0.10.8.tgz#34fc3672cd24393e8bb47e70caa0293811f4f2c5" @@ -3073,21 +3093,12 @@ ember-cli-preprocess-registry@^3.1.0: process-relative-require "^1.0.0" silent-error "^1.0.0" -ember-cli-qunit@3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/ember-cli-qunit/-/ember-cli-qunit-3.1.2.tgz#f47063ad6af0c69cd76661ccfefd453a10d7a93b" +ember-cli-qunit@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ember-cli-qunit/-/ember-cli-qunit-4.1.1.tgz#307a157e9f36a0d32621ae247effb891ff951fc7" dependencies: - broccoli-babel-transpiler "^5.5.0" - broccoli-funnel "^1.0.1" - broccoli-merge-trees "^1.1.0" - ember-cli-babel "^5.1.5" - ember-cli-test-loader "^1.1.1" - ember-cli-version-checker "^1.1.4" - ember-qunit "^2.0.0-beta.1" - qunit-notifications "^0.1.1" - qunitjs "^2.0.1" - resolve "^1.1.6" - silent-error "^1.0.0" + ember-cli-babel "^6.8.1" + ember-qunit "^3.1.0" ember-cli-release@0.2.8: version "0.2.8" @@ -3154,12 +3165,18 @@ ember-cli-test-info@^1.0.0: dependencies: ember-cli-string-utils "^1.0.0" -ember-cli-test-loader@1.1.1, ember-cli-test-loader@^1.1.1: +ember-cli-test-loader@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ember-cli-test-loader/-/ember-cli-test-loader-1.1.1.tgz#333311209b18185d0e0e95f918349da10cacf0b1" dependencies: ember-cli-babel "^5.2.1" +ember-cli-test-loader@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/ember-cli-test-loader/-/ember-cli-test-loader-2.2.0.tgz#3fb8d5d1357e4460d3f0a092f5375e71b6f7c243" + dependencies: + ember-cli-babel "^6.8.1" + ember-cli-uglify@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/ember-cli-uglify/-/ember-cli-uglify-1.2.0.tgz#3208c32b54bc2783056e8bb0d5cfe9bbaf17ffb2" @@ -3196,8 +3213,8 @@ ember-cli-version-checker@^2.0.0, ember-cli-version-checker@^2.1.0: yuidocjs "^0.10.0" ember-cli@^2.14.2: - version "2.16.2" - resolved "https://registry.yarnpkg.com/ember-cli/-/ember-cli-2.16.2.tgz#53b922073a8e6f34255a6e0dcb1794a91ba3e1b7" + version "2.17.0" + resolved "https://registry.yarnpkg.com/ember-cli/-/ember-cli-2.17.0.tgz#4f8b1890724e54e780242ff4d05b498e367e3461" dependencies: amd-name-resolver "1.0.0" babel-plugin-transform-es2015-modules-amd "^6.24.0" @@ -3269,7 +3286,7 @@ ember-cli@^2.14.2: promise-map-series "^0.2.1" quick-temp "^0.1.8" resolve "^1.3.0" - rsvp "^3.6.0" + rsvp "^4.7.0" sane "^1.6.0" semver "^5.1.1" silent-error "^1.0.0" @@ -3317,9 +3334,10 @@ ember-cookies@^0.0.13: ember-getowner-polyfill "^1.2.2" ember-data-factory-guy@^2.13.7: - version "2.13.16" - resolved "https://registry.yarnpkg.com/ember-data-factory-guy/-/ember-data-factory-guy-2.13.16.tgz#cdbe9a70cc5e235fdff1225806f30fffc6333e54" + version "2.13.19" + resolved "https://registry.yarnpkg.com/ember-data-factory-guy/-/ember-data-factory-guy-2.13.19.tgz#10df9c9ed7f9b7bc3e1d23cfec58fdbcffd29750" dependencies: + babel-plugin-transform-object-rest-spread "^6.26.0" broccoli-funnel "^1.0.1" broccoli-merge-trees "^1.1.1" ember-cli-babel "^6.7.0" @@ -3464,6 +3482,12 @@ ember-inflector@^1.9.4: dependencies: ember-cli-babel "^5.1.7" +ember-inflector@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/ember-inflector/-/ember-inflector-2.1.0.tgz#afcb92d022a4eab58f08ff4578eafc3a1de2d09b" + dependencies: + ember-cli-babel "^6.0.0" + ember-legacy-class-transform@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/ember-legacy-class-transform/-/ember-legacy-class-transform-0.1.3.tgz#af943fd46aa050981b7f0927bf70ef8736878682" @@ -3578,11 +3602,17 @@ ember-power-select@^1.8.4: ember-text-measurer "^0.4.0" ember-truth-helpers "^2.0.0" -ember-qunit@^2.0.0-beta.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/ember-qunit/-/ember-qunit-2.2.0.tgz#3cdf400031c93a38de781a7304819738753b7f99" +ember-qunit@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/ember-qunit/-/ember-qunit-3.1.0.tgz#4995a6207ab66b5d0cf807d0459d48f55f9eee5f" dependencies: - ember-test-helpers "^0.6.3" + "@ember/test-helpers" "^0.7.1" + broccoli-funnel "^2.0.1" + broccoli-merge-trees "^2.0.0" + common-tags "^1.4.0" + ember-cli-babel "^6.3.0" + ember-cli-test-loader "^2.2.0" + qunit "^2.4.1" ember-radio-buttons@4.0.3: version "4.0.3" @@ -3663,6 +3693,10 @@ ember-sinon@0.7.0, ember-sinon@~0.7.0: ember-cli-babel "^5.1.7" sinon "^2.1.0" +ember-template-compiler@^1.9.0-alpha: + version "1.9.0-alpha" + resolved "https://registry.yarnpkg.com/ember-template-compiler/-/ember-template-compiler-1.9.0-alpha.tgz#193dfcfcf0d8c1b3595a9609eb46d90d05d34f2f" + ember-template-lint@^0.6.0: version "0.6.4" resolved "https://registry.yarnpkg.com/ember-template-lint/-/ember-template-lint-0.6.4.tgz#0afca4436652252d0f008da0c36f0bce705717e0" @@ -3672,10 +3706,6 @@ ember-template-lint@^0.6.0: glimmer-engine "^0.21.2" lodash "^4.11.1" -ember-test-helpers@^0.6.3: - version "0.6.3" - resolved "https://registry.yarnpkg.com/ember-test-helpers/-/ember-test-helpers-0.6.3.tgz#f864cdf6f4e75f3f8768d6537785b5ab6e82d907" - ember-text-measurer@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/ember-text-measurer/-/ember-text-measurer-0.4.0.tgz#a676195378d4eb4c1617678c2d198a2344b4d12b" @@ -6298,14 +6328,10 @@ mime-types@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-1.0.2.tgz#995ae1392ab8affcbfcb2641dd054e943c0d5dce" -mime@1.4.1: +mime@1.4.1, mime@^1.2.11: version "1.4.1" resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" -mime@^1.2.11: - version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - mime@~1.2.11: version "1.2.11" resolved "https://registry.yarnpkg.com/mime/-/mime-1.2.11.tgz#58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10" @@ -7076,10 +7102,6 @@ quick-temp@^0.1.0, quick-temp@^0.1.2, quick-temp@^0.1.3, quick-temp@^0.1.5, quic rimraf "^2.5.4" underscore.string "~3.3.4" -qunit-notifications@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/qunit-notifications/-/qunit-notifications-0.1.1.tgz#3001afc6a6a77dfbd962ccbcddde12dec5286c09" - qunit@^0.9.1: version "0.9.3" resolved "https://registry.yarnpkg.com/qunit/-/qunit-0.9.3.tgz#a91f07334e8547badbaa6ae1841c126990b81295" @@ -7093,13 +7115,9 @@ qunit@^0.9.1: optionalDependencies: istanbul "https://github.com/gotwarlost/istanbul/tarball/harmony" -qunitjs@1.23.1: - version "1.23.1" - resolved "https://registry.yarnpkg.com/qunitjs/-/qunitjs-1.23.1.tgz#1971cf97ac9be01a64d2315508d2e48e6fd4e719" - -qunitjs@^2.0.1: +qunit@^2.4.1: version "2.4.1" - resolved "https://registry.yarnpkg.com/qunitjs/-/qunitjs-2.4.1.tgz#88aba055a9e2ec3dbebfaad02471b2cb002c530b" + resolved "https://registry.yarnpkg.com/qunit/-/qunit-2.4.1.tgz#373c826b3b91795f3e5479cc94f0f6fa14dedc47" dependencies: chokidar "1.6.1" commander "2.9.0" @@ -7109,6 +7127,10 @@ qunitjs@^2.0.1: resolve "1.3.2" walk-sync "0.3.1" +qunitjs@1.23.1: + version "1.23.1" + resolved "https://registry.yarnpkg.com/qunitjs/-/qunitjs-1.23.1.tgz#1971cf97ac9be01a64d2315508d2e48e6fd4e719" + randomatic@^1.1.3: version "1.1.7" resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" @@ -7228,7 +7250,7 @@ readline2@^1.0.1: is-fullwidth-code-point "^1.0.0" mute-stream "0.0.5" -recast@0.10.33: +recast@0.10.33, recast@^0.10.10: version "0.10.33" resolved "https://registry.yarnpkg.com/recast/-/recast-0.10.33.tgz#942808f7aa016f1fa7142c461d7e5704aaa8d697" dependencies: @@ -7237,15 +7259,6 @@ recast@0.10.33: private "~0.1.5" source-map "~0.5.0" -recast@^0.10.10: - version "0.10.43" - resolved "https://registry.yarnpkg.com/recast/-/recast-0.10.43.tgz#b95d50f6d60761a5f6252e15d80678168491ce7f" - dependencies: - ast-types "0.8.15" - esprima-fb "~15001.1001.0-dev-harmony-fb" - private "~0.1.5" - source-map "~0.5.0" - recast@^0.11.17, recast@^0.11.3: version "0.11.23" resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.23.tgz#451fd3004ab1e4df9b4e4b66376b2a21912462d3" @@ -7549,11 +7562,11 @@ rsvp@3.0.14: version "3.0.14" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.0.14.tgz#9d2968cf36d878d3bb9a9a5a4b8e1ff55a76dd31" -rsvp@^3.0.14, rsvp@^3.0.16, rsvp@^3.0.17, rsvp@^3.0.18, rsvp@^3.0.21, rsvp@^3.0.6, rsvp@^3.1.0, rsvp@^3.2.1, rsvp@^3.3.3, rsvp@^3.5.0, rsvp@^3.6.0: +rsvp@^3.0.14, rsvp@^3.0.16, rsvp@^3.0.17, rsvp@^3.0.18, rsvp@^3.0.21, rsvp@^3.0.6, rsvp@^3.1.0, rsvp@^3.2.1, rsvp@^3.3.3, rsvp@^3.5.0: version "3.6.2" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.6.2.tgz#2e96491599a96cde1b515d5674a8f7a91452926a" -rsvp@^4.0.1: +rsvp@^4.0.1, rsvp@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.7.0.tgz#dc1b0b1a536f7dec9d2be45e0a12ad4197c9fd96" @@ -7862,7 +7875,7 @@ source-map-url@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.3.0.tgz#7ecaf13b57bcd09da8a40c5d269db33799d4aaf9" -source-map@0.1.32: +source-map@0.1.32, source-map@~0.1.x: version "0.1.32" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.32.tgz#c8b6c167797ba4740a8ea33252162ff08591b266" dependencies: @@ -7884,7 +7897,7 @@ source-map@0.5.6, source-map@^0.5.0, source-map@^0.5.6, source-map@~0.5.0, sourc version "0.5.6" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" -source-map@^0.1.40, source-map@~0.1.30, source-map@~0.1.7, source-map@~0.1.x: +source-map@^0.1.40, source-map@~0.1.30, source-map@~0.1.7: version "0.1.43" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" dependencies: From ed439da2f3fbe84ede0fa8b35f8c65275fc1de2d Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Thu, 7 Dec 2017 20:35:49 -0500 Subject: [PATCH 33/44] Refactor file-manager tests --- tests/unit/services/file-manager-test.js | 505 +++++------------------ 1 file changed, 110 insertions(+), 395 deletions(-) diff --git a/tests/unit/services/file-manager-test.js b/tests/unit/services/file-manager-test.js index 8bbbf28f8..180e0b6e0 100644 --- a/tests/unit/services/file-manager-test.js +++ b/tests/unit/services/file-manager-test.js @@ -1,77 +1,9 @@ import Ember from 'ember'; -import {moduleFor, test} from 'ember-qunit'; -import FactoryGuy, { - manualSetup, mockSetup, mockUpdate, - mockTeardown, mockFindRecord, mockReload -} from 'ember-data-factory-guy'; - -/* - * assertions: - * - once for expectedRequest.url - * - once for expectedRequest.query - * - once for each key in expectedRequest.headers - * - once for each key in expectedRequest.settings - */ -function mockWaterbutler(assert, expectedRequest, response) { - Ember.$.mockjax(function (requestSettings) { - if (requestSettings.url.indexOf(expectedRequest.url) === 0) { - return { - response: function () { - assertURL(assert, requestSettings.url, - expectedRequest.url, expectedRequest.query); - assertHeaders(assert, requestSettings.headers, - expectedRequest.headers); - assertSettings(assert, requestSettings, - expectedRequest.settings); - this.responseText = response.data || {}; - this.status = response.status; - } - }; - } - return; - }); -} - -// assert once for the path and once if queryParams is specified -function assertURL(assert, actual, expected, queryParams) { - if (!queryParams) { - assert.equal(actual, expected, 'correct request URL'); - return; - } - let [actualBase, actualParams] = actual.split('?'); - assert.equal(actualBase, expected, 'correct base URL'); +import {moduleFor} from 'ember-qunit'; +import FactoryGuy, { manualSetup, mockUpdate } from 'ember-data-factory-guy'; +import wait from 'ember-test-helpers/wait'; +import test from 'ember-sinon-qunit/test-support/test'; - let expectedParams = []; - for (let key in queryParams) { - expectedParams.push(`${key}=${queryParams[key]}`); - } - assert.deepEqual(actualParams.split('&').sort(), expectedParams.sort(), - 'correct query params'); -} - -// assert once for each expected header -function assertHeaders(assert, actual, expected) { - for (let header in expected) { - assert.equal(actual[header], expected[header], - `request has expected header '${header}'`); - } -} - -// assert once for each expected ajax setting -function assertSettings(assert, actual, expected) { - for (let s in expected) { - // Check for a JSON payload - if (typeof expected[s] === 'object' && - typeof actual[s] === 'string') { - let payload = JSON.parse(actual[s]); - assert.deepEqual(payload, expected[s], - `request has expected JSON payload '${s}'`); - } else { - assert.equal(actual[s], expected[s], - `request has expected option '${s}'`); - } - } -} let fakeAccessToken = 'thisisafakeaccesstoken'; let fakeUserID = 'thisisafakeuseridbanana'; @@ -97,69 +29,36 @@ moduleFor('service:file-manager', 'Unit | Service | file manager', { // FactoryGuy setup manualSetup(this.container); - mockSetup(); - }, - afterEach() { - mockTeardown(); } }); test('getContents sends valid waterbutler request', function (assert) { - assert.expect(4); - let service = this.subject(); - let file = FactoryGuy.make('file'); - let done = assert.async(); + assert.expect(2); - let request = { + const service = this.subject(); + const file = FactoryGuy.make('file'); + + const request = { url: file.get('links').download, settings: {method: 'GET'}, headers: {Authorization: `Bearer ${fakeAccessToken}`} }; - let response = { - status: 200, - data: 'file contents here' - }; - mockWaterbutler(assert, request, response); - service.getContents(file).then(function (data) { - assert.equal(data, response.data); - done(); - }).catch(function () { - assert.ok(false, 'promise should not reject on success'); - done(); - }); -}); + const stub = this.stub(service, '_waterbutlerRequest'); -test('getContents passes along error', function (assert) { - assert.expect(4); - let service = this.subject(); - let file = FactoryGuy.make('file'); - let done = assert.async(); + service.getContents(file); - let request = { - url: file.get('links').download, - settings: {method: 'GET'}, - headers: {Authorization: `Bearer ${fakeAccessToken}`} - }; - let response = { - status: 404 - }; - mockWaterbutler(assert, request, response); + assert.ok(stub.calledOnce, '_waterbutlerRequest was called once'); - service.getContents(file).then(function () { - assert.ok(false, 'promise should reject'); - done(); - }).catch(function () { - assert.ok(true, 'promise rejects on error'); - done(); - }); + assert.ok(stub.calledWithExactly('GET', request.url, {}), '_waterbutlerRequest was called with correct parameters'); }); + test('updateContents sends valid waterbutler request', function (assert) { - assert.expect(6); + assert.expect(2); + let service = this.subject(); let file = FactoryGuy.make('file'); - let done = assert.async(); let request = { url: file.get('links').upload, @@ -170,54 +69,29 @@ test('updateContents sends valid waterbutler request', function (assert) { let response = { status: 200, }; - let freshModel = FactoryGuy.build('file', { - id: file.id, - dateModified: new Date() - }); - mockFindRecord('file', {id: file.id}).returns({json: freshModel}); - - mockWaterbutler(assert, request, response); - service.updateContents(file, request.settings.data).then(function (fresh) { - assert.equal(fresh.get('id'), file.get('id')); - done(); - }).catch(function () { - assert.ok(false, 'promise should not reject on success'); - done(); + service.set('_waterbutlerRequest', () => { + return new Ember.RSVP.Promise(function(resolve){ + // succeed + resolve(response); + }); }); -}); -test('updateContents passes along error', function (assert) { - assert.expect(6); - let service = this.subject(); - let file = FactoryGuy.make('file'); - let done = assert.async(); + const stub = this.stub(service, '_reloadModel'); - let request = { - url: file.get('links').upload, - query: {kind: 'file'}, - settings: {method: 'PUT', data: 'contents contents'}, - headers: {Authorization: `Bearer ${fakeAccessToken}`}, - }; - let response = { - status: 404, - }; - mockWaterbutler(assert, request, response); + service.updateContents(file, request.settings.data); - service.updateContents(file, request.settings.data).then(function () { - assert.ok(false, 'promise should reject on error'); - done(); - }).catch(function () { - assert.ok(true, 'promise rejects on error'); - done(); + return wait().then(() => { + assert.ok(stub.calledOnce, '_reloadModel was called once'); + assert.ok(stub.calledWithExactly(file), '_reloadModel was called with correct parameters'); }); }); + test('addSubfolder sends valid waterbutler request', function (assert) { - assert.expect(4); + assert.expect(2); let service = this.subject(); let folder = FactoryGuy.make('file', 'isFolder'); - let done = assert.async(); let request = { url: folder.get('links').new_folder, @@ -228,48 +102,30 @@ test('addSubfolder sends valid waterbutler request', function (assert) { let response = { status: 200, }; - mockWaterbutler(assert, request, response); - let p = service.addSubfolder(folder, request.query.name); - - p.then(function () { - done(); - }).catch(function () { - done(); + service.set('_waterbutlerRequest', () => { + return new Ember.RSVP.Promise(function(resolve){ + // succeed + resolve(response); + }); }); -}); -test('addSubfolder passes along error', function (assert) { - assert.expect(5); - let service = this.subject(); - let folder = FactoryGuy.make('file', 'isFolder'); - let done = assert.async(); + const stub = this.stub(service, '_getNewFileInfo'); - let request = { - url: folder.get('links').new_folder, - query: {name: 'fooname', kind: 'folder'}, - settings: {method: 'PUT'}, - headers: {Authorization: `Bearer ${fakeAccessToken}`}, - }; - let response = { - status: 404, - }; - mockWaterbutler(assert, request, response); + service.addSubfolder(folder, request.query.name); - service.addSubfolder(folder, request.query.name).then(function () { - assert.ok(false, 'promise should reject on error'); - done(); - }).catch(function () { - assert.ok(true, 'promise rejects on error'); - done(); + return wait().then(() => { + assert.ok(stub.calledOnce, '_getNewFileInfo was called once'); + assert.ok(stub.calledWithExactly(folder, request.query.name), '_getNewFileInfo was called with correct parameters'); }); + }); + test('uploadFile sends valid waterbutler request', function (assert) { - assert.expect(5); + assert.expect(2); let service = this.subject(); let folder = FactoryGuy.make('file', 'isFolder'); - let done = assert.async(); let request = { url: folder.get('links').upload, @@ -280,188 +136,93 @@ test('uploadFile sends valid waterbutler request', function (assert) { let response = { status: 200, }; - mockWaterbutler(assert, request, response); - let p = service.uploadFile(folder, request.query.name, - request.settings.data); - - p.then(function () { - done(); - }).catch(function () { - done(); + service.set('_waterbutlerRequest', () => { + return new Ember.RSVP.Promise(function(resolve){ + // succeed + resolve(response); + }); }); -}); -test('uploadFile passes along error', function (assert) { - assert.expect(6); - let service = this.subject(); - let file = FactoryGuy.make('file', 'isFolder'); - let done = assert.async(); + const stub = this.stub(service, '_getNewFileInfo'); - let request = { - url: file.get('links').upload, - query: {name: 'fooname', kind: 'file'}, - settings: {method: 'PUT', data: 'contents contents'}, - headers: {Authorization: `Bearer ${fakeAccessToken}`}, - }; - let response = { - status: 401, - }; - mockWaterbutler(assert, request, response); + service.uploadFile(folder, request.query.name, request.settings.data); - service.uploadFile(file, request.query.name, - request.settings.data).then(function () { - assert.ok(false, 'promise should reject on error'); - done(); - }).catch(function () { - assert.ok(true, 'promise rejects on error'); - done(); + return wait().then(() => { + assert.ok(stub.calledOnce, '_getNewFileInfo was called once'); + assert.ok(stub.calledWithExactly(folder, request.query.name), '_getNewFileInfo was called with correct parameters'); }); }); + test('move sends valid waterbutler request', function (assert) { - assert.expect(4); + assert.expect(2); let service = this.subject(); - let done = assert.async(); let file = FactoryGuy.make('file'); - let folder = FactoryGuy.make('file', 'isFolder', - {path: '/path/path/this/is/a/path/'}); - let request = { - url: file.get('links').move, - settings: { - method: 'POST', data: { - action: 'move', - path: folder.get('path'), - } - }, - headers: {Authorization: `Bearer ${fakeAccessToken}`}, - }; + let folder = FactoryGuy.make('file', 'isFolder', {path: '/path/path/this/is/a/path/'}); + let response = { status: 200, data: { - data: { - attributes: {name: file.get('name')} - } + attributes: {name: file.get('name')} } }; - mockWaterbutler(assert, request, response); - - let p = service.move(file, folder); - p.then(function () { - done(); - }).catch(function () { - done(); + service.set('_waterbutlerRequest', () => { + return new Ember.RSVP.Promise(function(resolve){ + // succeed + resolve(response); + }); }); -}); -test('move passes along error', function (assert) { - assert.expect(5); - let service = this.subject(); - let done = assert.async(); - let file = FactoryGuy.make('file'); - let folder = FactoryGuy.make('file', 'isFolder', - {path: '/path/path/this/is/a/path/'}); + const stub = this.stub(service, '_getNewFileInfo'); - let request = { - url: file.get('links').move, - settings: { - method: 'POST', data: { - action: 'move', - path: folder.get('path'), - } - }, - headers: {Authorization: `Bearer ${fakeAccessToken}`}, - }; - let response = { - status: 402, - }; - mockWaterbutler(assert, request, response); + service.move(file, folder); - service.move(file, folder).then(function () { - assert.ok(false, 'promise should reject'); - done(); - }).catch(function () { - assert.ok(true, 'promise rejects on error'); - done(); + return wait().then(() => { + assert.ok(stub.calledOnce, '_getNewFileInfo was called once'); + assert.ok(stub.calledWithExactly(folder, response.data.attributes.name), '_getNewFileInfo was called with correct parameters'); }); + }); + test('copy sends valid waterbutler request', function (assert) { - assert.expect(4); + assert.expect(2); let service = this.subject(); - let done = assert.async(); let file = FactoryGuy.make('file'); - let folder = FactoryGuy.make('file', 'isFolder', - {path: '/path/path/this/is/a/path/'}); + let folder = FactoryGuy.make('file', 'isFolder', {path: '/path/path/this/is/a/path/'}); - let request = { - url: file.get('links').move, - settings: { - method: 'POST', - data: { - action: 'copy', - path: folder.get('path'), - } - }, - headers: {Authorization: `Bearer ${fakeAccessToken}`}, - }; let response = { status: 200, data: { - data: { - attributes: {name: file.get('name')} - } + attributes: {name: file.get('name')} } }; - mockWaterbutler(assert, request, response); - let p = service.copy(file, folder); - - p.then(function () { - done(); - }).catch(function () { - done(); + service.set('_waterbutlerRequest', () => { + return new Ember.RSVP.Promise(function(resolve){ + // succeed + resolve(response); + }); }); -}); -test('copy passes along error', function (assert) { - assert.expect(5); - let service = this.subject(); - let done = assert.async(); - let file = FactoryGuy.make('file'); - let folder = FactoryGuy.make('file', 'isFolder', - {path: '/path/path/this/is/a/path/'}); + const stub = this.stub(service, 'move'); - let request = { - url: file.get('links').move, - settings: { - method: 'POST', data: { - action: 'copy', - path: folder.get('path'), - } - }, - headers: {Authorization: `Bearer ${fakeAccessToken}`}, - }; - let response = { - status: 402, - }; - mockWaterbutler(assert, request, response); + service.copy(file, folder); - service.copy(file, folder).then(function () { - assert.ok(false, 'promise should reject'); - done(); - }).catch(function () { - assert.ok(true, 'promise rejects on error'); - done(); - }); + assert.ok(stub.calledOnce, 'move was called once'); + + const options = { data: {action: 'copy'}}; + + assert.ok(stub.calledWithExactly(file, folder, options), 'move was called with correct parameters'); }); + test('rename sends valid waterbutler request', function (assert) { - assert.expect(4); + assert.expect(2); let service = this.subject(); let file = FactoryGuy.make('file'); - let done = assert.async(); let request = { url: file.get('links').move, @@ -472,98 +233,52 @@ test('rename sends valid waterbutler request', function (assert) { status: 200, }; - mockWaterbutler(assert, request, response); - mockReload(file).returns({ - json: FactoryGuy.build('file', { - id: file.get('id'), - name: request.settings.data.rename - }) - }); - - let p = service.rename(file, request.settings.data.rename); - - p.then(function () { - done(); - }).catch(function () { - done(); + service.set('_waterbutlerRequest', () => { + return new Ember.RSVP.Promise(function(resolve){ + // succeed + resolve(response); + }); }); -}); -test('rename passes along error', function (assert) { - assert.expect(5); - let service = this.subject(); - let file = FactoryGuy.make('file'); - let done = assert.async(); + const stub = this.stub(service, '_reloadModel'); - let request = { - url: file.get('links').move, - settings: {method: 'POST', data: {action: 'rename', rename: 'flooby'}}, - headers: {Authorization: `Bearer ${fakeAccessToken}`}, - }; - let response = { - status: 401, - }; - mockWaterbutler(assert, request, response); + service.rename(file, request.settings.data.rename); - service.rename(file, request.settings.data.rename).then(function () { - assert.ok(false, 'promise should reject'); - done(); - }).catch(function () { - assert.ok(true, 'promise rejects on error'); - done(); + return wait().then(() => { + assert.ok(stub.calledOnce, '_reloadModel was called once'); + assert.ok(stub.calledWithExactly(file), '_reloadModel was called with correct parameters'); }); }); + test('deleteFile sends valid waterbutler request', function (assert) { - assert.expect(4); + assert.expect(2); let service = this.subject(); - let file = FactoryGuy.make('file'); - let done = assert.async(); + let folder = FactoryGuy.make('file', 'isFolder'); + let file1 = FactoryGuy.make('file', {parentFolder: folder}); - let request = { - url: file.get('links').delete, - settings: {method: 'DELETE'}, - headers: {Authorization: `Bearer ${fakeAccessToken}`}, - }; let response = { status: 200, }; - mockWaterbutler(assert, request, response); - service.deleteFile(file).then(function () { - assert.ok(true); - done(); - }).catch(function () { - assert.ok(false, 'promise rejected!'); - done(); + service.set('_waterbutlerRequest', () => { + return new Ember.RSVP.Promise(function(resolve){ + // succeed + resolve(response); + }); }); -}); -test('deleteFile passes along error', function (assert) { - assert.expect(4); - let service = this.subject(); - let file = FactoryGuy.make('file'); - let done = assert.async(); + const stub = this.stub(service, '_reloadModel'); - let request = { - url: file.get('links').delete, - settings: {method: 'DELETE'}, - headers: {Authorization: `Bearer ${fakeAccessToken}`}, - }; - let response = { - status: 401, - }; - mockWaterbutler(assert, request, response); + service.deleteFile(file1); - service.deleteFile(file).then(function () { - assert.ok(false, 'promise should reject'); - done(); - }).catch(function () { - assert.ok(true, 'promise rejects on error'); - done(); + return wait().then(() => { + assert.ok(stub.calledOnce, '_reloadModel was called once'); + assert.ok(stub.calledWithExactly(folder.get('files')), '_reloadModel was called with correct parameters'); }); }); + test('checkOut checks out', function (assert) { assert.expect(2); let service = this.subject(); From f38159bac2fa2ef3d45f780d6273438edd3e6cab Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Fri, 8 Dec 2017 11:07:27 -0500 Subject: [PATCH 34/44] update wording --- tests/unit/utils/preprint-word-test.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/unit/utils/preprint-word-test.js b/tests/unit/utils/preprint-word-test.js index 71d92672e..964d7c772 100644 --- a/tests/unit/utils/preprint-word-test.js +++ b/tests/unit/utils/preprint-word-test.js @@ -3,8 +3,7 @@ import { module, test } from 'qunit'; module('Unit | Utility | preprint word'); -// Replace this with your real tests. -test('it works', function(assert) { +test('preprint-word works', function(assert) { let result = preprintWord(); const expected = { From 8a1606c94ee0600e59cbe054b2acb2f9be0e8dfe Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Tue, 12 Dec 2017 11:47:20 -0500 Subject: [PATCH 35/44] * Update changelog * update translation and total-share-results component --- CHANGELOG.md | 2 -- addon/components/total-share-results/template.hbs | 2 +- addon/locales/en/translations.js | 4 ++-- .../components/total-share-results/component-test.js | 2 +- 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f927a31ae..90c85c8a5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -97,8 +97,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Override `relationshipTypes` in a serializer to include `fieldName: 'apiType'` pairs of all relationships which may be included when saving updates - Moved ember-metrics and ember-toastr to dependencies - Upgraded ember-toastr to 1.7.0 -- Consolidate logic for serializing dirty relationships into `osf-serializer` - - Override `relationshipTypes` in a serializer to include `fieldName: 'apiType'` pairs of all relationships which may be included when saving updates ### Removed - toastr from bower dependencies diff --git a/addon/components/total-share-results/template.hbs b/addon/components/total-share-results/template.hbs index 5585ab21e..157d2b5c9 100644 --- a/addon/components/total-share-results/template.hbs +++ b/addon/components/total-share-results/template.hbs @@ -1,6 +1,6 @@ {{#if (and shareTotalText shareTotal)}}

    - {{number-format shareTotal}} {{t shareTotalText}} + {{t shareTotalText count=(number-format shareTotal)}} {{t "eosf.components.discoverPage.asOf"}} {{moment-format currentDate "MMMM DD, YYYY"}}

    {{/if}} \ No newline at end of file diff --git a/addon/locales/en/translations.js b/addon/locales/en/translations.js index d3810d387..e62f3573f 100644 --- a/addon/locales/en/translations.js +++ b/addon/locales/en/translations.js @@ -33,7 +33,7 @@ export default { Preprint: '', Preprints: '' }, - default: { + document: { preprint: 'document', preprints: 'documents', Preprint: 'Document', @@ -212,7 +212,7 @@ export default { helpDescription: 'This gives you many options, but can be very simple as well. Examples of valid searches include:' }, totalShareResults: { - 'searchablePreprints': `searchable {{preprintWords.preprints}}`, + 'searchablePreprints': `{{count}} searchable {{preprintWords.preprints}}`, 'searchableRegistries': `{{count}} searchable registrations`, 'searchableEvents': `{{count}} searchable events`, } diff --git a/tests/integration/components/total-share-results/component-test.js b/tests/integration/components/total-share-results/component-test.js index 8e418ec47..e0931b42d 100644 --- a/tests/integration/components/total-share-results/component-test.js +++ b/tests/integration/components/total-share-results/component-test.js @@ -32,5 +32,5 @@ test('it renders', function(assert) { shareTotal=shareTotal shareTotalText=shareTotalText }}`); - assert.strictEqual(this.$('span')[0].innerText, '100 searchable preprints'); + assert.strictEqual(this.$('span')[0].innerText, 'searchable preprints'); }); From e924ac90429f43d662733af3cb62826898a59676 Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Wed, 13 Dec 2017 13:33:45 -0500 Subject: [PATCH 36/44] Update preprint-word util --- addon/utils/preprint-word.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/addon/utils/preprint-word.js b/addon/utils/preprint-word.js index b2c8e74b1..a2a20a2e2 100644 --- a/addon/utils/preprint-word.js +++ b/addon/utils/preprint-word.js @@ -16,13 +16,13 @@ export default function preprintWord() { singular: singularize(entries[i]), singularCapitalized: capitalize(entries[i]), }; - wordDict['none'] = { - plural: '', - pluralCapitalized: '', - singular: '', - singularCapitalized: '', - }; } + wordDict['none'] = { + plural: '', + pluralCapitalized: '', + singular: '', + singularCapitalized: '', + }; return wordDict; } From b029ec73c5ec7b58b9b927007de67f8295e9df97 Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Fri, 19 Jan 2018 16:48:55 -0500 Subject: [PATCH 37/44] Update translations --- addon/locales/en/translations.js | 46 ++++++++++++++------------------ 1 file changed, 20 insertions(+), 26 deletions(-) diff --git a/addon/locales/en/translations.js b/addon/locales/en/translations.js index e62f3573f..fe4becba8 100644 --- a/addon/locales/en/translations.js +++ b/addon/locales/en/translations.js @@ -8,37 +8,31 @@ export default { // }, // // "key.with.interpolation": "Text with {{anInterpolation}}" - preprintWords: { - preprint: { - preprint: 'preprint', - preprints: 'preprints', - Preprint: 'Preprint', - Preprints: 'Preprints' + documentType: { + default: { + plural: 'documents', + pluralCapitalized: 'Documents', + singular: 'document', + singularCapitalized: 'Document', }, paper: { - preprint: 'paper', - preprints: 'papers', - Preprint: 'Paper', - Preprints: 'Papers' + plural: 'papers', + pluralCapitalized: 'Papers', + singular: 'paper', + singularCapitalized: 'Paper', }, - thesis: { - preprint: 'thesis', - preprints: 'theses', - Preprint: 'Thesis', - Preprints: 'Theses' + preprint: { + plural: 'preprints', + pluralCapitalized: 'Preprints', + singular: 'preprint', + singularCapitalized: 'Preprint', }, - none: { - preprint: '', - preprints: '', - Preprint: '', - Preprints: '' + thesis: { + plural: 'theses', + pluralCapitalized: 'Theses', + singular: 'thesis', + singularCapitalized: 'Thesis', }, - document: { - preprint: 'document', - preprints: 'documents', - Preprint: 'Document', - Preprints: 'Documents' - } }, eosf: { signup: { From 115d651029b3277738bebab8cb20f286f8dc644f Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Fri, 19 Jan 2018 16:49:29 -0500 Subject: [PATCH 38/44] Replace preprint word util with service --- addon/services/preprint-word.js | 40 +++++++++++++++++++++ addon/utils/preprint-word.js | 28 --------------- app/services/preprint-word.js | 1 + app/utils/preprint-word.js | 1 - tests/unit/services/preprint-word-test.js | 12 +++++++ tests/unit/utils/preprint-word-test.js | 43 ----------------------- 6 files changed, 53 insertions(+), 72 deletions(-) create mode 100644 addon/services/preprint-word.js delete mode 100644 addon/utils/preprint-word.js create mode 100644 app/services/preprint-word.js delete mode 100644 app/utils/preprint-word.js create mode 100644 tests/unit/services/preprint-word-test.js delete mode 100644 tests/unit/utils/preprint-word-test.js diff --git a/addon/services/preprint-word.js b/addon/services/preprint-word.js new file mode 100644 index 000000000..f2a3f17da --- /dev/null +++ b/addon/services/preprint-word.js @@ -0,0 +1,40 @@ +import Ember from 'ember'; + +export default Ember.Service.extend({ + i18n: Ember.inject.service(), + getPreprintWord() { + const i18n = this.get('i18n'); + return { + default: { + plural: i18n.t('documentType.default.plural'), + pluralCapitalized: i18n.t('documentType.default.pluralCapitalized'), + singular: i18n.t('documentType.default.singular'), + singularCapitalized: i18n.t('documentType.default.singularCapitalized'), + }, + paper: { + plural: i18n.t('documentType.paper.plural'), + pluralCapitalized: i18n.t('documentType.paper.pluralCapitalized'), + singular: i18n.t('documentType.paper.singular'), + singularCapitalized: i18n.t('documentType.paper.singularCapitalized'), + }, + preprint: { + plural: i18n.t('documentType.preprint.plural'), + pluralCapitalized: i18n.t('documentType.preprint.pluralCapitalized'), + singular: i18n.t('documentType.preprint.singular'), + singularCapitalized: i18n.t('documentType.preprint.singularCapitalized'), + }, + none: { + plural: '', + pluralCapitalized: '', + singular: '', + singularCapitalized: '', + }, + thesis: { + plural: i18n.t('documentType.thesis.plural'), + pluralCapitalized: i18n.t('documentType.thesis.pluralCapitalized'), + singular: i18n.t('documentType.thesis.singular'), + singularCapitalized: i18n.t('documentType.thesis.singularCapitalized'), + }, + } + } +}); diff --git a/addon/utils/preprint-word.js b/addon/utils/preprint-word.js deleted file mode 100644 index a2a20a2e2..000000000 --- a/addon/utils/preprint-word.js +++ /dev/null @@ -1,28 +0,0 @@ -import { singularize, pluralize } from 'ember-inflector'; - -function capitalize(string) -{ - return string.charAt(0).toUpperCase() + string.slice(1); -} - -export default function preprintWord() { - const entries = ['document', 'paper', 'preprint', 'thesis']; - const wordDict = {}; - - for (let i = 0; i < entries.length; i++) { - wordDict[entries[i]] = { - plural: pluralize(entries[i]), - pluralCapitalized: pluralize(capitalize(entries[i])), - singular: singularize(entries[i]), - singularCapitalized: capitalize(entries[i]), - }; - } - wordDict['none'] = { - plural: '', - pluralCapitalized: '', - singular: '', - singularCapitalized: '', - }; - - return wordDict; -} diff --git a/app/services/preprint-word.js b/app/services/preprint-word.js new file mode 100644 index 000000000..452d1eeeb --- /dev/null +++ b/app/services/preprint-word.js @@ -0,0 +1 @@ +export { default } from 'ember-osf/services/preprint-word'; diff --git a/app/utils/preprint-word.js b/app/utils/preprint-word.js deleted file mode 100644 index fc912576c..000000000 --- a/app/utils/preprint-word.js +++ /dev/null @@ -1 +0,0 @@ -export { default } from 'ember-osf/utils/preprint-word'; diff --git a/tests/unit/services/preprint-word-test.js b/tests/unit/services/preprint-word-test.js new file mode 100644 index 000000000..9bbf49aef --- /dev/null +++ b/tests/unit/services/preprint-word-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('service:preprint-word', 'Unit | Service | preprint word', { + // Specify the other units that are required for this test. + // needs: ['service:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let service = this.subject(); + assert.ok(service); +}); diff --git a/tests/unit/utils/preprint-word-test.js b/tests/unit/utils/preprint-word-test.js deleted file mode 100644 index 964d7c772..000000000 --- a/tests/unit/utils/preprint-word-test.js +++ /dev/null @@ -1,43 +0,0 @@ -import preprintWord from 'dummy/utils/preprint-word'; -import { module, test } from 'qunit'; - -module('Unit | Utility | preprint word'); - -test('preprint-word works', function(assert) { - let result = preprintWord(); - const expected = - { - document: { - plural: 'documents', - pluralCapitalized: 'Documents', - singular: 'document', - singularCapitalized: 'Document', - }, - paper: { - plural: 'papers', - pluralCapitalized: 'Papers', - singular: 'paper', - singularCapitalized: 'Paper', - }, - preprint: { - plural: 'preprints', - pluralCapitalized: 'Preprints', - singular: 'preprint', - singularCapitalized: 'Preprint', - }, - none: { - plural: '', - pluralCapitalized: '', - singular: '', - singularCapitalized: '', - }, - thesis: { - plural: 'theses', - pluralCapitalized: 'Theses', - singular: 'thesis', - singularCapitalized: 'Thesis', - }, - - }; - assert.deepEqual(result, expected); -}); From 36db7d6fde03f79279713cb67b4f5c96fc4cec40 Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Tue, 23 Jan 2018 09:45:40 -0500 Subject: [PATCH 39/44] Merge branch 'develop' of https://github.com/CenterForOpenScience/ember-osf into feature/EOSF-915 --- CHANGELOG.md | 13 +++ addon/adapters/osf-adapter.js | 4 +- addon/components/validated-input/style.scss | 8 ++ addon/mixins/paginated-controller.js | 4 +- addon/models/osf-model.js | 53 ++++++++++-- addon/models/preprint-provider.js | 2 +- addon/serializers/osf-serializer.js | 11 ++- addon/services/file-manager.js | 2 +- addon/styles/addon.scss | 1 + addon/utils/load-relationship.js | 6 +- docs/api.js | 1 + docs/classes/Analytics.html | 3 +- docs/classes/CasAuthenticatedRouteMixin.html | 3 +- docs/classes/Citation.html | 3 +- docs/classes/Collection.html | 3 +- docs/classes/Comment.html | 3 +- docs/classes/CommentReport.html | 3 +- docs/classes/CommentableMixin.html | 3 +- docs/classes/Contributor.html | 3 +- docs/classes/DraftRegistration.html | 3 +- docs/classes/File.html | 3 +- docs/classes/FileCacheBypassMixin.html | 3 +- docs/classes/FileItemMixin.html | 3 +- docs/classes/FileProvider.html | 3 +- docs/classes/FileVersion.html | 3 +- docs/classes/GenericDataADapter.html | 3 +- docs/classes/HostAppNameMixin.html | 3 +- docs/classes/InfinityCustomMixin.html | 3 +- docs/classes/Institution.html | 3 +- docs/classes/Log.html | 3 +- docs/classes/Metaschema.html | 3 +- docs/classes/Node.html | 3 +- docs/classes/NodeActionsMixin.html | 3 +- docs/classes/NodeLink.html | 3 +- docs/classes/OsfAdapter.html | 3 +- docs/classes/OsfAgnosticAuthController.html | 3 +- docs/classes/OsfAgnosticAuthRoute.html | 3 +- docs/classes/OsfCookieAuthenticator.html | 3 +- docs/classes/OsfCookieAuthorizer.html | 3 +- docs/classes/OsfCookieLoginController.html | 3 +- docs/classes/OsfCookieLoginRoute.html | 3 +- docs/classes/OsfModel.html | 3 +- docs/classes/OsfSerializer.html | 3 +- docs/classes/OsfTokenAuthenticator.html | 3 +- docs/classes/OsfTokenAuthorizer.html | 3 +- .../classes/OsfTokenLoginControllerMixin.html | 3 +- docs/classes/OsfTokenLoginRouteMixin.html | 3 +- docs/classes/PaginatedControllerMixin.html | 3 +- docs/classes/PaginatedRouteMixin.html | 3 +- docs/classes/Preprint.html | 3 +- docs/classes/Registration.html | 3 +- docs/classes/RegistrationActionsMixin.html | 3 +- docs/classes/TaggableMixin.html | 3 +- docs/classes/Taxonomy.html | 3 +- docs/classes/User.html | 3 +- docs/classes/ajax-helpers.html | 3 +- docs/classes/auth.html | 3 +- docs/classes/author-link.html | 3 +- docs/classes/buildSecondaryNavLinks.html | 3 +- docs/classes/citation-widget.html | 3 +- docs/classes/comment-detail.html | 3 +- docs/classes/comment-form.html | 3 +- docs/classes/comment-pane.html | 3 +- docs/classes/current-user.html | 3 +- docs/classes/discover-page.html | 3 +- docs/classes/dropzone-widget.html | 8 +- docs/classes/elastic-query.html | 3 +- docs/classes/elem-id.html | 3 +- docs/classes/eosf-project-nav.html | 3 +- docs/classes/faceted-search.html | 3 +- docs/classes/file-browser-icon.html | 3 +- docs/classes/file-browser.html | 5 +- docs/classes/file-chooser component.html | 3 +- docs/classes/file-manager.html | 3 +- docs/classes/file-renderer.html | 3 +- docs/classes/file-version.html | 7 +- docs/classes/file-widget.html | 3 +- docs/classes/filterReplace.html | 3 +- docs/classes/fix-special-char-helper.html | 3 +- docs/classes/fix-special-char.html | 3 +- docs/classes/fixstring.html | 3 +- docs/classes/getDisplayName.html | 3 +- docs/classes/ifFilter.html | 3 +- docs/classes/license-picker.html | 3 +- docs/classes/navbar-auth-dropdown.html | 3 +- docs/classes/new-navbar-auth-dropdown.html | 3 +- docs/classes/oauth-popup.html | 3 +- docs/classes/osf-copyright.html | 3 +- docs/classes/osf-footer.html | 3 +- docs/classes/osf-mode-footer.html | 3 +- docs/classes/osf-navbar.html | 3 +- docs/classes/osf-paginator.html | 3 +- docs/classes/osf-services.html | 3 +- docs/classes/pagination-control.html | 3 +- docs/classes/permissions.html | 3 +- docs/classes/providerRegex.html | 3 +- docs/classes/search-dropdown.html | 3 +- docs/classes/search-facet-daterange.html | 3 +- docs/classes/search-facet-language.html | 3 +- docs/classes/search-facet-locked.html | 3 +- docs/classes/search-facet-source.html | 3 +- docs/classes/search-facet-typeahead.html | 3 +- .../classes/search-facet-worktype-button.html | 3 +- .../search-facet-worktype-hierarchy.html | 3 +- docs/classes/search-facet-worktype.html | 3 +- docs/classes/search-help-modal.html | 3 +- docs/classes/search-result.html | 3 +- docs/classes/service-links.html | 3 +- docs/classes/sign-up.html | 3 +- docs/classes/sortOptionDisplay.html | 3 +- docs/classes/tags-widget.html | 3 +- docs/classes/theme.html | 3 +- docs/classes/total-share-results.html | 3 +- docs/data.json | 55 +++++++++++-- docs/files/addon_adapters_osf-adapter.js.html | 3 +- .../addon_authenticators_osf-cookie.js.html | 3 +- .../addon_authenticators_osf-token.js.html | 3 +- .../addon_authorizers_osf-cookie.js.html | 3 +- .../files/addon_authorizers_osf-token.js.html | 3 +- ...n_components_author-link_component.js.html | 3 +- ...mponents_citation-widget_component.js.html | 3 +- ...omponents_comment-detail_component.js.html | 3 +- ..._components_comment-form_component.js.html | 3 +- ..._components_comment-pane_component.js.html | 3 +- ...components_discover-page_component.js.html | 3 +- ...mponents_dropzone-widget_component.js.html | 38 +++++++-- ...ponents_eosf-project-nav_component.js.html | 3 +- ...omponents_faceted-search_component.js.html | 3 +- ...onents_file-browser-icon_component.js.html | 3 +- ...onents_file-browser-item_component.js.html | 25 ++---- ..._components_file-browser_component.js.html | 78 +++++++++++++----- ..._components_file-chooser_component.js.html | 3 +- ...components_file-renderer_component.js.html | 3 +- ..._components_file-version_component.js.html | 20 ++++- ...n_components_file-widget_component.js.html | 3 +- ...omponents_license-picker_component.js.html | 3 +- ...nts_navbar-auth-dropdown_component.js.html | 3 +- ...new-navbar-auth-dropdown_component.js.html | 3 +- ...omponents_new-osf-navbar_component.js.html | 3 +- ...n_components_oauth-popup_component.js.html | 3 +- ...components_osf-copyright_component.js.html | 3 +- ...on_components_osf-footer_component.js.html | 3 +- ...mponents_osf-mode-footer_component.js.html | 3 +- ...on_components_osf-navbar_component.js.html | 3 +- ...components_osf-paginator_component.js.html | 3 +- ...nents_pagination-control_component.js.html | 3 +- ...mponents_search-dropdown_component.js.html | 3 +- ...s_search-facet-daterange_component.js.html | 3 +- ...ts_search-facet-language_component.js.html | 3 +- ...ents_search-facet-locked_component.js.html | 3 +- ...ents_search-facet-source_component.js.html | 3 +- ...s_search-facet-typeahead_component.js.html | 3 +- ...ch-facet-worktype-button_component.js.html | 3 +- ...facet-worktype-hierarchy_component.js.html | 3 +- ...ts_search-facet-worktype_component.js.html | 3 +- ...onents_search-help-modal_component.js.html | 3 +- ...components_search-result_component.js.html | 3 +- ...addon_components_sign-up_component.js.html | 3 +- ...n_components_tags-widget_component.js.html | 3 +- ...ents_total-share-results_component.js.html | 3 +- docs/files/addon_const_permissions.js.html | 3 +- docs/files/addon_const_providerRegex.js.html | 3 +- docs/files/addon_const_service-links.js.html | 3 +- ..._helpers_build-secondary-nav-links.js.html | 23 +++--- docs/files/addon_helpers_elem-id.js.html | 3 +- .../addon_helpers_filter-replace.js.html | 3 +- .../addon_helpers_fix-special-char.js.html | 3 +- .../addon_helpers_get-display-name.js.html | 3 +- docs/files/addon_helpers_if-filter.js.html | 3 +- .../files/addon_helpers_number-format.js.html | 3 +- .../addon_helpers_sort-option-display.js.html | 3 +- docs/files/addon_mixins_analytics.js.html | 3 +- ...don_mixins_cas-authenticated-route.js.html | 3 +- docs/files/addon_mixins_commentable.js.html | 3 +- .../addon_mixins_file-cache-bypass.js.html | 3 +- docs/files/addon_mixins_file-item.js.html | 3 +- .../addon_mixins_generic-data-adapter.js.html | 3 +- docs/files/addon_mixins_host-app-name.js.html | 3 +- .../addon_mixins_infinity-custom.js.html | 3 +- docs/files/addon_mixins_node-actions.js.html | 3 +- ...ixins_osf-agnostic-auth-controller.js.html | 3 +- ...don_mixins_osf-agnostic-auth-route.js.html | 3 +- ...mixins_osf-cookie-login-controller.js.html | 3 +- ...ddon_mixins_osf-cookie-login-route.js.html | 3 +- ..._mixins_osf-token-login-controller.js.html | 3 +- ...addon_mixins_osf-token-login-route.js.html | 3 +- .../addon_mixins_paginated-controller.js.html | 3 +- .../addon_mixins_paginated-route.js.html | 3 +- .../addon_mixins_registration-actions.js.html | 3 +- .../files/addon_mixins_taggable-mixin.js.html | 3 +- docs/files/addon_models_citation.js.html | 3 +- docs/files/addon_models_collection.js.html | 3 +- .../files/addon_models_comment-report.js.html | 3 +- docs/files/addon_models_comment.js.html | 3 +- docs/files/addon_models_contributor.js.html | 3 +- .../addon_models_draft-registration.js.html | 3 +- docs/files/addon_models_file-provider.js.html | 3 +- docs/files/addon_models_file-version.js.html | 3 +- docs/files/addon_models_file.js.html | 8 +- docs/files/addon_models_institution.js.html | 3 +- docs/files/addon_models_log.js.html | 3 +- docs/files/addon_models_metaschema.js.html | 3 +- docs/files/addon_models_node-link.js.html | 3 +- docs/files/addon_models_node.js.html | 3 +- docs/files/addon_models_osf-model.js.html | 3 +- docs/files/addon_models_preprint.js.html | 7 +- docs/files/addon_models_registration.js.html | 3 +- docs/files/addon_models_taxonomy.js.html | 3 +- docs/files/addon_models_user.js.html | 5 +- .../addon_serializers_osf-serializer.js.html | 5 +- .../files/addon_services_current-user.js.html | 3 +- .../files/addon_services_file-manager.js.html | 3 +- docs/files/addon_services_theme.js.html | 3 +- docs/files/addon_transforms_fixstring.js.html | 3 +- docs/files/addon_utils_ajax-helpers.js.html | 3 +- docs/files/addon_utils_auth.js.html | 3 +- docs/files/addon_utils_elastic-query.js.html | 3 +- .../addon_utils_fix-special-char.js.html | 3 +- docs/files/addon_yuidoc-prose.js.html | 3 +- docs/index.html | 3 +- docs/modules/adapters.html | 3 +- docs/modules/authenticators.html | 3 +- docs/modules/authorizers.html | 3 +- docs/modules/components.html | 3 +- docs/modules/const.html | 3 +- docs/modules/ember-osf.html | 10 ++- docs/modules/helpers.html | 3 +- docs/modules/mixins.html | 3 +- docs/modules/models.html | 3 +- docs/modules/serializers.html | 3 +- docs/modules/services.html | 3 +- docs/modules/transforms.html | 3 +- docs/modules/utils.html | 3 +- package.json | 3 +- tests/unit/models/osf-model-test.js | 81 ++++++++++++++++++- yarn.lock | 10 +-- 236 files changed, 791 insertions(+), 326 deletions(-) create mode 100644 addon/components/validated-input/style.scss diff --git a/CHANGELOG.md b/CHANGELOG.md index bd92882e0..aebc7cf13 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,18 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Removed +- ember-data-has-many-query + - Code that uses `model.query()` should update to `model.queryHasMany()` + +### Added +- `osf-model.queryHasMany`, for reliable querying of hasMany relations + +## [0.13.1] - 2018-01-11 +### Changed +- Updated CHANGELOG to reflect 0.13.0 release + +## [0.13.0] - 2018-01-10 ### Added - Util function that handles popover dismissal when clicking off of popover - file-browser properties to: @@ -44,6 +56,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Added model tests for `review-action` - Customize model adapter - `meta.total` to `meta.total_pages` in osf-serializer +- `hasHighlightedSubjects` path in preprint-providers model ### Fixed - Margins for scrollbar on `file-browser` diff --git a/addon/adapters/osf-adapter.js b/addon/adapters/osf-adapter.js index 7675025b5..5614c4f46 100644 --- a/addon/adapters/osf-adapter.js +++ b/addon/adapters/osf-adapter.js @@ -1,7 +1,6 @@ import Ember from 'ember'; import DS from 'ember-data'; -import HasManyQuery from 'ember-data-has-many-query'; import config from 'ember-get-config'; import GenericDataAdapterMixin from 'ember-osf/mixins/generic-data-adapter'; @@ -19,10 +18,9 @@ import { * * @class OsfAdapter * @extends DS.JSONAPIAdapter - * @uses HasManyQuery.RESTAdapterMixin * @uses GenericDataAdapterMixin */ -export default DS.JSONAPIAdapter.extend(HasManyQuery.RESTAdapterMixin, GenericDataAdapterMixin, { +export default DS.JSONAPIAdapter.extend(GenericDataAdapterMixin, { headers: { ACCEPT: 'application/vnd.api+json; version=2.4' }, diff --git a/addon/components/validated-input/style.scss b/addon/components/validated-input/style.scss new file mode 100644 index 000000000..bbd2ef378 --- /dev/null +++ b/addon/components/validated-input/style.scss @@ -0,0 +1,8 @@ +.datepicker.dropdown-menu { + background-color:#FFFFFF; +} + +.datepicker.dropdown-menu, +.datepicker.dropdown-menu * { + box-sizing: content-box; +} diff --git a/addon/mixins/paginated-controller.js b/addon/mixins/paginated-controller.js index eb18b4832..2a5eb9b66 100644 --- a/addon/mixins/paginated-controller.js +++ b/addon/mixins/paginated-controller.js @@ -19,11 +19,11 @@ export default Ember.Mixin.create({ page_size: null, // Number of results per page. Param may be omitted. totalResults: Ember.computed('model', function() { - return this.get('model.meta.pagination.total'); + return this.get('model.meta.total'); }), totalPages: Ember.computed('model', 'totalResults', function() { let results = this.get('totalResults'); - let pageSize = this.get('model.meta.pagination.per_page'); + let pageSize = this.get('model.meta.per_page'); return Math.ceil(results / pageSize); }), diff --git a/addon/models/osf-model.js b/addon/models/osf-model.js index 4a5b36a80..b0c6873a1 100644 --- a/addon/models/osf-model.js +++ b/addon/models/osf-model.js @@ -1,7 +1,6 @@ import Ember from 'ember'; import DS from 'ember-data'; - -import HasManyQuery from 'ember-data-has-many-query'; +import { authenticatedAJAX } from 'ember-osf/utils/ajax-helpers'; /** * @module ember-osf @@ -14,7 +13,7 @@ import HasManyQuery from 'ember-data-has-many-query'; * @class OsfModel * @public */ -export default DS.Model.extend(HasManyQuery.ModelMixin, { +export default DS.Model.extend({ links: DS.attr('links'), embeds: DS.attr('embed'), @@ -65,11 +64,55 @@ export default DS.Model.extend(HasManyQuery.ModelMixin, { remove: relation.canonicalMembers.list.filter(m => currentIds.indexOf(m.getRecord().get('id')) === -1) }; - var other = this.get('_dirtyRelationships.${rel}') || {}; + var other = this.get(`_dirtyRelationships.${rel}`) || {}; Ember.merge(other, changes); this.set(`_dirtyRelationships.${rel}`, other); } }); return this._super(...arguments); - } + }, + + /* + * Query a hasMany relationship with query params + * + * @method queryHasMany + * @param {String} propertyName Name of a hasMany relationship on the model + * @param {Object} queryParams A hash to be serialized into the query string of the request + * @param {Object} [ajaxOptions] A hash of options to be passed to jQuery.ajax + * @returns {ArrayPromiseProxy} Promise-like array proxy, resolves to the records fetched + */ + queryHasMany(propertyName, queryParams, ajaxOptions) { + const reference = this.hasMany(propertyName); + const promise = new Ember.RSVP.Promise((resolve, reject) => { + // HACK: ember-data discards/ignores the link if an object on the belongsTo side + // came first. In that case, grab the link where we expect it from OSF's API + const url = reference.link() || this.get(`links.relationships.${propertyName}.links.related.href`); + if (!url) { + reject(`Could not find a link for '${propertyName}' relationship`); + return; + } + const options = Ember.merge({ + url, + data: queryParams, + headers: Ember.get(this.store.adapterFor(this.constructor.modelName), 'headers'), + }, ajaxOptions); + + authenticatedAJAX(options).then( + Ember.run.bind(this, this.__queryHasManyDone, resolve), + reject + ); + }); + + const ArrayPromiseProxy = Ember.ArrayProxy.extend(Ember.PromiseProxyMixin); + return ArrayPromiseProxy.create({ promise }); + }, + + __queryHasManyDone(resolve, payload) { + const store = this.get('store'); + store.pushPayload(payload); + const records = payload.data.map(datum => store.peekRecord(datum.type, datum.id)); + records.meta = payload.meta; + records.links = payload.links; + resolve(records); + }, }); diff --git a/addon/models/preprint-provider.js b/addon/models/preprint-provider.js index 1f45a7783..8151dc99a 100644 --- a/addon/models/preprint-provider.js +++ b/addon/models/preprint-provider.js @@ -30,5 +30,5 @@ export default OsfModel.extend({ preprints: DS.hasMany('preprint', { inverse: 'provider', async: true }), licensesAcceptable: DS.hasMany('license', { inverse: null }), - hasHighlightedSubjects: Ember.computed.alias('data.links.relationships.highlighted_taxonomies.links.related.meta.has_highlighted_subjects'), + hasHighlightedSubjects: Ember.computed.alias('links.relationships.highlighted_taxonomies.links.related.meta.has_highlighted_subjects'), }); diff --git a/addon/serializers/osf-serializer.js b/addon/serializers/osf-serializer.js index 1c9b19fc1..a8f9d584f 100644 --- a/addon/serializers/osf-serializer.js +++ b/addon/serializers/osf-serializer.js @@ -134,13 +134,12 @@ export default DS.JSONAPISerializer.extend({ } }, - normalizeArrayResponse(store, primaryModelClass, payload) { - // Ember data does not yet support pagination. For any request that returns more than one result, add pagination data - // under meta, and then calculate total pages to be loaded. + normalizeArrayResponse() { let documentHash = this._super(...arguments); - documentHash.meta = documentHash.meta || {}; - documentHash.meta.pagination = Ember.$.extend(true, {}, Ember.get(payload || {}, 'meta')); - documentHash.meta.total_pages = Math.ceil(documentHash.meta.pagination.total / documentHash.meta.pagination.per_page); + if (documentHash.meta !== undefined && documentHash.meta.total !== undefined && documentHash.meta.per_page !== undefined) { + // For any request that returns more than one result, calculate total pages to be loaded. + documentHash.meta.total_pages = Math.ceil(documentHash.meta.total / documentHash.meta.per_page); + } return documentHash; } }); diff --git a/addon/services/file-manager.js b/addon/services/file-manager.js index ef0c15759..8e0fc68ab 100644 --- a/addon/services/file-manager.js +++ b/addon/services/file-manager.js @@ -417,7 +417,7 @@ export default Ember.Service.extend({ * rejects with an error message. */ _getNewFileInfo(parentFolder, name) { - let p = parentFolder.query('files', { + let p = parentFolder.queryHasMany('files', { 'filter[name]': name }); return p.then((files) => { diff --git a/addon/styles/addon.scss b/addon/styles/addon.scss index e77967fff..e74491a46 100644 --- a/addon/styles/addon.scss +++ b/addon/styles/addon.scss @@ -24,3 +24,4 @@ @import 'components/tags-widget/style'; @import 'components/donate-banner/style'; @import 'components/file-version/style'; +@import 'components/validated-input/style'; diff --git a/addon/utils/load-relationship.js b/addon/utils/load-relationship.js index 7e8cab427..91ff5e84a 100644 --- a/addon/utils/load-relationship.js +++ b/addon/utils/load-relationship.js @@ -27,11 +27,11 @@ export default function loadAll(model, relationship, dest, options = {}) { query = Ember.merge(query, options || {}); Ember.set(model, 'query-params', query); - return model.query(relationship, query).then(results => { + return model.queryHasMany(relationship, query).then(results => { dest.pushObjects(results.toArray()); if (results.meta) { - var total = results.meta.pagination.total; - var pageSize = results.meta.pagination.per_page; + var total = results.meta.total; + var pageSize = results.meta.per_page; var remaining = total - (page * pageSize); if (remaining > 0) { query.page = page + 1; diff --git a/docs/api.js b/docs/api.js index 531fcc7f7..d67e530f1 100644 --- a/docs/api.js +++ b/docs/api.js @@ -88,6 +88,7 @@ YUI.add("yuidoc-meta", function(Y) { "osf-navbar", "osf-paginator", "osf-services", + "outside-click", "pagination-control", "permissions", "providerRegex", diff --git a/docs/classes/Analytics.html b/docs/classes/Analytics.html index dab8cc571..71348e17b 100644 --- a/docs/classes/Analytics.html +++ b/docs/classes/Analytics.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/CasAuthenticatedRouteMixin.html b/docs/classes/CasAuthenticatedRouteMixin.html index 431f7c1b1..363384807 100644 --- a/docs/classes/CasAuthenticatedRouteMixin.html +++ b/docs/classes/CasAuthenticatedRouteMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/Citation.html b/docs/classes/Citation.html index 2225c4bed..e97e58ac3 100644 --- a/docs/classes/Citation.html +++ b/docs/classes/Citation.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/Collection.html b/docs/classes/Collection.html index 5dae236a1..a10a97255 100644 --- a/docs/classes/Collection.html +++ b/docs/classes/Collection.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/Comment.html b/docs/classes/Comment.html index 142ed9ab5..bba5834e5 100644 --- a/docs/classes/Comment.html +++ b/docs/classes/Comment.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/CommentReport.html b/docs/classes/CommentReport.html index 8795dbfc7..fb7204c89 100644 --- a/docs/classes/CommentReport.html +++ b/docs/classes/CommentReport.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/CommentableMixin.html b/docs/classes/CommentableMixin.html index b32c74639..3b49d375f 100644 --- a/docs/classes/CommentableMixin.html +++ b/docs/classes/CommentableMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/Contributor.html b/docs/classes/Contributor.html index 3d75113a7..590c2fab1 100644 --- a/docs/classes/Contributor.html +++ b/docs/classes/Contributor.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/DraftRegistration.html b/docs/classes/DraftRegistration.html index 7bfce40ef..c3bc3be1b 100644 --- a/docs/classes/DraftRegistration.html +++ b/docs/classes/DraftRegistration.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/File.html b/docs/classes/File.html index b85dd60b0..a58923723 100644 --- a/docs/classes/File.html +++ b/docs/classes/File.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/FileCacheBypassMixin.html b/docs/classes/FileCacheBypassMixin.html index 6b76623b5..d5c844088 100644 --- a/docs/classes/FileCacheBypassMixin.html +++ b/docs/classes/FileCacheBypassMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/FileItemMixin.html b/docs/classes/FileItemMixin.html index 47d14308d..8942fa5ec 100644 --- a/docs/classes/FileItemMixin.html +++ b/docs/classes/FileItemMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/FileProvider.html b/docs/classes/FileProvider.html index 2c419fe1f..e054beb42 100644 --- a/docs/classes/FileProvider.html +++ b/docs/classes/FileProvider.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/FileVersion.html b/docs/classes/FileVersion.html index bf783d7a4..df58d04d4 100644 --- a/docs/classes/FileVersion.html +++ b/docs/classes/FileVersion.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/GenericDataADapter.html b/docs/classes/GenericDataADapter.html index 48b306da2..f0b72a41c 100644 --- a/docs/classes/GenericDataADapter.html +++ b/docs/classes/GenericDataADapter.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/HostAppNameMixin.html b/docs/classes/HostAppNameMixin.html index 35adb5c35..95ffc5116 100644 --- a/docs/classes/HostAppNameMixin.html +++ b/docs/classes/HostAppNameMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/InfinityCustomMixin.html b/docs/classes/InfinityCustomMixin.html index eca7e1cbb..1bd57f4de 100644 --- a/docs/classes/InfinityCustomMixin.html +++ b/docs/classes/InfinityCustomMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/Institution.html b/docs/classes/Institution.html index 04e1dc169..563a413e3 100644 --- a/docs/classes/Institution.html +++ b/docs/classes/Institution.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/Log.html b/docs/classes/Log.html index e72c273d9..3a0dbb45e 100644 --- a/docs/classes/Log.html +++ b/docs/classes/Log.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/Metaschema.html b/docs/classes/Metaschema.html index 10aaeaf96..8ba7f5201 100644 --- a/docs/classes/Metaschema.html +++ b/docs/classes/Metaschema.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/Node.html b/docs/classes/Node.html index 33d7fc57f..3481c653a 100644 --- a/docs/classes/Node.html +++ b/docs/classes/Node.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/NodeActionsMixin.html b/docs/classes/NodeActionsMixin.html index e228369ae..997b195c9 100644 --- a/docs/classes/NodeActionsMixin.html +++ b/docs/classes/NodeActionsMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/NodeLink.html b/docs/classes/NodeLink.html index 355e4b272..4738952d2 100644 --- a/docs/classes/NodeLink.html +++ b/docs/classes/NodeLink.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfAdapter.html b/docs/classes/OsfAdapter.html index 1a94421f1..10498fc87 100644 --- a/docs/classes/OsfAdapter.html +++ b/docs/classes/OsfAdapter.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfAgnosticAuthController.html b/docs/classes/OsfAgnosticAuthController.html index 030d77e2c..3a9d879f1 100644 --- a/docs/classes/OsfAgnosticAuthController.html +++ b/docs/classes/OsfAgnosticAuthController.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfAgnosticAuthRoute.html b/docs/classes/OsfAgnosticAuthRoute.html index bb7a8dc2d..253bbf5b4 100644 --- a/docs/classes/OsfAgnosticAuthRoute.html +++ b/docs/classes/OsfAgnosticAuthRoute.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfCookieAuthenticator.html b/docs/classes/OsfCookieAuthenticator.html index 3fe4b6fb3..0fd2be410 100644 --- a/docs/classes/OsfCookieAuthenticator.html +++ b/docs/classes/OsfCookieAuthenticator.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfCookieAuthorizer.html b/docs/classes/OsfCookieAuthorizer.html index a246be960..a9eefc6d4 100644 --- a/docs/classes/OsfCookieAuthorizer.html +++ b/docs/classes/OsfCookieAuthorizer.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfCookieLoginController.html b/docs/classes/OsfCookieLoginController.html index b23fbd50e..a60631bbe 100644 --- a/docs/classes/OsfCookieLoginController.html +++ b/docs/classes/OsfCookieLoginController.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfCookieLoginRoute.html b/docs/classes/OsfCookieLoginRoute.html index 0baef6d2f..456036499 100644 --- a/docs/classes/OsfCookieLoginRoute.html +++ b/docs/classes/OsfCookieLoginRoute.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfModel.html b/docs/classes/OsfModel.html index 158396de8..1705f2969 100644 --- a/docs/classes/OsfModel.html +++ b/docs/classes/OsfModel.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfSerializer.html b/docs/classes/OsfSerializer.html index e1758b844..feb415312 100644 --- a/docs/classes/OsfSerializer.html +++ b/docs/classes/OsfSerializer.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfTokenAuthenticator.html b/docs/classes/OsfTokenAuthenticator.html index 31d4e1a1d..6f8397709 100644 --- a/docs/classes/OsfTokenAuthenticator.html +++ b/docs/classes/OsfTokenAuthenticator.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfTokenAuthorizer.html b/docs/classes/OsfTokenAuthorizer.html index dbf7a9590..2cb794051 100644 --- a/docs/classes/OsfTokenAuthorizer.html +++ b/docs/classes/OsfTokenAuthorizer.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfTokenLoginControllerMixin.html b/docs/classes/OsfTokenLoginControllerMixin.html index f500bbe7d..7d40275be 100644 --- a/docs/classes/OsfTokenLoginControllerMixin.html +++ b/docs/classes/OsfTokenLoginControllerMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/OsfTokenLoginRouteMixin.html b/docs/classes/OsfTokenLoginRouteMixin.html index 7f31c9456..ff0bd3756 100644 --- a/docs/classes/OsfTokenLoginRouteMixin.html +++ b/docs/classes/OsfTokenLoginRouteMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/PaginatedControllerMixin.html b/docs/classes/PaginatedControllerMixin.html index f984bee67..6c7e0d162 100644 --- a/docs/classes/PaginatedControllerMixin.html +++ b/docs/classes/PaginatedControllerMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/PaginatedRouteMixin.html b/docs/classes/PaginatedRouteMixin.html index 86a7b8ad7..b486bd5eb 100644 --- a/docs/classes/PaginatedRouteMixin.html +++ b/docs/classes/PaginatedRouteMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/Preprint.html b/docs/classes/Preprint.html index 863422f4f..2fed25707 100644 --- a/docs/classes/Preprint.html +++ b/docs/classes/Preprint.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/Registration.html b/docs/classes/Registration.html index f368bce0a..ef760fed9 100644 --- a/docs/classes/Registration.html +++ b/docs/classes/Registration.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/RegistrationActionsMixin.html b/docs/classes/RegistrationActionsMixin.html index 5a785f4b9..4b7c04725 100644 --- a/docs/classes/RegistrationActionsMixin.html +++ b/docs/classes/RegistrationActionsMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/TaggableMixin.html b/docs/classes/TaggableMixin.html index bb9dfe4cd..b887d3cb9 100644 --- a/docs/classes/TaggableMixin.html +++ b/docs/classes/TaggableMixin.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/Taxonomy.html b/docs/classes/Taxonomy.html index 26457d22f..91ca4b757 100644 --- a/docs/classes/Taxonomy.html +++ b/docs/classes/Taxonomy.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/User.html b/docs/classes/User.html index 0250929f7..5b54139ee 100644 --- a/docs/classes/User.html +++ b/docs/classes/User.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/ajax-helpers.html b/docs/classes/ajax-helpers.html index 5ec54b017..cbbd3bf83 100644 --- a/docs/classes/ajax-helpers.html +++ b/docs/classes/ajax-helpers.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/auth.html b/docs/classes/auth.html index ed018a4af..85a62be05 100644 --- a/docs/classes/auth.html +++ b/docs/classes/auth.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/author-link.html b/docs/classes/author-link.html index e19f68487..6d551dae6 100644 --- a/docs/classes/author-link.html +++ b/docs/classes/author-link.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/buildSecondaryNavLinks.html b/docs/classes/buildSecondaryNavLinks.html index 868a44358..642cf744a 100644 --- a/docs/classes/buildSecondaryNavLinks.html +++ b/docs/classes/buildSecondaryNavLinks.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/citation-widget.html b/docs/classes/citation-widget.html index 732857db0..05f43f7e7 100644 --- a/docs/classes/citation-widget.html +++ b/docs/classes/citation-widget.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/comment-detail.html b/docs/classes/comment-detail.html index 3744bece2..bfd30ba93 100644 --- a/docs/classes/comment-detail.html +++ b/docs/classes/comment-detail.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/comment-form.html b/docs/classes/comment-form.html index 3b1a1b50f..1d1b87bc2 100644 --- a/docs/classes/comment-form.html +++ b/docs/classes/comment-form.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/comment-pane.html b/docs/classes/comment-pane.html index 5e403ec24..c8e0edb3a 100644 --- a/docs/classes/comment-pane.html +++ b/docs/classes/comment-pane.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/current-user.html b/docs/classes/current-user.html index f274e28e9..704525612 100644 --- a/docs/classes/current-user.html +++ b/docs/classes/current-user.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/discover-page.html b/docs/classes/discover-page.html index 2cebf26a9..d4dc1c2d7 100644 --- a/docs/classes/discover-page.html +++ b/docs/classes/discover-page.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/dropzone-widget.html b/docs/classes/dropzone-widget.html index 377a60bc2..ffae55ce4 100644 --- a/docs/classes/dropzone-widget.html +++ b/docs/classes/dropzone-widget.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -200,7 +201,7 @@

    dropzone-widget Class

    Module: components
    @@ -218,7 +219,8 @@

    dropzone-widget Class

    buildUrl=buildUrl success=attrs.success defaultMessage=defaultMessage - options=dropzoneOptions}} + options=dropzoneOptions + clickable=clickable}}
    diff --git a/docs/classes/elastic-query.html b/docs/classes/elastic-query.html index 83a009000..f9fd7ae65 100644 --- a/docs/classes/elastic-query.html +++ b/docs/classes/elastic-query.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/elem-id.html b/docs/classes/elem-id.html index fabf598e1..ce664a5f1 100644 --- a/docs/classes/elem-id.html +++ b/docs/classes/elem-id.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/eosf-project-nav.html b/docs/classes/eosf-project-nav.html index 03e5e59ca..c8d36171e 100644 --- a/docs/classes/eosf-project-nav.html +++ b/docs/classes/eosf-project-nav.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/faceted-search.html b/docs/classes/faceted-search.html index 225927fd3..9b9befc88 100644 --- a/docs/classes/faceted-search.html +++ b/docs/classes/faceted-search.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/file-browser-icon.html b/docs/classes/file-browser-icon.html index 5d92ab58b..fef870e2e 100644 --- a/docs/classes/file-browser-icon.html +++ b/docs/classes/file-browser-icon.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/file-browser.html b/docs/classes/file-browser.html index f0d1cdecb..24b62c03b 100644 --- a/docs/classes/file-browser.html +++ b/docs/classes/file-browser.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -200,7 +201,7 @@

    file-browser Class

    Module: ember-osf diff --git a/docs/classes/file-chooser component.html b/docs/classes/file-chooser component.html index 732546f0c..5eaffcb0e 100644 --- a/docs/classes/file-chooser component.html +++ b/docs/classes/file-chooser component.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/file-manager.html b/docs/classes/file-manager.html index db802e0cd..1a8c22568 100644 --- a/docs/classes/file-manager.html +++ b/docs/classes/file-manager.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/file-renderer.html b/docs/classes/file-renderer.html index 83a69c4f2..f8ce7132e 100644 --- a/docs/classes/file-renderer.html +++ b/docs/classes/file-renderer.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/file-version.html b/docs/classes/file-version.html index 80693c450..13ce78ba3 100644 --- a/docs/classes/file-version.html +++ b/docs/classes/file-version.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -214,7 +215,9 @@

    file-version Class

    Sample usage:

    {{file-version
     version=version
    -download='download'}}
    +download='download'
    +currentVersion=currentVersion
    +versionUrl='versionUrl'}}
     
    diff --git a/docs/classes/file-widget.html b/docs/classes/file-widget.html index ba6a6d437..a4d8a4c8b 100644 --- a/docs/classes/file-widget.html +++ b/docs/classes/file-widget.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/filterReplace.html b/docs/classes/filterReplace.html index 4c80cd7a4..39c18b4fd 100644 --- a/docs/classes/filterReplace.html +++ b/docs/classes/filterReplace.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/fix-special-char-helper.html b/docs/classes/fix-special-char-helper.html index 8061e0a63..2c051c582 100644 --- a/docs/classes/fix-special-char-helper.html +++ b/docs/classes/fix-special-char-helper.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/fix-special-char.html b/docs/classes/fix-special-char.html index 38816dbd4..c032b8f30 100644 --- a/docs/classes/fix-special-char.html +++ b/docs/classes/fix-special-char.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/fixstring.html b/docs/classes/fixstring.html index d2bf0b946..e9c4c90d8 100644 --- a/docs/classes/fixstring.html +++ b/docs/classes/fixstring.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/getDisplayName.html b/docs/classes/getDisplayName.html index 5b0fdc0c4..eed55b17d 100644 --- a/docs/classes/getDisplayName.html +++ b/docs/classes/getDisplayName.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/ifFilter.html b/docs/classes/ifFilter.html index 59289ef87..567241c5d 100644 --- a/docs/classes/ifFilter.html +++ b/docs/classes/ifFilter.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/license-picker.html b/docs/classes/license-picker.html index 7d835c028..4610af5f9 100644 --- a/docs/classes/license-picker.html +++ b/docs/classes/license-picker.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/navbar-auth-dropdown.html b/docs/classes/navbar-auth-dropdown.html index fb7a40277..df286be3d 100644 --- a/docs/classes/navbar-auth-dropdown.html +++ b/docs/classes/navbar-auth-dropdown.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/new-navbar-auth-dropdown.html b/docs/classes/new-navbar-auth-dropdown.html index 7fa8ad3da..4449aea1b 100644 --- a/docs/classes/new-navbar-auth-dropdown.html +++ b/docs/classes/new-navbar-auth-dropdown.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/oauth-popup.html b/docs/classes/oauth-popup.html index ed1839c4d..633fa1b0c 100644 --- a/docs/classes/oauth-popup.html +++ b/docs/classes/oauth-popup.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/osf-copyright.html b/docs/classes/osf-copyright.html index c621f2a9d..90444847c 100644 --- a/docs/classes/osf-copyright.html +++ b/docs/classes/osf-copyright.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/osf-footer.html b/docs/classes/osf-footer.html index e43102175..5095093e1 100644 --- a/docs/classes/osf-footer.html +++ b/docs/classes/osf-footer.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/osf-mode-footer.html b/docs/classes/osf-mode-footer.html index b71c687bf..53b7fed1c 100644 --- a/docs/classes/osf-mode-footer.html +++ b/docs/classes/osf-mode-footer.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/osf-navbar.html b/docs/classes/osf-navbar.html index 425c1edf4..6e8a4992f 100644 --- a/docs/classes/osf-navbar.html +++ b/docs/classes/osf-navbar.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/osf-paginator.html b/docs/classes/osf-paginator.html index 932fedb66..a0cc161e7 100644 --- a/docs/classes/osf-paginator.html +++ b/docs/classes/osf-paginator.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/osf-services.html b/docs/classes/osf-services.html index 742d2e8eb..39a24da37 100644 --- a/docs/classes/osf-services.html +++ b/docs/classes/osf-services.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/pagination-control.html b/docs/classes/pagination-control.html index 560a8dd88..e4e55f0f3 100644 --- a/docs/classes/pagination-control.html +++ b/docs/classes/pagination-control.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/permissions.html b/docs/classes/permissions.html index 43c5109d9..fe0ce0e0d 100644 --- a/docs/classes/permissions.html +++ b/docs/classes/permissions.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/providerRegex.html b/docs/classes/providerRegex.html index d98689321..081034b2b 100644 --- a/docs/classes/providerRegex.html +++ b/docs/classes/providerRegex.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/search-dropdown.html b/docs/classes/search-dropdown.html index c0de93973..a16643df7 100644 --- a/docs/classes/search-dropdown.html +++ b/docs/classes/search-dropdown.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/search-facet-daterange.html b/docs/classes/search-facet-daterange.html index c33e973c5..1dc37f002 100644 --- a/docs/classes/search-facet-daterange.html +++ b/docs/classes/search-facet-daterange.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/search-facet-language.html b/docs/classes/search-facet-language.html index 19d423dfe..78f6aeebc 100644 --- a/docs/classes/search-facet-language.html +++ b/docs/classes/search-facet-language.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/search-facet-locked.html b/docs/classes/search-facet-locked.html index b8d21515f..7761057ac 100644 --- a/docs/classes/search-facet-locked.html +++ b/docs/classes/search-facet-locked.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/search-facet-source.html b/docs/classes/search-facet-source.html index 935c1691b..a04e33cd1 100644 --- a/docs/classes/search-facet-source.html +++ b/docs/classes/search-facet-source.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/search-facet-typeahead.html b/docs/classes/search-facet-typeahead.html index 08f4bff25..774785f15 100644 --- a/docs/classes/search-facet-typeahead.html +++ b/docs/classes/search-facet-typeahead.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/search-facet-worktype-button.html b/docs/classes/search-facet-worktype-button.html index 16ee9a4ce..7cb27a534 100644 --- a/docs/classes/search-facet-worktype-button.html +++ b/docs/classes/search-facet-worktype-button.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/search-facet-worktype-hierarchy.html b/docs/classes/search-facet-worktype-hierarchy.html index 26265b1cd..42c39918f 100644 --- a/docs/classes/search-facet-worktype-hierarchy.html +++ b/docs/classes/search-facet-worktype-hierarchy.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/search-facet-worktype.html b/docs/classes/search-facet-worktype.html index 2697b0602..9eec6464e 100644 --- a/docs/classes/search-facet-worktype.html +++ b/docs/classes/search-facet-worktype.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/search-help-modal.html b/docs/classes/search-help-modal.html index 478209808..2ce08909f 100644 --- a/docs/classes/search-help-modal.html +++ b/docs/classes/search-help-modal.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/search-result.html b/docs/classes/search-result.html index 2b2357322..1607f757f 100644 --- a/docs/classes/search-result.html +++ b/docs/classes/search-result.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/service-links.html b/docs/classes/service-links.html index a87aa2521..c49ad5303 100644 --- a/docs/classes/service-links.html +++ b/docs/classes/service-links.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/sign-up.html b/docs/classes/sign-up.html index 891528816..358e67023 100644 --- a/docs/classes/sign-up.html +++ b/docs/classes/sign-up.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/sortOptionDisplay.html b/docs/classes/sortOptionDisplay.html index f03aa8abc..190ad3fb7 100644 --- a/docs/classes/sortOptionDisplay.html +++ b/docs/classes/sortOptionDisplay.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/tags-widget.html b/docs/classes/tags-widget.html index 1260b3701..c26b317a4 100644 --- a/docs/classes/tags-widget.html +++ b/docs/classes/tags-widget.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/theme.html b/docs/classes/theme.html index 6e3c4fa7c..689431458 100644 --- a/docs/classes/theme.html +++ b/docs/classes/theme.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/classes/total-share-results.html b/docs/classes/total-share-results.html index fe77e0bea..139b7005c 100644 --- a/docs/classes/total-share-results.html +++ b/docs/classes/total-share-results.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/data.json b/docs/data.json index 6e2878fbe..8e8043324 100644 --- a/docs/data.json +++ b/docs/data.json @@ -4,7 +4,7 @@ "description": "Ember components for interacting with the Open Science Framework", "url": "https://github.com/CenterForOpenScience/ember-osf", "logo": "https://cdn.cos.io/static/images/cos_wide.png", - "version": "0.12.0" + "version": "0.13.1" }, "files": { "addon/adapters/osf-adapter.js": { @@ -1021,6 +1021,15 @@ "fors": {}, "namespaces": {} }, + "addon/utils/outside-click.js": { + "name": "addon/utils/outside-click.js", + "modules": {}, + "classes": { + "outside-click": 1 + }, + "fors": {}, + "namespaces": {} + }, "addon/yuidoc-prose.js": { "name": "addon/yuidoc-prose.js", "modules": { @@ -1154,13 +1163,14 @@ "auth": 1, "elastic-query": 1, "fix-special-char": 1, - "human-file-size": 1 + "human-file-size": 1, + "outside-click": 1 }, "fors": {}, "namespaces": {}, "tag": "module", - "file": "addon/utils/human-file-size.js", - "line": 6, + "file": "addon/utils/outside-click.js", + "line": 3, "description": "Reusable ember models and components for interacting with the Open Science Framework", "itemtype": "main" }, @@ -1714,8 +1724,8 @@ "submodule": "components", "namespace": "", "file": "addon/components/dropzone-widget/component.js", - "line": 13, - "description": "Support file uploads via dropzone.\nAccepts dropzone event listeners as parameters (e.g. success, error, addedfile)\n\nSample usage:\n```handlebars\n{{dropzone-widget\n preUpload=attrs.preUpload\n buildUrl=buildUrl\n success=attrs.success\n defaultMessage=defaultMessage\n options=dropzoneOptions}}\n```" + "line": 14, + "description": "Support file uploads via dropzone.\nAccepts dropzone event listeners as parameters (e.g. success, error, addedfile)\n\nSample usage:\n```handlebars\n{{dropzone-widget\n preUpload=attrs.preUpload\n buildUrl=buildUrl\n success=attrs.success\n defaultMessage=defaultMessage\n options=dropzoneOptions\n clickable=clickable}}\n```" }, "eosf-project-nav": { "name": "eosf-project-nav", @@ -1757,7 +1767,7 @@ "module": "ember-osf", "namespace": "", "file": "addon/components/file-browser/component.js", - "line": 6, + "line": 9, "description": "File browser widget\n\nSample usage:\n```handlebars\n{{file-browser}}\n```" }, "file-browser-icon": { @@ -1833,7 +1843,7 @@ "namespace": "", "file": "addon/components/file-version/component.js", "line": 9, - "description": "Display information about one revision of a file\n\nSample usage:\n```handlebars\n{{file-version\nversion=version\ndownload='download'}}\n```" + "description": "Display information about one revision of a file\n\nSample usage:\n```handlebars\n{{file-version\nversion=version\ndownload='download'\ncurrentVersion=currentVersion\nversionUrl='versionUrl'}}\n```" }, "file-widget": { "name": "file-widget", @@ -3287,6 +3297,20 @@ "namespace": "", "file": "addon/utils/human-file-size.js", "line": 6 + }, + "outside-click": { + "name": "outside-click", + "shortname": "outside-click", + "classitems": [], + "plugins": [], + "extensions": [], + "plugin_for": [], + "extension_for": [], + "module": "ember-osf", + "namespace": "", + "file": "addon/utils/outside-click.js", + "line": 3, + "description": "Dismisses popovers on outside click" } }, "elements": {}, @@ -6063,6 +6087,21 @@ "class": "human-file-size", "module": "ember-osf", "submodule": "utils" + }, + { + "file": "addon/utils/outside-click.js", + "line": 8, + "itemtype": "method", + "name": "outsideClick", + "params": [ + { + "name": "clickFunction", + "description": "", + "type": "Function" + } + ], + "class": "outside-click", + "module": "ember-osf" } ], "warnings": [] diff --git a/docs/files/addon_adapters_osf-adapter.js.html b/docs/files/addon_adapters_osf-adapter.js.html index 77e296433..bb8a0b792 100644 --- a/docs/files/addon_adapters_osf-adapter.js.html +++ b/docs/files/addon_adapters_osf-adapter.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_authenticators_osf-cookie.js.html b/docs/files/addon_authenticators_osf-cookie.js.html index edc946793..08ad53a30 100644 --- a/docs/files/addon_authenticators_osf-cookie.js.html +++ b/docs/files/addon_authenticators_osf-cookie.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_authenticators_osf-token.js.html b/docs/files/addon_authenticators_osf-token.js.html index 7dd0da972..03ca5eff8 100644 --- a/docs/files/addon_authenticators_osf-token.js.html +++ b/docs/files/addon_authenticators_osf-token.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_authorizers_osf-cookie.js.html b/docs/files/addon_authorizers_osf-cookie.js.html index 0030fe803..ba4df7f54 100644 --- a/docs/files/addon_authorizers_osf-cookie.js.html +++ b/docs/files/addon_authorizers_osf-cookie.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_authorizers_osf-token.js.html b/docs/files/addon_authorizers_osf-token.js.html index d787338bf..2a5d3d0ca 100644 --- a/docs/files/addon_authorizers_osf-token.js.html +++ b/docs/files/addon_authorizers_osf-token.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_author-link_component.js.html b/docs/files/addon_components_author-link_component.js.html index d04fc852d..0198706b2 100644 --- a/docs/files/addon_components_author-link_component.js.html +++ b/docs/files/addon_components_author-link_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_citation-widget_component.js.html b/docs/files/addon_components_citation-widget_component.js.html index b7e0d4316..3174ca870 100644 --- a/docs/files/addon_components_citation-widget_component.js.html +++ b/docs/files/addon_components_citation-widget_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_comment-detail_component.js.html b/docs/files/addon_components_comment-detail_component.js.html index 7121ac831..8da558265 100644 --- a/docs/files/addon_components_comment-detail_component.js.html +++ b/docs/files/addon_components_comment-detail_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_comment-form_component.js.html b/docs/files/addon_components_comment-form_component.js.html index 1bfa6dc6d..814fa036a 100644 --- a/docs/files/addon_components_comment-form_component.js.html +++ b/docs/files/addon_components_comment-form_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_comment-pane_component.js.html b/docs/files/addon_components_comment-pane_component.js.html index 57c54cc7c..0c0426574 100644 --- a/docs/files/addon_components_comment-pane_component.js.html +++ b/docs/files/addon_components_comment-pane_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_discover-page_component.js.html b/docs/files/addon_components_discover-page_component.js.html index db946b4e7..2f8ba19ee 100644 --- a/docs/files/addon_components_discover-page_component.js.html +++ b/docs/files/addon_components_discover-page_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_dropzone-widget_component.js.html b/docs/files/addon_components_dropzone-widget_component.js.html index 189c81d85..537919cc6 100644 --- a/docs/files/addon_components_dropzone-widget_component.js.html +++ b/docs/files/addon_components_dropzone-widget_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -203,6 +204,7 @@

    File: addon/components/dropzone-widget/component.js

    File: addon/components/dropzone-widget/component.jsFile: addon/components/dropzone-widget/component.jsFile: addon/components/dropzone-widget/component.jsFile: addon/components/dropzone-widget/component.jsFile: addon/components/dropzone-widget/component.jsFile: addon/components/dropzone-widget/component.js
    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_faceted-search_component.js.html b/docs/files/addon_components_faceted-search_component.js.html index d03a3f4b5..a522a8c5f 100644 --- a/docs/files/addon_components_faceted-search_component.js.html +++ b/docs/files/addon_components_faceted-search_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_file-browser-icon_component.js.html b/docs/files/addon_components_file-browser-icon_component.js.html index 950cad1b9..752c0ec71 100644 --- a/docs/files/addon_components_file-browser-icon_component.js.html +++ b/docs/files/addon_components_file-browser-icon_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_file-browser-item_component.js.html b/docs/files/addon_components_file-browser-item_component.js.html index e9dd96b9b..ffd2d21d0 100644 --- a/docs/files/addon_components_file-browser-item_component.js.html +++ b/docs/files/addon_components_file-browser-item_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -204,6 +205,8 @@

    File: addon/components/file-browser-item/component.jsFile: addon/components/file-browser-item/component.jsFile: addon/components/file-browser-item/component.jsFile: addon/components/file-browser-item/component.js

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -203,6 +204,9 @@

    File: addon/components/file-browser/component.js

    import layout from './template'; import loadAll from 'ember-osf/utils/load-relationship'; +import outsideClick from 'ember-osf/utils/outside-click'; +import Analytics from '../../mixins/analytics'; +import pathJoin from 'ember-osf/utils/path-join'; /** * File browser widget @@ -213,11 +217,11 @@

    File: addon/components/file-browser/component.js

    * ``` * @class file-browser */ -export default Ember.Component.extend({ +export default Ember.Component.extend(Analytics, { // TODO: Improve documentation in the future layout, //Can be overwritten to have a trimmed down display, these are all the options available to be displayed - display: Ember.A(['header', 'share-link-column', 'size-column', 'version-column', 'downloads-column', 'modified-column', 'delete-button', 'rename-button', 'download-button', 'view-button', 'info-button', 'upload-button']), + display: Ember.A(['header', 'size-column', 'version-column', 'downloads-column', 'modified-column', 'delete-button', 'rename-button', 'download-button', 'view-button', 'info-button', 'upload-button', 'share-button']), store: Ember.inject.service(), toast: Ember.inject.service(), classNames: ['file-browser'], @@ -228,16 +232,22 @@

    File: addon/components/file-browser/component.js

    preventMultipleFiles: true, acceptDirectories: false }, + multiple: true, + unselect: true, + openOnSelect: false, + selectedFile: null, init() { this._super(...arguments); this.set('_items', Ember.A()); - Ember.$('body').on('click', (e) => { - if (Ember.$(e.target).parents('.popover.in').length === 0 && Ember.$(e.target).attr('class') && Ember.$(e.target).attr('class').indexOf('popover-toggler') === -1) { - this.send('dismissOtherPops'); - } - }); + outsideClick(function() { + this.send('dismissPop'); + }.bind(this)); + Ember.$(window).resize(function() { + this.send('dismissPop'); + }.bind(this)); }, currentUser: Ember.inject.service(), + dropzone: Ember.computed.alias('edit'), edit: Ember.computed('user', function() { return this.get('user.id') === this.get('currentUser.currentUserId'); }), @@ -246,6 +256,11 @@

    File: addon/components/file-browser/component.js

    loadAll(user, 'quickfiles', this.get('_items')).then(() => { this.set('loaded', true); this.set('_items', this.get('_items').sortBy('itemName')); + this.get('_items').forEach(item => { + if (this.get('selectedFile.id') && this.get('selectedFile.id') === item.id) { + item.isSelected = true; + } + }); }); }, _loadUser: Ember.on('init', Ember.observer('user', function() { @@ -285,12 +300,17 @@

    File: addon/components/file-browser/component.js

    uploading: Ember.A(), filter: null, modalOpen: false, + popupOpen: false, itemsLoaded: true, selectedItems: Ember.computed.filterBy('items', 'isSelected', true), loadedChanged: Ember.observer('itemsLoaded', function() { let containerWidth = this.$().width(); this.set('itemWidth', containerWidth); }), + link: Ember.computed('selectedItems.firstObject.guid', function() { + let guid = this.get('selectedItems.firstObject.guid'); + return guid ? pathJoin(window.location.origin, guid) : undefined; + }), flash(item, message, type, time) { item.set('flash', { message, @@ -319,6 +339,13 @@

    File: addon/components/file-browser/component.js

    browserState: Ember.computed('loaded', '_items', function() { return this.get('loaded') ? (this.get('_items').length ? (this.get('items').length ? 'show' : 'filtered') : 'empty') : 'loading'; }), + clickable: Ember.computed('browserState', function() { + let clickable = ['.dz-upload-button']; + if (this.get('browserState') == 'empty') { + clickable.push('.file-browser-list'); + } + return clickable; + }), actions: { //dropzone listeners addedFile(_, __, file) { @@ -334,10 +361,12 @@

    File: addon/components/file-browser/component.js

    this.set('dropping', false); }, error(_, __, file, response) { + let message = response.message === undefined ? response : response.message; this.get('uploading').removeObject(file); - this.get('toast').error(response); + this.get('toast').error(message); }, success(_, __, file, response) { + this.send('track', 'upload', 'track', 'Quick Files - Upload'); this.get('uploading').removeObject(file); let data = response.data.attributes; //OPTIONS (some not researched) @@ -357,7 +386,7 @@

    File: addon/components/file-browser/component.js

    size: data.size, currentVersion: data.extra.version, dateModified: data.modified_utc - }) + }); return; } response.data.type = 'file'; // @@ -383,20 +412,24 @@

    File: addon/components/file-browser/component.js

    } } if (conflictingItem) { - return conflictingItem.get('links.upload') + '?kind=file'; + return conflictingItem.get('links.upload'); } return this.get('uploadUrl') + '?' + Ember.$.param({ name: files[0].name }); }, selectItem(item) { + if (this.get('openOnSelect')) { + this.openFile(item, 'view'); + } this.set('renaming', false); + this.set('popupOpen', false); if (this.get('selectedItems.length') > 1) { for (var item_ of this.get('selectedItems')) { item_.set('isSelected', item_ === item); } } else if (this.get('selectedItems.length') === 1) { - if (item.get('isSelected')) { + if (item.get('isSelected') && this.get('unselect')) { item.set('isSelected', false); return; } @@ -407,7 +440,11 @@

    File: addon/components/file-browser/component.js

    this.set('shiftAnchor', item); }, selectMultiple(item, toggle) { + if (!this.get('multiple')) { + return; + } this.set('renaming', false); + this.set('popupOpen', false); if (toggle) { item.toggleProperty('isSelected'); } else { @@ -430,10 +467,10 @@

    File: addon/components/file-browser/component.js

    }, viewItem() { let item = this.get('selectedItems.firstObject'); - this.sendAction('openFile', item); + this.openFile(item, 'view'); }, openItem(item, qparams) { - this.sendAction('openFile', item, qparams); + this.openFile(item, qparams); }, downloadItem() { let downloadLink = this.get('selectedItems.firstObject.links.download'); @@ -529,12 +566,15 @@

    File: addon/components/file-browser/component.js

    this.send('rename'); } }, - dismissOtherPops(item) { - for (var item_ of this.get('items')) { - if (!item || item_.get('path') !== item.get('path')) { - item_.set('visiblePopup', false); - } + copyLink() { + this.set('popupOpen', true); + if (this.get('link')) { + return; } + this.get('selectedItems.firstObject').getGuid(); + }, + dismissPop() { + this.set('popupOpen', false); } } }); diff --git a/docs/files/addon_components_file-chooser_component.js.html b/docs/files/addon_components_file-chooser_component.js.html index 26505f884..dc0aa6cfd 100644 --- a/docs/files/addon_components_file-chooser_component.js.html +++ b/docs/files/addon_components_file-chooser_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_file-renderer_component.js.html b/docs/files/addon_components_file-renderer_component.js.html index 781bb2372..b8143895f 100644 --- a/docs/files/addon_components_file-renderer_component.js.html +++ b/docs/files/addon_components_file-renderer_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_file-version_component.js.html b/docs/files/addon_components_file-version_component.js.html index 67993a363..09f8a38b1 100644 --- a/docs/files/addon_components_file-version_component.js.html +++ b/docs/files/addon_components_file-version_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -214,7 +215,9 @@

    File: addon/components/file-version/component.js

    * ```handlebars * {{file-version * version=version - * download='download'}} + * download='download' + * currentVersion=currentVersion + * versionUrl='versionUrl'}} * ``` * @class file-version */ @@ -222,11 +225,20 @@

    File: addon/components/file-version/component.js

    layout, classNames: ['file-version'], tagName: 'tr', + currentVersion: null, + versionUrl: null, + + clickable: Ember.computed('version', 'currentVersion', function() { + return this.get('version.id') != this.get('currentVersion'); + }), actions: { downloadVersion(version) { - this.sendAction('download', version); - } + this.attrs.download(version); + }, + changeVersion(version) { + this.attrs.versionChange(version); + }, } }); diff --git a/docs/files/addon_components_file-widget_component.js.html b/docs/files/addon_components_file-widget_component.js.html index 06d7afe49..7df61d374 100644 --- a/docs/files/addon_components_file-widget_component.js.html +++ b/docs/files/addon_components_file-widget_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_license-picker_component.js.html b/docs/files/addon_components_license-picker_component.js.html index ef1403cb1..3dd3d3d1f 100644 --- a/docs/files/addon_components_license-picker_component.js.html +++ b/docs/files/addon_components_license-picker_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_navbar-auth-dropdown_component.js.html b/docs/files/addon_components_navbar-auth-dropdown_component.js.html index bdf9b7673..7a825590c 100644 --- a/docs/files/addon_components_navbar-auth-dropdown_component.js.html +++ b/docs/files/addon_components_navbar-auth-dropdown_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_new-navbar-auth-dropdown_component.js.html b/docs/files/addon_components_new-navbar-auth-dropdown_component.js.html index af53d293e..a939ff704 100644 --- a/docs/files/addon_components_new-navbar-auth-dropdown_component.js.html +++ b/docs/files/addon_components_new-navbar-auth-dropdown_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_new-osf-navbar_component.js.html b/docs/files/addon_components_new-osf-navbar_component.js.html index c43ac829f..190f99a21 100644 --- a/docs/files/addon_components_new-osf-navbar_component.js.html +++ b/docs/files/addon_components_new-osf-navbar_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_oauth-popup_component.js.html b/docs/files/addon_components_oauth-popup_component.js.html index f51993304..f05015d35 100644 --- a/docs/files/addon_components_oauth-popup_component.js.html +++ b/docs/files/addon_components_oauth-popup_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_osf-copyright_component.js.html b/docs/files/addon_components_osf-copyright_component.js.html index 2850994ec..2b8ba25a8 100644 --- a/docs/files/addon_components_osf-copyright_component.js.html +++ b/docs/files/addon_components_osf-copyright_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_osf-footer_component.js.html b/docs/files/addon_components_osf-footer_component.js.html index 6e2138bc3..6a3dd9d91 100644 --- a/docs/files/addon_components_osf-footer_component.js.html +++ b/docs/files/addon_components_osf-footer_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_osf-mode-footer_component.js.html b/docs/files/addon_components_osf-mode-footer_component.js.html index 26f1b2e37..2a5aa6c26 100644 --- a/docs/files/addon_components_osf-mode-footer_component.js.html +++ b/docs/files/addon_components_osf-mode-footer_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_osf-navbar_component.js.html b/docs/files/addon_components_osf-navbar_component.js.html index 868c8cb62..10b8c5572 100644 --- a/docs/files/addon_components_osf-navbar_component.js.html +++ b/docs/files/addon_components_osf-navbar_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_osf-paginator_component.js.html b/docs/files/addon_components_osf-paginator_component.js.html index 8bcb81428..b688114ba 100644 --- a/docs/files/addon_components_osf-paginator_component.js.html +++ b/docs/files/addon_components_osf-paginator_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_pagination-control_component.js.html b/docs/files/addon_components_pagination-control_component.js.html index e4736db7d..0d3972aa5 100644 --- a/docs/files/addon_components_pagination-control_component.js.html +++ b/docs/files/addon_components_pagination-control_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_search-dropdown_component.js.html b/docs/files/addon_components_search-dropdown_component.js.html index 00663c4d6..d7da9865b 100644 --- a/docs/files/addon_components_search-dropdown_component.js.html +++ b/docs/files/addon_components_search-dropdown_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_search-facet-daterange_component.js.html b/docs/files/addon_components_search-facet-daterange_component.js.html index db5dbadae..9d3995895 100644 --- a/docs/files/addon_components_search-facet-daterange_component.js.html +++ b/docs/files/addon_components_search-facet-daterange_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_search-facet-language_component.js.html b/docs/files/addon_components_search-facet-language_component.js.html index 1ff8b93dc..5472e00cb 100644 --- a/docs/files/addon_components_search-facet-language_component.js.html +++ b/docs/files/addon_components_search-facet-language_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_search-facet-locked_component.js.html b/docs/files/addon_components_search-facet-locked_component.js.html index 0c554d590..70eccef93 100644 --- a/docs/files/addon_components_search-facet-locked_component.js.html +++ b/docs/files/addon_components_search-facet-locked_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_search-facet-source_component.js.html b/docs/files/addon_components_search-facet-source_component.js.html index a8faa37f4..6820f10a5 100644 --- a/docs/files/addon_components_search-facet-source_component.js.html +++ b/docs/files/addon_components_search-facet-source_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_search-facet-typeahead_component.js.html b/docs/files/addon_components_search-facet-typeahead_component.js.html index 5414064dc..3fe0fe708 100644 --- a/docs/files/addon_components_search-facet-typeahead_component.js.html +++ b/docs/files/addon_components_search-facet-typeahead_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_search-facet-worktype-button_component.js.html b/docs/files/addon_components_search-facet-worktype-button_component.js.html index 679d47321..13680cfa1 100644 --- a/docs/files/addon_components_search-facet-worktype-button_component.js.html +++ b/docs/files/addon_components_search-facet-worktype-button_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_search-facet-worktype-hierarchy_component.js.html b/docs/files/addon_components_search-facet-worktype-hierarchy_component.js.html index a4a647f9c..9a74288e0 100644 --- a/docs/files/addon_components_search-facet-worktype-hierarchy_component.js.html +++ b/docs/files/addon_components_search-facet-worktype-hierarchy_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_search-facet-worktype_component.js.html b/docs/files/addon_components_search-facet-worktype_component.js.html index f4c8f8e88..9473d4e38 100644 --- a/docs/files/addon_components_search-facet-worktype_component.js.html +++ b/docs/files/addon_components_search-facet-worktype_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_search-help-modal_component.js.html b/docs/files/addon_components_search-help-modal_component.js.html index e888903ad..a7aa79f0b 100644 --- a/docs/files/addon_components_search-help-modal_component.js.html +++ b/docs/files/addon_components_search-help-modal_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_search-result_component.js.html b/docs/files/addon_components_search-result_component.js.html index 5f5310dd1..ed647b419 100644 --- a/docs/files/addon_components_search-result_component.js.html +++ b/docs/files/addon_components_search-result_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_sign-up_component.js.html b/docs/files/addon_components_sign-up_component.js.html index b877be18e..1af7773f3 100644 --- a/docs/files/addon_components_sign-up_component.js.html +++ b/docs/files/addon_components_sign-up_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_tags-widget_component.js.html b/docs/files/addon_components_tags-widget_component.js.html index 7c2b456f5..9de6e3626 100644 --- a/docs/files/addon_components_tags-widget_component.js.html +++ b/docs/files/addon_components_tags-widget_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_components_total-share-results_component.js.html b/docs/files/addon_components_total-share-results_component.js.html index b5e0f06a5..258822d42 100644 --- a/docs/files/addon_components_total-share-results_component.js.html +++ b/docs/files/addon_components_total-share-results_component.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_const_permissions.js.html b/docs/files/addon_const_permissions.js.html index 11ecb353b..4421690f8 100644 --- a/docs/files/addon_const_permissions.js.html +++ b/docs/files/addon_const_permissions.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_const_providerRegex.js.html b/docs/files/addon_const_providerRegex.js.html index 30c9f2800..eb091b925 100644 --- a/docs/files/addon_const_providerRegex.js.html +++ b/docs/files/addon_const_providerRegex.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_const_service-links.js.html b/docs/files/addon_const_service-links.js.html index d09922a0d..087d0b572 100644 --- a/docs/files/addon_const_service-links.js.html +++ b/docs/files/addon_const_service-links.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_helpers_build-secondary-nav-links.js.html b/docs/files/addon_helpers_build-secondary-nav-links.js.html index 4601ee7a9..608d68e70 100644 --- a/docs/files/addon_helpers_build-secondary-nav-links.js.html +++ b/docs/files/addon_helpers_build-secondary-nav-links.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -224,21 +225,20 @@

    File: addon/helpers/build-secondary-nav-links.js

    const session = this.get('session'); let links = Ember.Object.create({ HOME: [ - { - name: session.get('isAuthenticated') ? 'eosf.navbar.myProjects' : 'eosf.navbar.browse', - href: session.get('isAuthenticated') ? serviceLinks.myProjects : serviceLinks.exploreActivity, - }, { name: 'eosf.navbar.search', href: serviceLinks.search, type: 'search' }, + { + name: 'eosf.navbar.support', + href: serviceLinks.osfSupport + }, { name: 'eosf.navbar.donate', href: 'https://cos.io/donate', type: 'donateToCOS' }, - ], PREPRINTS: [ { @@ -300,6 +300,10 @@

    File: addon/helpers/build-secondary-nav-links.js

    { name: 'eosf.navbar.myQuickFiles', href: serviceLinks.myQuickFiles + }, + { + name: 'eosf.navbar.myProjects', + href: serviceLinks.myProjects, } ); this.get('currentUser.user').then((user) => { @@ -310,13 +314,6 @@

    File: addon/helpers/build-secondary-nav-links.js

    }); } }) - } else { - links.HOME.push( - { - name: 'eosf.navbar.support', - href: serviceLinks.osfSupport - } - ); } if (Object.keys(links).includes(currentService)) { diff --git a/docs/files/addon_helpers_elem-id.js.html b/docs/files/addon_helpers_elem-id.js.html index cc367a4f9..80d3b40cb 100644 --- a/docs/files/addon_helpers_elem-id.js.html +++ b/docs/files/addon_helpers_elem-id.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_helpers_filter-replace.js.html b/docs/files/addon_helpers_filter-replace.js.html index 283b08b97..87894975a 100644 --- a/docs/files/addon_helpers_filter-replace.js.html +++ b/docs/files/addon_helpers_filter-replace.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_helpers_fix-special-char.js.html b/docs/files/addon_helpers_fix-special-char.js.html index 7c4c65174..d6df1892d 100644 --- a/docs/files/addon_helpers_fix-special-char.js.html +++ b/docs/files/addon_helpers_fix-special-char.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_helpers_get-display-name.js.html b/docs/files/addon_helpers_get-display-name.js.html index 8201c5df4..afb5a9798 100644 --- a/docs/files/addon_helpers_get-display-name.js.html +++ b/docs/files/addon_helpers_get-display-name.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_helpers_if-filter.js.html b/docs/files/addon_helpers_if-filter.js.html index 9e4cfa1b2..98a802857 100644 --- a/docs/files/addon_helpers_if-filter.js.html +++ b/docs/files/addon_helpers_if-filter.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_helpers_number-format.js.html b/docs/files/addon_helpers_number-format.js.html index 285cb3f87..c46660da8 100644 --- a/docs/files/addon_helpers_number-format.js.html +++ b/docs/files/addon_helpers_number-format.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_helpers_sort-option-display.js.html b/docs/files/addon_helpers_sort-option-display.js.html index 617ea67ff..5d080284e 100644 --- a/docs/files/addon_helpers_sort-option-display.js.html +++ b/docs/files/addon_helpers_sort-option-display.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_analytics.js.html b/docs/files/addon_mixins_analytics.js.html index 5f4eed36d..3dd4537cb 100644 --- a/docs/files/addon_mixins_analytics.js.html +++ b/docs/files/addon_mixins_analytics.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_cas-authenticated-route.js.html b/docs/files/addon_mixins_cas-authenticated-route.js.html index 5dac09680..5ce56a1a8 100644 --- a/docs/files/addon_mixins_cas-authenticated-route.js.html +++ b/docs/files/addon_mixins_cas-authenticated-route.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_commentable.js.html b/docs/files/addon_mixins_commentable.js.html index 5f0bacd90..7c84fab0d 100644 --- a/docs/files/addon_mixins_commentable.js.html +++ b/docs/files/addon_mixins_commentable.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_file-cache-bypass.js.html b/docs/files/addon_mixins_file-cache-bypass.js.html index 975585112..2764c5dd5 100644 --- a/docs/files/addon_mixins_file-cache-bypass.js.html +++ b/docs/files/addon_mixins_file-cache-bypass.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_file-item.js.html b/docs/files/addon_mixins_file-item.js.html index 7e0370cd3..f0808d0b4 100644 --- a/docs/files/addon_mixins_file-item.js.html +++ b/docs/files/addon_mixins_file-item.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_generic-data-adapter.js.html b/docs/files/addon_mixins_generic-data-adapter.js.html index d8cdd00ad..2977efd0f 100644 --- a/docs/files/addon_mixins_generic-data-adapter.js.html +++ b/docs/files/addon_mixins_generic-data-adapter.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_host-app-name.js.html b/docs/files/addon_mixins_host-app-name.js.html index 3084162b7..2f0f55095 100644 --- a/docs/files/addon_mixins_host-app-name.js.html +++ b/docs/files/addon_mixins_host-app-name.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_infinity-custom.js.html b/docs/files/addon_mixins_infinity-custom.js.html index 8387aa1f1..a91ddab80 100644 --- a/docs/files/addon_mixins_infinity-custom.js.html +++ b/docs/files/addon_mixins_infinity-custom.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_node-actions.js.html b/docs/files/addon_mixins_node-actions.js.html index d548522b1..ec2805654 100644 --- a/docs/files/addon_mixins_node-actions.js.html +++ b/docs/files/addon_mixins_node-actions.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_osf-agnostic-auth-controller.js.html b/docs/files/addon_mixins_osf-agnostic-auth-controller.js.html index 028d69ef2..569b49630 100644 --- a/docs/files/addon_mixins_osf-agnostic-auth-controller.js.html +++ b/docs/files/addon_mixins_osf-agnostic-auth-controller.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_osf-agnostic-auth-route.js.html b/docs/files/addon_mixins_osf-agnostic-auth-route.js.html index e65eab64a..be54af4d9 100644 --- a/docs/files/addon_mixins_osf-agnostic-auth-route.js.html +++ b/docs/files/addon_mixins_osf-agnostic-auth-route.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_osf-cookie-login-controller.js.html b/docs/files/addon_mixins_osf-cookie-login-controller.js.html index 178d1604f..878f328bb 100644 --- a/docs/files/addon_mixins_osf-cookie-login-controller.js.html +++ b/docs/files/addon_mixins_osf-cookie-login-controller.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_osf-cookie-login-route.js.html b/docs/files/addon_mixins_osf-cookie-login-route.js.html index bd6da175a..a90a70cf0 100644 --- a/docs/files/addon_mixins_osf-cookie-login-route.js.html +++ b/docs/files/addon_mixins_osf-cookie-login-route.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_osf-token-login-controller.js.html b/docs/files/addon_mixins_osf-token-login-controller.js.html index 349d7e891..aa47ad8cd 100644 --- a/docs/files/addon_mixins_osf-token-login-controller.js.html +++ b/docs/files/addon_mixins_osf-token-login-controller.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_osf-token-login-route.js.html b/docs/files/addon_mixins_osf-token-login-route.js.html index 47b582ee6..d033571ea 100644 --- a/docs/files/addon_mixins_osf-token-login-route.js.html +++ b/docs/files/addon_mixins_osf-token-login-route.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_paginated-controller.js.html b/docs/files/addon_mixins_paginated-controller.js.html index 651282ded..ad435beb8 100644 --- a/docs/files/addon_mixins_paginated-controller.js.html +++ b/docs/files/addon_mixins_paginated-controller.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_paginated-route.js.html b/docs/files/addon_mixins_paginated-route.js.html index f30317448..a13fddea0 100644 --- a/docs/files/addon_mixins_paginated-route.js.html +++ b/docs/files/addon_mixins_paginated-route.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_registration-actions.js.html b/docs/files/addon_mixins_registration-actions.js.html index ab5d7d83d..42d7da0e2 100644 --- a/docs/files/addon_mixins_registration-actions.js.html +++ b/docs/files/addon_mixins_registration-actions.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_mixins_taggable-mixin.js.html b/docs/files/addon_mixins_taggable-mixin.js.html index 3db8b7528..184a3b5fd 100644 --- a/docs/files/addon_mixins_taggable-mixin.js.html +++ b/docs/files/addon_mixins_taggable-mixin.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_citation.js.html b/docs/files/addon_models_citation.js.html index 90f838031..4e9c29977 100644 --- a/docs/files/addon_models_citation.js.html +++ b/docs/files/addon_models_citation.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_collection.js.html b/docs/files/addon_models_collection.js.html index 42a6c1f9d..207a257ba 100644 --- a/docs/files/addon_models_collection.js.html +++ b/docs/files/addon_models_collection.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_comment-report.js.html b/docs/files/addon_models_comment-report.js.html index 337c68182..73bf5fe6e 100644 --- a/docs/files/addon_models_comment-report.js.html +++ b/docs/files/addon_models_comment-report.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_comment.js.html b/docs/files/addon_models_comment.js.html index 408c39e62..2f6a6ae1a 100644 --- a/docs/files/addon_models_comment.js.html +++ b/docs/files/addon_models_comment.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_contributor.js.html b/docs/files/addon_models_contributor.js.html index aacc1fcad..f0018af34 100644 --- a/docs/files/addon_models_contributor.js.html +++ b/docs/files/addon_models_contributor.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_draft-registration.js.html b/docs/files/addon_models_draft-registration.js.html index 06017f341..df4947fd5 100644 --- a/docs/files/addon_models_draft-registration.js.html +++ b/docs/files/addon_models_draft-registration.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_file-provider.js.html b/docs/files/addon_models_file-provider.js.html index 10d6d802a..439bd863d 100644 --- a/docs/files/addon_models_file-provider.js.html +++ b/docs/files/addon_models_file-provider.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_file-version.js.html b/docs/files/addon_models_file-version.js.html index 49649d556..a294ba578 100644 --- a/docs/files/addon_models_file-version.js.html +++ b/docs/files/addon_models_file-version.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_file.js.html b/docs/files/addon_models_file.js.html index 8f08b5fe9..5ef99c1ab 100644 --- a/docs/files/addon_models_file.js.html +++ b/docs/files/addon_models_file.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -288,7 +289,10 @@

    File: addon/models/file.js

    return authenticatedAJAX({ url: this.get('links.download'), type: 'GET', - xhrFields: { withCredentials: true }, + data: { + direct: true, + mode: 'render', + }, }); }, updateContents(data) { diff --git a/docs/files/addon_models_institution.js.html b/docs/files/addon_models_institution.js.html index 137b75915..f387e1c98 100644 --- a/docs/files/addon_models_institution.js.html +++ b/docs/files/addon_models_institution.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_log.js.html b/docs/files/addon_models_log.js.html index 180d8dc1d..edec1cdbe 100644 --- a/docs/files/addon_models_log.js.html +++ b/docs/files/addon_models_log.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_metaschema.js.html b/docs/files/addon_models_metaschema.js.html index 56a0a15dc..3f0024983 100644 --- a/docs/files/addon_models_metaschema.js.html +++ b/docs/files/addon_models_metaschema.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_node-link.js.html b/docs/files/addon_models_node-link.js.html index 70c99364e..be1dacee7 100644 --- a/docs/files/addon_models_node-link.js.html +++ b/docs/files/addon_models_node-link.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_node.js.html b/docs/files/addon_models_node.js.html index b9dd8b701..c6e4b533c 100644 --- a/docs/files/addon_models_node.js.html +++ b/docs/files/addon_models_node.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_osf-model.js.html b/docs/files/addon_models_osf-model.js.html index c36c7334e..58d48b22f 100644 --- a/docs/files/addon_models_osf-model.js.html +++ b/docs/files/addon_models_osf-model.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_preprint.js.html b/docs/files/addon_models_preprint.js.html index 5e583f936..2747b32c6 100644 --- a/docs/files/addon_models_preprint.js.html +++ b/docs/files/addon_models_preprint.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -224,6 +225,7 @@

    File: addon/models/preprint.js

    subjects: DS.attr(), dateCreated: DS.attr('date'), datePublished: DS.attr('date'), + originalPublicationDate: DS.attr('date'), dateModified: DS.attr('date'), doi: DS.attr('fixstring'), isPublished: DS.attr('boolean'), @@ -231,13 +233,14 @@

    File: addon/models/preprint.js

    licenseRecord: DS.attr(), reviewsState: DS.attr('string'), dateLastTransitioned: DS.attr('date'), + preprintDoiCreated: DS.attr('date'), // Relationships node: DS.belongsTo('node', { inverse: null, async: true }), license: DS.belongsTo('license', { inverse: null }), primaryFile: DS.belongsTo('file', { inverse: null }), provider: DS.belongsTo('preprint-provider', { inverse: 'preprints', async: true }), - actions: DS.hasMany('action', { inverse: 'target', async: true }), + reviewActions: DS.hasMany('review-action', { inverse: 'target', async: true }), contributors: DS.hasMany('contributors', { async: true }), uniqueSubjects: Ember.computed('subjects', function() { diff --git a/docs/files/addon_models_registration.js.html b/docs/files/addon_models_registration.js.html index 89f533bd3..003476457 100644 --- a/docs/files/addon_models_registration.js.html +++ b/docs/files/addon_models_registration.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_taxonomy.js.html b/docs/files/addon_models_taxonomy.js.html index 9f889eb40..288ee7521 100644 --- a/docs/files/addon_models_taxonomy.js.html +++ b/docs/files/addon_models_taxonomy.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_models_user.js.html b/docs/files/addon_models_user.js.html index 6532cf216..545dcb181 100644 --- a/docs/files/addon_models_user.js.html +++ b/docs/files/addon_models_user.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -238,8 +239,6 @@

    File: addon/models/user.js

    inverse: 'users' }), - actions: DS.hasMany('action', { inverse: null, async: true }), - // Calculated fields profileURL: Ember.computed.alias('links.html'), profileImage: Ember.computed.alias('links.profile_image') diff --git a/docs/files/addon_serializers_osf-serializer.js.html b/docs/files/addon_serializers_osf-serializer.js.html index 083f9aaa6..21dd3c92d 100644 --- a/docs/files/addon_serializers_osf-serializer.js.html +++ b/docs/files/addon_serializers_osf-serializer.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • @@ -341,7 +342,7 @@

    File: addon/serializers/osf-serializer.js

    let documentHash = this._super(...arguments); documentHash.meta = documentHash.meta || {}; documentHash.meta.pagination = Ember.$.extend(true, {}, Ember.get(payload || {}, 'meta')); - documentHash.meta.total = Math.ceil(documentHash.meta.pagination.total / documentHash.meta.pagination.per_page); + documentHash.meta.total_pages = Math.ceil(documentHash.meta.pagination.total / documentHash.meta.pagination.per_page); return documentHash; } }); diff --git a/docs/files/addon_services_current-user.js.html b/docs/files/addon_services_current-user.js.html index fee8064f9..296d7bc9a 100644 --- a/docs/files/addon_services_current-user.js.html +++ b/docs/files/addon_services_current-user.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_services_file-manager.js.html b/docs/files/addon_services_file-manager.js.html index 78ca09e9f..6ea83fcc5 100644 --- a/docs/files/addon_services_file-manager.js.html +++ b/docs/files/addon_services_file-manager.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_services_theme.js.html b/docs/files/addon_services_theme.js.html index 5c2cb1043..89ee36473 100644 --- a/docs/files/addon_services_theme.js.html +++ b/docs/files/addon_services_theme.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_transforms_fixstring.js.html b/docs/files/addon_transforms_fixstring.js.html index 62a752315..9238913c4 100644 --- a/docs/files/addon_transforms_fixstring.js.html +++ b/docs/files/addon_transforms_fixstring.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_utils_ajax-helpers.js.html b/docs/files/addon_utils_ajax-helpers.js.html index 59ee1b710..ad7f9f7ca 100644 --- a/docs/files/addon_utils_ajax-helpers.js.html +++ b/docs/files/addon_utils_ajax-helpers.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_utils_auth.js.html b/docs/files/addon_utils_auth.js.html index 50faf2bae..8ae7a9a84 100644 --- a/docs/files/addon_utils_auth.js.html +++ b/docs/files/addon_utils_auth.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_utils_elastic-query.js.html b/docs/files/addon_utils_elastic-query.js.html index d96cf9bcd..66a3979c9 100644 --- a/docs/files/addon_utils_elastic-query.js.html +++ b/docs/files/addon_utils_elastic-query.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_utils_fix-special-char.js.html b/docs/files/addon_utils_fix-special-char.js.html index 9159b5eb6..ce9c59a98 100644 --- a/docs/files/addon_utils_fix-special-char.js.html +++ b/docs/files/addon_utils_fix-special-char.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/files/addon_yuidoc-prose.js.html b/docs/files/addon_yuidoc-prose.js.html index f8ccd2e1a..b56fdba6e 100644 --- a/docs/files/addon_yuidoc-prose.js.html +++ b/docs/files/addon_yuidoc-prose.js.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/index.html b/docs/index.html index 8d4662f8f..ca615c71d 100644 --- a/docs/index.html +++ b/docs/index.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/adapters.html b/docs/modules/adapters.html index 9f7fb3e2e..6260c1d5f 100644 --- a/docs/modules/adapters.html +++ b/docs/modules/adapters.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/authenticators.html b/docs/modules/authenticators.html index 93989c1c1..1cc7a0bea 100644 --- a/docs/modules/authenticators.html +++ b/docs/modules/authenticators.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/authorizers.html b/docs/modules/authorizers.html index 38c8d2025..ea0ec53a7 100644 --- a/docs/modules/authorizers.html +++ b/docs/modules/authorizers.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/components.html b/docs/modules/components.html index 53b2f8822..1be299a3b 100644 --- a/docs/modules/components.html +++ b/docs/modules/components.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/const.html b/docs/modules/const.html index bc1e3f35a..a8330c76a 100644 --- a/docs/modules/const.html +++ b/docs/modules/const.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/ember-osf.html b/docs/modules/ember-osf.html index 60eb3fc2c..47ec7a2ce 100644 --- a/docs/modules/ember-osf.html +++ b/docs/modules/ember-osf.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -607,6 +608,11 @@

    ember-osf Module

    OsfTokenLoginRouteMixin +
  • + + outside-click + +
  • PaginatedControllerMixin diff --git a/docs/modules/helpers.html b/docs/modules/helpers.html index 64d0bf66c..1ba726577 100644 --- a/docs/modules/helpers.html +++ b/docs/modules/helpers.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/mixins.html b/docs/modules/mixins.html index 35fd210c0..ec4029e38 100644 --- a/docs/modules/mixins.html +++ b/docs/modules/mixins.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/models.html b/docs/modules/models.html index 90423b433..71e12b9b1 100644 --- a/docs/modules/models.html +++ b/docs/modules/models.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/serializers.html b/docs/modules/serializers.html index 996212f2f..2c70689b7 100644 --- a/docs/modules/serializers.html +++ b/docs/modules/serializers.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/services.html b/docs/modules/services.html index 32d3ea11c..e6310c8c5 100644 --- a/docs/modules/services.html +++ b/docs/modules/services.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/transforms.html b/docs/modules/transforms.html index 82f47a369..eb26abdbf 100644 --- a/docs/modules/transforms.html +++ b/docs/modules/transforms.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/docs/modules/utils.html b/docs/modules/utils.html index 3448c0ed1..52d60b6f5 100644 --- a/docs/modules/utils.html +++ b/docs/modules/utils.html @@ -17,7 +17,7 @@

    - API Docs for: 0.12.0 + API Docs for: 0.13.1
    @@ -117,6 +117,7 @@

    APIs

  • OsfTokenAuthorizer
  • OsfTokenLoginControllerMixin
  • OsfTokenLoginRouteMixin
  • +
  • outside-click
  • PaginatedControllerMixin
  • PaginatedRouteMixin
  • pagination-control
  • diff --git a/package.json b/package.json index c9ca1a7a7..c23cc32b6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@centerforopenscience/ember-osf", - "version": "0.12.4", + "version": "0.13.1", "description": "Reusable ember models and components for interacting with the Open Science Framework", "directories": { "doc": "docs", @@ -93,7 +93,6 @@ "ember-cli-sass": "^6.2.0", "ember-cli-shims": "1.0.2", "ember-cp-validations": "^3.5.0", - "ember-data-has-many-query": "^0.2.0", "ember-diff-attrs": "^0.2.0", "ember-get-config": "0.2.1", "ember-i18n": "5.0.1", diff --git a/tests/unit/models/osf-model-test.js b/tests/unit/models/osf-model-test.js index 480466c65..ca886533e 100644 --- a/tests/unit/models/osf-model-test.js +++ b/tests/unit/models/osf-model-test.js @@ -1,8 +1,9 @@ +import Ember from 'ember'; import { moduleForModel, test } from 'ember-qunit'; moduleForModel('osf-model', 'Unit | Model | osf model', { // Specify the other units that are required for this test. - needs: [] + needs: ['model:user', 'model:node'] }); test('it exists', function(assert) { @@ -10,3 +11,81 @@ test('it exists', function(assert) { // let store = this.store(); assert.ok(!!model); }); + +test('queryHasMany works', function(assert) { + const store = this.store(); + const userId = 'guid1'; + const userNodesUrl = `https://api.osf.io/v2/users/${userId}/nodes/`; + const userPayload = { + 'data': { + 'relationships': { + 'nodes': { + 'links': { + 'related': { + 'href': userNodesUrl, + 'meta': {} + } + } + }, + }, + 'links': { + 'self': `https://api.osf.io/v2/users/${userId}/`, + 'html': `https://osf.io/${userId}/`, + }, + 'attributes': { + 'family_name': 'Guid', + 'given_name': 'A', + 'full_name': 'A Guid', + }, + 'type': 'users', + 'id': userId + }, + }; + + const nodeIds = ['guid2', 'guid3', 'guid4'] + const nodePayloads = []; + for (const id of nodeIds) { + nodePayloads.push({ + 'links': { + 'self': `https://api.osf.io/v2/nodes/${id}/`, + 'html': `https://osf.io/${id}/` + }, + 'attributes': { + }, + 'type': 'nodes', + 'id': id + }); + } + + const queryParams = {'param': 7}; + + Ember.$.mockjax({ + url: userNodesUrl, + responseText: { + 'data': nodePayloads, + 'meta': { + 'total': nodePayloads.length, + }, + 'links': { + 'self': `https://api.osf.io/v2/users/${userId}/nodes/`, + } + } + }); + + assert.expect(3 + nodeIds.length); + + const done = assert.async(); + Ember.run(function() { + store.pushPayload(userPayload); + const user = store.peekRecord('user', userId); + assert.ok(!!user); + assert.equal(user.get('id'), userId); + user.queryHasMany('nodes', queryParams).then(function(nodes) { + assert.equal(nodes.length, nodeIds.length); + for (let i = 0; i < nodes.length; i++) { + assert.equal(nodes[i].get('id'), nodeIds[i]); + } + done(); + }); + }); +}); diff --git a/yarn.lock b/yarn.lock index 8a77a9c4a..869d92a16 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3399,12 +3399,6 @@ ember-data-factory-guy@^2.13.7: pretender "^1.6.0" resolve "^1.2.0" -ember-data-has-many-query@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/ember-data-has-many-query/-/ember-data-has-many-query-0.2.0.tgz#97ae2c29d6d7f77d3837cca9f165c26bf6e6fb0a" - dependencies: - ember-cli-babel "^5.1.6" - ember-data@2.11.3: version "2.11.3" resolved "https://registry.yarnpkg.com/ember-data/-/ember-data-2.11.3.tgz#46ba0e8411dce6dbb52cc02a29194f265b747ef9" @@ -7993,7 +7987,7 @@ source-map-url@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.3.0.tgz#7ecaf13b57bcd09da8a40c5d269db33799d4aaf9" -source-map@0.1.32: +source-map@0.1.32, source-map@~0.1.x: version "0.1.32" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.32.tgz#c8b6c167797ba4740a8ea33252162ff08591b266" dependencies: @@ -8015,7 +8009,7 @@ source-map@0.5.6, source-map@^0.5.0, source-map@^0.5.6, source-map@~0.5.0, sourc version "0.5.6" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" -source-map@^0.1.40, source-map@~0.1.30, source-map@~0.1.7, source-map@~0.1.x: +source-map@^0.1.40, source-map@~0.1.30, source-map@~0.1.7: version "0.1.43" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" dependencies: From 9ca5648b949da5675ec8bd072716825ff12f4d6b Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Tue, 23 Jan 2018 14:04:08 -0500 Subject: [PATCH 40/44] fix failing tests --- .../components/search-help-modal/template.hbs | 2 +- bower.json | 1 + ember-cli-build.js | 1 + .../search-help-modal/component-test.js | 14 +++++----- yarn.lock | 26 ++++++++----------- 5 files changed, 22 insertions(+), 22 deletions(-) diff --git a/addon/components/search-help-modal/template.hbs b/addon/components/search-help-modal/template.hbs index 3c3d9a64d..53a446312 100644 --- a/addon/components/search-help-modal/template.hbs +++ b/addon/components/search-help-modal/template.hbs @@ -10,7 +10,7 @@ {{t 'eosf.components.searchHelpModal.searchUsesThe'}} Lucene {{t 'eosf.components.searchHelpModal.searchSyntax'}}. {{t 'eosf.components.searchHelpModal.helpDescription'}}

    -
      +
      • repro*
      • brian AND title:many
      • tags:(psychology)
      • diff --git a/bower.json b/bower.json index fddd7ff6c..7f1c3598e 100644 --- a/bower.json +++ b/bower.json @@ -10,6 +10,7 @@ "font-awesome": "~4.5.0", "typeahead.js": "^0.11.1", "jquery.tagsinput": "^1.3.6", + "jquery-mockjax": "2.1.1", "c3": "0.4.11", "d3": "3.5.17", "bootstrap-daterangepicker": "^2.1.23" diff --git a/ember-cli-build.js b/ember-cli-build.js index 0fa83845d..ce5d7cf4b 100644 --- a/ember-cli-build.js +++ b/ember-cli-build.js @@ -47,5 +47,6 @@ module.exports = function(defaults) { app.import(path.join(app.bowerDirectory, 'osf-style/css/base.css')); app.import('vendor/assets/ember-osf.css'); app.import(path.join(app.bowerDirectory, 'ember/ember-template-compiler.js')); + app.import(path.join(app.bowerDirectory, 'jquery-mockjax/dist/jquery.mockjax.js')); return app.toTree(); }; diff --git a/tests/integration/components/search-help-modal/component-test.js b/tests/integration/components/search-help-modal/component-test.js index 4fdb13455..ebae1d1d7 100644 --- a/tests/integration/components/search-help-modal/component-test.js +++ b/tests/integration/components/search-help-modal/component-test.js @@ -6,11 +6,13 @@ moduleForComponent('search-help-modal', 'Integration | Component | search help m }); test('it renders', function(assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - - this.render(hbs`{{search-help-modal}}`); - - assert.ok(this.$().text().trim().includes('brian AND title:many')); + this.set('showLuceneHelp', true); + this.render(hbs`{{search-help-modal isOpen=showLuceneHelp}}`); + assert.equal(this.$('.ex-list').text().replace(/\s+/g, ' ').trim(), 'repro* brian AND title:many tags:(psychology)'); + this.set('showLuceneHelp', false); + this.render(hbs`{{search-help-modal isOpen=showLuceneHelp}}`); + assert.equal(this.$('.ex-list').text().replace(/\s+/g, ' ').trim(), ''); }); diff --git a/yarn.lock b/yarn.lock index 869d92a16..33180fce5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1350,8 +1350,8 @@ broccoli-brocfile-loader@^0.18.0: findup-sync "^0.4.2" broccoli-builder@^0.18.8: - version "0.18.10" - resolved "https://registry.yarnpkg.com/broccoli-builder/-/broccoli-builder-0.18.10.tgz#9767e0061ff5b5e6eb1619d1a972ef2c7fd07631" + version "0.18.11" + resolved "https://registry.yarnpkg.com/broccoli-builder/-/broccoli-builder-0.18.11.tgz#a42393c7b10bb0380df255a616307945f5e26efb" dependencies: heimdalljs "^0.2.0" promise-map-series "^0.2.1" @@ -3256,8 +3256,8 @@ ember-cli-version-checker@^2.0.0, ember-cli-version-checker@^2.1.0: yuidocjs "^0.10.0" ember-cli@^2.14.2: - version "2.18.0" - resolved "https://registry.yarnpkg.com/ember-cli/-/ember-cli-2.18.0.tgz#75c7cf7be8d195ae2eb072489e6b7243c95f63d4" + version "2.18.1" + resolved "https://registry.yarnpkg.com/ember-cli/-/ember-cli-2.18.1.tgz#a8650dcb9ce4b6cb4749b93878c2a7ad2971e5fb" dependencies: amd-name-resolver "1.0.0" babel-plugin-transform-es2015-modules-amd "^6.24.0" @@ -3798,8 +3798,8 @@ ember-try-config@^2.2.0: semver "^5.1.0" ember-try@^0.2.15: - version "0.2.22" - resolved "https://registry.yarnpkg.com/ember-try/-/ember-try-0.2.22.tgz#3989e9c013c1d5c209ec97f5dfcf4234e594d5e2" + version "0.2.23" + resolved "https://registry.yarnpkg.com/ember-try/-/ember-try-0.2.23.tgz#39b57141b4907541d0ac8b503d211e6946b08718" dependencies: chalk "^1.0.0" cli-table2 "^0.2.0" @@ -6408,14 +6408,10 @@ mime-types@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-1.0.2.tgz#995ae1392ab8affcbfcb2641dd054e943c0d5dce" -mime@1.4.1: +mime@1.4.1, mime@^1.2.11: version "1.4.1" resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" -mime@^1.2.11: - version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - mime@~1.2.11: version "1.2.11" resolved "https://registry.yarnpkg.com/mime/-/mime-1.2.11.tgz#58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10" @@ -7721,8 +7717,8 @@ sane@^1.1.1: watch "~0.10.0" sane@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/sane/-/sane-2.2.0.tgz#d6d2e2fcab00e3d283c93b912b7c3a20846f1d56" + version "2.3.0" + resolved "https://registry.yarnpkg.com/sane/-/sane-2.3.0.tgz#3f3df584abf69e63d4bb74f0f8c42468e4d7d46b" dependencies: anymatch "^1.3.0" exec-sh "^0.2.0" @@ -7987,7 +7983,7 @@ source-map-url@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.3.0.tgz#7ecaf13b57bcd09da8a40c5d269db33799d4aaf9" -source-map@0.1.32, source-map@~0.1.x: +source-map@0.1.32: version "0.1.32" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.32.tgz#c8b6c167797ba4740a8ea33252162ff08591b266" dependencies: @@ -8009,7 +8005,7 @@ source-map@0.5.6, source-map@^0.5.0, source-map@^0.5.6, source-map@~0.5.0, sourc version "0.5.6" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" -source-map@^0.1.40, source-map@~0.1.30, source-map@~0.1.7: +source-map@^0.1.40, source-map@~0.1.30, source-map@~0.1.7, source-map@~0.1.x: version "0.1.43" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" dependencies: From d251d6e326fa42b803930c63daeaab8b1f7be58e Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Mon, 29 Jan 2018 12:54:08 -0500 Subject: [PATCH 41/44] Reverse changes not related to this PR --- addon/helpers/build-secondary-nav-links.js | 11 ----------- tests/unit/helpers/build-secondary-nav-links-test.js | 4 ++-- 2 files changed, 2 insertions(+), 13 deletions(-) diff --git a/addon/helpers/build-secondary-nav-links.js b/addon/helpers/build-secondary-nav-links.js index 1af375529..14f85fac0 100644 --- a/addon/helpers/build-secondary-nav-links.js +++ b/addon/helpers/build-secondary-nav-links.js @@ -23,10 +23,6 @@ export default Ember.Helper.extend({ // Helper defined using a class, so can in const session = this.get('session'); let links = Ember.Object.create({ HOME: [ - { - name: session.get('isAuthenticated') ? 'eosf.navbar.myProjects' : 'eosf.navbar.browse', - href: session.get('isAuthenticated') ? serviceLinks.myProjects : serviceLinks.exploreActivity, - }, { name: 'eosf.navbar.search', href: serviceLinks.search, @@ -117,13 +113,6 @@ export default Ember.Helper.extend({ // Helper defined using a class, so can in }); } }) - } else { - links.HOME.splice(1, 0, - { - name: 'eosf.navbar.support', - href: serviceLinks.osfSupport - } - ); } if (Object.keys(links).includes(currentService)) { diff --git a/tests/unit/helpers/build-secondary-nav-links-test.js b/tests/unit/helpers/build-secondary-nav-links-test.js index 8a2da2218..f1ef0337c 100644 --- a/tests/unit/helpers/build-secondary-nav-links-test.js +++ b/tests/unit/helpers/build-secondary-nav-links-test.js @@ -74,7 +74,7 @@ test('returns home service links, authenticated', function(assert) { {{/each}} `); - assert.equal(this.$()[0].innerText, 'My Projects My Projects Search Support'); + assert.equal(this.$()[0].innerText, 'My Projects Search Support'); }); @@ -88,7 +88,7 @@ test('returns home service links, unauthenticated', function(assert) { {{/each}} `); - assert.equal(this.$()[0].innerText, 'Browse Support Search Support'); + assert.equal(this.$()[0].innerText, 'Search Support'); }); test('returns Registries service links', function(assert) { From 076e5869cd87184dc6913f46c889e6d5c18ac716 Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Tue, 30 Jan 2018 14:49:05 -0500 Subject: [PATCH 42/44] update code changes --- index.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/index.js b/index.js index 2c6ab9cc2..af48a6bac 100644 --- a/index.js +++ b/index.js @@ -55,7 +55,6 @@ module.exports = { } if (BACKEND === 'local') { - backendUrlConfig.accessToken = eitherConfig('PERSONAL_ACCESS_TOKEN'); backendUrlConfig.isLocal = true; if (eitherConfig('PERSONAL_ACCESS_TOKEN')) { backendUrlConfig.accessToken = eitherConfig('PERSONAL_ACCESS_TOKEN'); @@ -111,8 +110,8 @@ module.exports = { // Outputs all pod scss files into the style tree but prefixed with ember-osf // This allows apps using this addon to import all the scss they want using "@import 'ember-osf'" // The actual 'ember-osf' namespace is exported by app/styles/_ember-osf.scss - treeForStyles: function(tree) { - tree = this._super.treeForStyles.apply(this, arguments); + treeForStyles: function() { + const tree = this._super.treeForStyles.apply(this, arguments); let addonPodStyles = new Funnel(this._treePathFor('addon'), { destDir: path.join(tree.destDir, 'ember-osf'), From 34b95d6001a402f5727fe306e1a71353e8d0ac36 Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Wed, 31 Jan 2018 15:02:04 -0500 Subject: [PATCH 43/44] Add test for waterbutler request --- tests/unit/services/file-manager-test.js | 95 ++++++++++++++++++++++++ 1 file changed, 95 insertions(+) diff --git a/tests/unit/services/file-manager-test.js b/tests/unit/services/file-manager-test.js index 180e0b6e0..2fcb7387b 100644 --- a/tests/unit/services/file-manager-test.js +++ b/tests/unit/services/file-manager-test.js @@ -4,6 +4,74 @@ import FactoryGuy, { manualSetup, mockUpdate } from 'ember-data-factory-guy'; import wait from 'ember-test-helpers/wait'; import test from 'ember-sinon-qunit/test-support/test'; +/* + * assertions: + * - once for expectedRequest.url + * - once for expectedRequest.query + * - once for each key in expectedRequest.headers + * - once for each key in expectedRequest.settings + */ +function mockWaterbutler(assert, expectedRequest, response) { + Ember.$.mockjax(function (requestSettings) { + if (requestSettings.url.indexOf(expectedRequest.url) === 0) { + return { + response: function () { + assertURL(assert, requestSettings.url, + expectedRequest.url, expectedRequest.query); + assertHeaders(assert, requestSettings.headers, + expectedRequest.headers); + assertSettings(assert, requestSettings, + expectedRequest.settings); + this.responseText = response.data || {}; + this.status = response.status; + } + }; + } + return; + }); +} + +// assert once for the path and once if queryParams is specified +function assertURL(assert, actual, expected, queryParams) { + if (!queryParams) { + assert.equal(actual, expected, 'correct request URL'); + return; + } + let [actualBase, actualParams] = actual.split('?'); + assert.equal(actualBase, expected, 'correct base URL'); + + let expectedParams = []; + for (let key in queryParams) { + expectedParams.push(`${key}=${queryParams[key]}`); + } + assert.deepEqual(actualParams.split('&').sort(), expectedParams.sort(), + 'correct query params'); +} + +// assert once for each expected header +function assertHeaders(assert, actual, expected) { + for (let header in expected) { + assert.equal(actual[header], expected[header], + `request has expected header '${header}'`); + } +} + +// assert once for each expected ajax setting +function assertSettings(assert, actual, expected) { + for (let s in expected) { + // Check for a JSON payload + if (typeof expected[s] === 'object' && + typeof actual[s] === 'string') { + let payload = JSON.parse(actual[s]); + assert.deepEqual(payload, expected[s], + `request has expected JSON payload '${s}'`); + } else { + assert.equal(actual[s], expected[s], + `request has expected option '${s}'`); + } + } +} + let fakeAccessToken = 'thisisafakeaccesstoken'; let fakeUserID = 'thisisafakeuseridbanana'; @@ -32,6 +100,33 @@ moduleFor('service:file-manager', 'Unit | Service | file manager', { } }); +test('test waterbutler request', function (assert) { + this.inject.service('session'); + assert.expect(4); + let service = this.subject(); + let file = FactoryGuy.make('file'); + let done = assert.async(); + + let request = { + url: file.get('links').download, + settings: {method: 'GET'}, + headers: {Authorization: `Bearer ${fakeAccessToken}`} + }; + let response = { + status: 200, + data: 'file contents here' + }; + mockWaterbutler(assert, request, response); + + service._waterbutlerRequest('GET', request.url).then(function (data) { + assert.equal(data, response.data); + done(); + }).catch(function () { + assert.ok(false, 'promise should not reject on success'); + done(); + }); +}); + test('getContents sends valid waterbutler request', function (assert) { assert.expect(2); From 1ed50726911156c1f05be8c98cb10d9ac97543b2 Mon Sep 17 00:00:00 2001 From: Sherif Abdelhamid Date: Wed, 31 Jan 2018 15:16:04 -0500 Subject: [PATCH 44/44] remove jshintrc --- tests/.jshintrc | 52 ------------------------------------------------- 1 file changed, 52 deletions(-) delete mode 100644 tests/.jshintrc diff --git a/tests/.jshintrc b/tests/.jshintrc deleted file mode 100644 index 809b7e61d..000000000 --- a/tests/.jshintrc +++ /dev/null @@ -1,52 +0,0 @@ -{ - "predef": [ - "document", - "window", - "location", - "setTimeout", - "$", - "-Promise", - "define", - "console", - "visit", - "exists", - "fillIn", - "click", - "keyEvent", - "triggerEvent", - "find", - "findWithAssert", - "wait", - "DS", - "andThen", - "currentURL", - "currentPath", - "currentRouteName" -], - "node": true, - "browser": false, - "boss": true, - "curly": true, - "debug": false, - "devel": false, - "eqeqeq": true, - "evil": true, - "forin": false, - "immed": false, - "laxbreak": false, - "newcap": true, - "noarg": true, - "noempty": false, - "nonew": false, - "nomen": false, - "onevar": false, - "plusplus": false, - "regexp": false, - "undef": true, - "sub": true, - "strict": false, - "white": false, - "eqnull": true, - "esversion": 6, - "unused": true -}