Skip to content
This repository has been archived by the owner on Apr 24, 2023. It is now read-only.

Intercom Fork #7

Closed
wants to merge 10 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions bower.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"name": "ember-model",
"version": "0.0.18",
"version": "0.0.22-intercom",
"main": "ember-model.js",
"dependencies": {
"ember": "2.0.3"
"ember": "2.8.3"
},
"devDependencies": {
"qunit": "~1.11"
Expand All @@ -14,6 +14,6 @@
"components"
],
"resolutions": {
"ember": "2.0.3"
"ember": "2.8.3"
}
}
53 changes: 27 additions & 26 deletions ember-model.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
(function() {

var VERSION = '0.0.17';
var VERSION = '0.0.22-intercom';

if (Ember.libraries) {
Ember.libraries.register('Ember Model', VERSION);
Expand Down Expand Up @@ -191,7 +191,7 @@ Ember.RecordArray = Ember.ArrayProxy.extend(Ember.Evented, {
var modelClass = this.get('modelClass'),
self = this,
promises;

set(this, 'isLoaded', false);
if (modelClass._findAllRecordArray === this) {
return modelClass.adapter.findAll(modelClass, this);
Expand Down Expand Up @@ -249,7 +249,7 @@ Ember.FilteredRecordArray = Ember.RecordArray.extend({

updateFilterForRecord: function(record) {
var results = get(this, 'content');
if (this.filterFunction(record) && !results.contains(record)) {
if (this.filterFunction(record) && !results.includes(record)) {
results.pushObject(record);
}
},
Expand All @@ -271,6 +271,7 @@ Ember.FilteredRecordArray = Ember.RecordArray.extend({
}
});


})();

(function() {
Expand Down Expand Up @@ -303,7 +304,7 @@ Ember.ManyArray = Ember.RecordArray.extend({
var isDirty = false;

for (var i = 0, l = contentLength; i < l; i++) {
if (!originalContent.contains(content[i])) {
if (!originalContent.includes(content[i])) {
isDirty = true;
break;
}
Expand All @@ -315,7 +316,7 @@ Ember.ManyArray = Ember.RecordArray.extend({
objectAtContent: function(idx) {
var content = get(this, 'content');

if (!content.length) { return; }
if (!content.length || idx >= content.length) { return; }

// need to add observer if it wasn't materialized before
var observerNeeded = (content[idx].record) ? false : true;
Expand Down Expand Up @@ -1418,9 +1419,9 @@ function getType(record) {
this.type = get(Ember.lookup, this.type);

if (!this.type) {
var store = record.container.lookup('store:main');
this.type = store.modelFor(type);
this.type.reopenClass({ adapter: store.adapterFor(type) });
var emstore = record.container.lookup('emstore:main');
this.type = emstore.modelFor(type);
this.type.reopenClass({ adapter: emstore.adapterFor(type) });
}
}

Expand Down Expand Up @@ -1480,7 +1481,7 @@ var get = Ember.get,

function storeFor(record) {
if (record.container) {
return record.container.lookup('store:main');
return record.container.lookup('emstore:main');
}

return null;
Expand All @@ -1493,9 +1494,9 @@ function getType(record) {
type = Ember.get(Ember.lookup, this.type);

if (!type) {
var store = storeFor(record);
type = store.modelFor(this.type);
type.reopenClass({ adapter: store.adapterFor(this.type) });
var emstore = storeFor(record);
type = emstore.modelFor(this.type);
type.reopenClass({ adapter: emstore.adapterFor(this.type) });
}
}

Expand Down Expand Up @@ -1523,8 +1524,8 @@ Ember.belongsTo = function(type, options) {
}
};

var store = storeFor(this),
value = this.getBelongsTo(key, type, meta, store);
var emstore = storeFor(this),
value = this.getBelongsTo(key, type, meta, emstore);
this._registerBelongsTo(meta);
if (value !== null && meta.options.embedded) {
value.get('isDirty'); // getter must be called before adding observer
Expand Down Expand Up @@ -1583,7 +1584,7 @@ Ember.belongsTo = function(type, options) {
};

Ember.Model.reopen({
getBelongsTo: function(key, type, meta, store) {
getBelongsTo: function(key, type, meta, emstore) {
var idOrAttrs = get(this, '_data.' + key),
record;

Expand All @@ -1597,8 +1598,8 @@ Ember.Model.reopen({
record = type.create({ isLoaded: false, id: id, container: this.container });
record.load(id, idOrAttrs);
} else {
if (store) {
record = store._findSync(meta.type, idOrAttrs);
if (emstore) {
record = emstore._findSync(meta.type, idOrAttrs);
} else {
record = type.find(idOrAttrs);
}
Expand Down Expand Up @@ -2036,11 +2037,11 @@ var DebugAdapter = Ember.DataAdapter.extend({

Ember.onLoad('Ember.Application', function(Application) {
Application.initializer({
name: "data-adapter",
name: "em-data-adapter",

initialize: function() {
var application = arguments[1] || arguments[0];
application.register('data-adapter:main', DebugAdapter);
application.register('em-data-adapter:main', DebugAdapter);
}
});
});
Expand Down Expand Up @@ -2111,20 +2112,20 @@ Ember.Model.Store = Ember.Object.extend({
Ember.onLoad('Ember.Application', function(Application) {

Application.initializer({
name: "store",
name: "emstore",

initialize: function() {
var application = arguments[1] || arguments[0];
var store = application.Store || Ember.Model.Store;
application.register('store:application', store);
application.register('store:main', store);
var emstore = application.Store || Ember.Model.Store;
application.register('emstore:application', emstore);
application.register('emstore:main', emstore);

application.inject('route', 'store', 'store:main');
application.inject('controller', 'store', 'store:main');
application.inject('route', 'emstore', 'emstore:main');
application.inject('controller', 'emstore', 'emstore:main');
}
});

});


})();
})();
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,5 @@
"grunt-contrib-watch": "~0.4.4",
"grunt-ember-s3": "~1.0.2"
},
"version": "0.0.18"
"version": "0.0.22-intercom"
}
18 changes: 9 additions & 9 deletions packages/ember-model/lib/belongs_to.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ var get = Ember.get,

function storeFor(record) {
if (record.container) {
return record.container.lookup('store:main');
return record.container.lookup('emstore:main');
}

return null;
Expand All @@ -17,9 +17,9 @@ function getType(record) {
type = Ember.get(Ember.lookup, this.type);

if (!type) {
var store = storeFor(record);
type = store.modelFor(this.type);
type.reopenClass({ adapter: store.adapterFor(this.type) });
var emstore = storeFor(record);
type = emstore.modelFor(this.type);
type.reopenClass({ adapter: emstore.adapterFor(this.type) });
}
}

Expand Down Expand Up @@ -47,8 +47,8 @@ Ember.belongsTo = function(type, options) {
}
};

var store = storeFor(this),
value = this.getBelongsTo(key, type, meta, store);
var emstore = storeFor(this),
value = this.getBelongsTo(key, type, meta, emstore);
this._registerBelongsTo(meta);
if (value !== null && meta.options.embedded) {
value.get('isDirty'); // getter must be called before adding observer
Expand Down Expand Up @@ -107,7 +107,7 @@ Ember.belongsTo = function(type, options) {
};

Ember.Model.reopen({
getBelongsTo: function(key, type, meta, store) {
getBelongsTo: function(key, type, meta, emstore) {
var idOrAttrs = get(this, '_data.' + key),
record;

Expand All @@ -121,8 +121,8 @@ Ember.Model.reopen({
record = type.create({ isLoaded: false, id: id, container: this.container });
record.load(id, idOrAttrs);
} else {
if (store) {
record = store._findSync(meta.type, idOrAttrs);
if (emstore) {
record = emstore._findSync(meta.type, idOrAttrs);
} else {
record = type.find(idOrAttrs);
}
Expand Down
4 changes: 2 additions & 2 deletions packages/ember-model/lib/debug_adapter.js
Original file line number Diff line number Diff line change
Expand Up @@ -105,11 +105,11 @@ var DebugAdapter = Ember.DataAdapter.extend({

Ember.onLoad('Ember.Application', function(Application) {
Application.initializer({
name: "data-adapter",
name: "em-data-adapter",

initialize: function() {
var application = arguments[1] || arguments[0];
application.register('data-adapter:main', DebugAdapter);
application.register('em-data-adapter:main', DebugAdapter);
}
});
});
4 changes: 2 additions & 2 deletions packages/ember-model/lib/filtered_record_array.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ Ember.FilteredRecordArray = Ember.RecordArray.extend({

updateFilterForRecord: function(record) {
var results = get(this, 'content');
if (this.filterFunction(record) && !results.contains(record)) {
if (this.filterFunction(record) && !results.includes(record)) {
results.pushObject(record);
}
},
Expand All @@ -56,4 +56,4 @@ Ember.FilteredRecordArray = Ember.RecordArray.extend({
record.addObserver(filterProperties[i], self, 'updateFilterForRecord');
}
}
});
});
6 changes: 3 additions & 3 deletions packages/ember-model/lib/has_many.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ function getType(record) {
this.type = get(Ember.lookup, this.type);

if (!this.type) {
var store = record.container.lookup('store:main');
this.type = store.modelFor(type);
this.type.reopenClass({ adapter: store.adapterFor(type) });
var emstore = record.container.lookup('emstore:main');
this.type = emstore.modelFor(type);
this.type.reopenClass({ adapter: emstore.adapterFor(type) });
}
}

Expand Down
4 changes: 2 additions & 2 deletions packages/ember-model/lib/has_many_array.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ Ember.ManyArray = Ember.RecordArray.extend({
var isDirty = false;

for (var i = 0, l = contentLength; i < l; i++) {
if (!originalContent.contains(content[i])) {
if (!originalContent.includes(content[i])) {
isDirty = true;
break;
}
Expand All @@ -38,7 +38,7 @@ Ember.ManyArray = Ember.RecordArray.extend({
objectAtContent: function(idx) {
var content = get(this, 'content');

if (!content.length) { return; }
if (!content.length || idx >= content.length) { return; }

// need to add observer if it wasn't materialized before
var observerNeeded = (content[idx].record) ? false : true;
Expand Down
2 changes: 1 addition & 1 deletion packages/ember-model/lib/rest_adapter.js
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ Ember.RESTAdapter = Ember.Adapter.extend({


Ember.$.ajax(settings);
});
}, 'ember-model: RESTAdapter#ajax ' + method + ' to ' + url);
},

_handleRejections: function(method, jqXHR, resolve, reject) {
Expand Down
12 changes: 6 additions & 6 deletions packages/ember-model/lib/store.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
function NIL() {}

Ember.Model.Store = Ember.Object.extend({
container: null,
//container: null, //NOTE: GJ: see https://github.com/emberjs/ember.js/issues/15322#issuecomment-334132107

modelFor: function(type) {
return this.container.lookupFactory('model:'+type);
Expand Down Expand Up @@ -59,16 +59,16 @@ Ember.Model.Store = Ember.Object.extend({
Ember.onLoad('Ember.Application', function(Application) {

Application.initializer({
name: "store",
name: "emstore",

initialize: function() {
var application = arguments[1] || arguments[0];
var store = application.Store || Ember.Model.Store;
application.register('store:application', store);
application.register('store:main', store);
application.register('emstore:application', store);
application.register('emstore:main', store);

application.inject('route', 'store', 'store:main');
application.inject('controller', 'store', 'store:main');
application.inject('route', 'emstore', 'emstore:main');
application.inject('controller', 'emstore', 'emstore:main');
}
});

Expand Down
2 changes: 1 addition & 1 deletion packages/ember-model/lib/version.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
var VERSION = '0.0.17';
var VERSION = '0.0.22-intercom';

if (Ember.libraries) {
Ember.libraries.register('Ember Model', VERSION);
Expand Down
3 changes: 1 addition & 2 deletions packages/ember-model/tests/adapter/find_query_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,11 @@ test(".find({}) delegates to the adapter's findQuery method", function() {
var records = Model.find({query: "derp"});
ok(records instanceof Ember.RecordArray, "RecordArray is returned");
ok(!records.get('isLoaded'), "RecordArray isn't initially loaded");
ok(!(Model.recordArrays || Ember.A()).contains(records), "The RecordArray created by a findQuery should not be registered");
ok(!(Model.recordArrays || Ember.A()).includes(records), "The RecordArray created by a findQuery should not be registered");

stop();
records.one('didLoad', function() {
start();
ok(records.get('isLoaded'), "RecordArray is loaded after resolved");
});
});

4 changes: 2 additions & 2 deletions packages/ember-model/tests/belongs_to_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -335,7 +335,7 @@ test("should be able to set nonembedded relationship to null", function() {
});

equal(post.get('author'), null);
deepEqual(post.toJSON(), {id: 1, author_id: null});
deepEqual(post.toJSON(), {id: 1, author_id: undefined});
});

test("materializing the relationship should should not dirty the record", function() {
Expand Down Expand Up @@ -721,4 +721,4 @@ test("non embedded belongsTo should return a record with a container", function(
var article = Ember.run(comment, comment.get, 'article');
ok(article.get('container'));
Ember.run(App, 'destroy');
});
});
Loading