backbone-associations-rails 0.5.4 → 0.5.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 38a8eab4e9ce150cff2ba9edfca2b54cd88c9bb7
4
- data.tar.gz: 772e8d99ac3f6b7959f28cc8b55ea0c8ffed7ad4
3
+ metadata.gz: 8ad9d42e9b96ada2d5372ac9afd8a2f61fac9efd
4
+ data.tar.gz: 31a564f8cf0c48b5482bf33651be8b313039563f
5
5
  SHA512:
6
- metadata.gz: 048ed44282eb73cc862404e06632353aa7d1bcfb8d185c7bd31dbdfb5f54eee6106c101ccffce58726f344f50fd6992e5dcbf9e3970402a418693600d0ee19c4
7
- data.tar.gz: c16baa1955e23c1185322c165fbd50c9845bfc0953b1441e5bda653936d91182b2ccc0228fb31e48c52ac84370478742acac4fa7034d4cf2bd6b59015203f6ba
6
+ metadata.gz: a4a617936f29547e43396e8abcd0fe76ff2262a1461c16be6f1cc77a805a4ccb3780b76c8f905da3bab0cf3cf3ec5ea5e408f78c969f76dbe997461945be0026
7
+ data.tar.gz: c546323d8137a0939aa9210c046cceac616859bd8dcddb97bcae61ee4ce28d3ad3d4e856ec398d3becc60ff3f5745003c95359f39ca55e11330a312bce48793b
@@ -1,7 +1,7 @@
1
1
  module Backbone
2
2
  module Associations
3
3
  module Rails
4
- VERSION = '0.5.4'
4
+ VERSION = '0.5.5'
5
5
  end
6
6
  end
7
7
  end
@@ -1,13 +1,13 @@
1
- (function(){var z=this,f,e,w,p,u,v,C,s,D,E,F,q;"undefined"!==typeof exports?(f=require("underscore"),e=require("backbone"),"undefined"!==typeof module&&module.exports&&(module.exports=e),exports=e):(f=z._,e=z.Backbone);w=e.Model;p=e.Collection;u=w.prototype;v=p.prototype;C="change add remove reset sort destroy".split(" ");E=["reset","sort"];e.Associations={VERSION:"0.5.4"};var G=function(){return q},A=function(a){if(!f.isString(a)||1>f.size(a))a=".";q=a;D=RegExp("[\\"+q+"\\[\\]]+","g");F=RegExp("[^\\"+
2
- q+"\\[\\]]+","g")};try{Object.defineProperty(e.Associations,"SEPARATOR",{enumerable:!0,get:G,set:A})}catch(J){}e.Associations.Many=e.Many="Many";e.Associations.One=e.One="One";e.Associations.Self=e.Self="Self";e.Associations.SEPARATOR=".";e.Associations.getSeparator=G;e.Associations.setSeparator=A;A();s=e.AssociatedModel=e.Associations.AssociatedModel=w.extend({relations:void 0,_proxyCalls:void 0,get:function(a){var c=u.get.call(this,a);return c?c:this._getAttr.apply(this,arguments)},set:function(a,
3
- c,d){var b;f.isObject(a)||null==a?(b=a,d=c):(b={},b[a]=c);a=this._set(b,d);this._processPendingEvents();return a},_set:function(a,c){var d,b,H,g,e=this;if(!a)return this;for(d in a)if(b||(b={}),d.match(D)){var n=B(d);g=f.initial(n);n=n[n.length-1];g=this.get(g);g instanceof s&&(g=b[g.cid]||(b[g.cid]={model:g,data:{}}),g.data[n]=a[d])}else g=b[this.cid]||(b[this.cid]={model:this,data:{}}),g.data[d]=a[d];if(b)for(H in b)g=b[H],this._setAttr.call(g.model,g.data,c)||(e=!1);else e=this._setAttr.call(this,
4
- a,c);return e},_setAttr:function(a,c){var d;c||(c={});if(c.unset)for(d in a)a[d]=void 0;this.parents=this.parents||[];this.relations&&f.each(this.relations,function(b){var d=b.key,g=b.relatedModel,m=b.collectionType,n=b.map,k=this.attributes[d],l=k&&k.idAttribute,h,t,r,q=!1;!g||g.prototype instanceof w||(g=f.isFunction(g)?g.call(this,b,a):g);g&&f.isString(g)&&(g=g===e.Self?this.constructor:x(g));m&&f.isString(m)&&(m=x(m));n&&f.isString(n)&&(n=x(n));t=b.options?f.extend({},b.options,c):c;if(!g&&!m)throw Error("specify either a relatedModel or collectionType");
5
- if(a[d]){h=f.result(a,d);h=n?n.call(this,h,m?m:g):h;if(b.type===e.Many){if(m&&!m.prototype instanceof p)throw Error("collectionType must inherit from Backbone.Collection");k?(k._deferEvents=!0,k[t.reset?"reset":"set"](h instanceof p?h.models:h,t),b=k):(q=!0,h instanceof p?b=h:(b=m?new m:this._createCollection(g),b[t.reset?"reset":"set"](h,t)))}else if(b.type===e.One){if(!g)throw Error("specify a relatedModel for Backbone.One type");if(!(g.prototype instanceof e.AssociatedModel))throw Error("specify an AssociatedModel for Backbone.One type");
6
- b=h instanceof s?h:new g(h,t);k&&b.attributes[l]&&k.attributes[l]===b.attributes[l]?(k._deferEvents=!0,k._set(h instanceof s?h.attributes:h,t),b=k):q=!0}else throw Error("type attribute must be specified and have the values Backbone.One or Backbone.Many");r=a[d]=b;if(q||r&&!r._proxyCallback)r._proxyCallback=function(){return this._bubbleEvent.call(this,d,r,arguments)},r.on("all",r._proxyCallback,this)}a.hasOwnProperty(d)&&(k=a[d],l=this.attributes[d],k?(k.parents=k.parents||[],-1==f.indexOf(k.parents,
7
- this)&&k.parents.push(this)):l&&0<l.parents.length&&(l.parents=f.difference(l.parents,[this]),l._proxyCallback&&l.off("all",l._proxyCallback,this)))},this);return u.set.call(this,a,c)},_bubbleEvent:function(a,c,d){var b=d[0].split(":"),e=b[0],g="nested-change"==d[0],m=d[1],n=d[2],k=-1,l=c._proxyCalls,h,t=-1!==f.indexOf(C,e);if(!g){1<f.size(b)&&(h=b[1]);-1!==f.indexOf(E,e)&&(n=m);if(c instanceof p&&t&&m){var r=B(h),u=f.initial(r);(b=c.find(function(a){if(m===a)return!0;if(!a)return!1;var b=a.get(u);
8
- if((b instanceof s||b instanceof p)&&m===b)return!0;b=a.get(r);if((b instanceof s||b instanceof p)&&m===b||b instanceof p&&n&&n===b)return!0}))&&(k=c.indexOf(b))}h=a+(-1===k||"change"!==e&&!h?"":"["+k+"]")+(h?q+h:"");if(/\[\*\]/g.test(h))return this;b=h.replace(/\[\d+\]/g,"[*]");k=[];k.push.apply(k,d);k[0]=e+":"+h;l=c._proxyCalls=l||{};if(this._isEventAvailable.call(this,l,h))return this;l[h]=!0;"change"===e&&(this._previousAttributes[a]=c._previousAttributes,this.changed[a]=c);this.trigger.apply(this,
9
- k);"change"===e&&this.get(h)!=d[2]&&(a=["nested-change",h,d[1]],d[2]&&a.push(d[2]),this.trigger.apply(this,a));l&&h&&delete l[h];h!==b&&(k[0]=e+":"+b,this.trigger.apply(this,k));return this}},_isEventAvailable:function(a,c){return f.find(a,function(a,b){return-1!==c.indexOf(b,c.length-b.length)})},_createCollection:function(a){var c=a;f.isString(c)&&(c=x(c));if(c&&c.prototype instanceof s||f.isFunction(c))a=new p,a.model=c;else throw Error("type must inherit from Backbone.AssociatedModel");return a},
10
- _processPendingEvents:function(){this._processedEvents||(this._processedEvents=!0,this._deferEvents=!1,f.each(this._pendingEvents,function(a){a.c.trigger.apply(a.c,a.a)}),this._pendingEvents=[],f.each(this.relations,function(a){(a=this.attributes[a.key])&&a._processPendingEvents()},this),delete this._processedEvents)},trigger:function(a){this._deferEvents?(this._pendingEvents=this._pendingEvents||[],this._pendingEvents.push({c:this,a:arguments})):u.trigger.apply(this,arguments)},toJSON:function(a){var c=
11
- {},d;c[this.idAttribute]=this.id;this.visited||(this.visited=!0,c=u.toJSON.apply(this,arguments),this.relations&&f.each(this.relations,function(b){var e=this.attributes[b.key];e&&(d=e.toJSON?e.toJSON(a):e,c[b.key]=f.isArray(d)?f.compact(d):d)},this),delete this.visited);return c},clone:function(){return new this.constructor(this.toJSON())},cleanup:function(){f.each(this.relations,function(a){(a=this.attributes[a.key])&&(a.parents=f.difference(a.parents,[this]))},this);this.off()},_getAttr:function(a){var c=
12
- this;a=B(a);var d,b;if(!(1>f.size(a))){for(b=0;b<a.length;b++){d=a[b];if(!c)break;c=c instanceof p?isNaN(d)?void 0:c.at(d):c.attributes[d]}return c}}});var B=function(a){return""===a?[""]:f.isString(a)?a.match(F):a||[]},x=function(a){return f.reduce(a.split(q),function(a,d){return a[d]},z)},I=function(a,c,d){var b,e;f.find(a,function(a){if(b=f.find(a.relations,function(b){return a.get(b.key)===c},this))return e=a,!0},this);return b&&b.map?b.map.call(e,d,c):d},y={};f.each(["set","remove","reset"],
13
- function(a){y[a]=p.prototype[a];v[a]=function(c,d){this.model.prototype instanceof s&&this.parents&&(arguments[0]=I(this.parents,this,c));return y[a].apply(this,arguments)}});y.trigger=v.trigger;v.trigger=function(a){this._deferEvents?(this._pendingEvents=this._pendingEvents||[],this._pendingEvents.push({c:this,a:arguments})):y.trigger.apply(this,arguments)};v._processPendingEvents=s.prototype._processPendingEvents}).call(this);
1
+ (function(){var z=this,g,e,u,q,v,w,r,C,D,p,A;"undefined"!==typeof exports?(g=require("underscore"),e=require("backbone"),"undefined"!==typeof module&&module.exports&&(module.exports=e),exports=e):(g=z._,e=z.Backbone);u=e.Model;q=e.Collection;v=u.prototype;w=q.prototype;e.Associations={VERSION:"0.5.5"};var E=function(){return p},B=function(a){if(!g.isString(a)||1>g.size(a))a=".";p=a;C=RegExp("[\\"+p+"\\[\\]]+","g");D=RegExp("[^\\"+p+"\\[\\]]+","g")};try{Object.defineProperty(e.Associations,"SEPARATOR",
2
+ {enumerable:!0,get:E,set:B})}catch(H){}e.Associations.Many=e.Many="Many";e.Associations.One=e.One="One";e.Associations.Self=e.Self="Self";e.Associations.SEPARATOR=".";e.Associations.getSeparator=E;e.Associations.setSeparator=B;e.Associations.EVENTS_BUBBLE=!0;e.Associations.EVENTS_WILDCARD=!0;e.Associations.EVENTS_NC=!0;B();r=e.AssociatedModel=e.Associations.AssociatedModel=u.extend({relations:void 0,_proxyCalls:void 0,get:function(a){var c=v.get.call(this,a);return c?c:this._getAttr.apply(this,arguments)},
3
+ set:function(a,c,d){var b;g.isObject(a)||null==a?(b=a,d=c):(b={},b[a]=c);a=this._set(b,d);this._processPendingEvents();return a},_set:function(a,c){var d,b,e,f,h=this;if(!a)return this;for(d in a)if(b||(b={}),d.match(C)){var l=F(d);f=g.initial(l);l=l[l.length-1];f=this.get(f);f instanceof r&&(f=b[f.cid]||(b[f.cid]={model:f,data:{}}),f.data[l]=a[d])}else f=b[this.cid]||(b[this.cid]={model:this,data:{}}),f.data[d]=a[d];if(b)for(e in b)f=b[e],this._setAttr.call(f.model,f.data,c)||(h=!1);else h=this._setAttr.call(this,
4
+ a,c);return h},_setAttr:function(a,c){var d;c||(c={});if(c.unset)for(d in a)a[d]=void 0;this.parents=this.parents||[];this.relations&&g.each(this.relations,function(b){var d=b.key,f=b.relatedModel,h=b.collectionType,l=b.map,k=this.attributes[d],n=k&&k.idAttribute,m,s,t,p=!1;!f||f.prototype instanceof u||(f=g.isFunction(f)?f.call(this,b,a):f);f&&g.isString(f)&&(f=f===e.Self?this.constructor:x(f));h&&g.isString(h)&&(h=x(h));l&&g.isString(l)&&(l=x(l));s=b.options?g.extend({},b.options,c):c;if(!f&&!h)throw Error("specify either a relatedModel or collectionType");
5
+ if(a[d]){m=g.result(a,d);m=l?l.call(this,m,h?h:f):m;if(b.type===e.Many){if(h&&!h.prototype instanceof q)throw Error("collectionType must inherit from Backbone.Collection");k?(k._deferEvents=!0,k[s.reset?"reset":"set"](m instanceof q?m.models:m,s),b=k):(p=!0,m instanceof q?b=m:(b=h?new h:this._createCollection(f),b[s.reset?"reset":"set"](m,s)))}else if(b.type===e.One){if(!f)throw Error("specify a relatedModel for Backbone.One type");if(!(f.prototype instanceof e.AssociatedModel))throw Error("specify an AssociatedModel for Backbone.One type");
6
+ b=m instanceof r?m:new f(m,s);k&&b.attributes[n]&&k.attributes[n]===b.attributes[n]?(k._deferEvents=!0,k._set(m instanceof r?m.attributes:m,s),b=k):p=!0}else throw Error("type attribute must be specified and have the values Backbone.One or Backbone.Many");t=a[d]=b;if(p||t&&!t._proxyCallback)t._proxyCallback=function(){return e.Associations.EVENTS_BUBBLE&&this._bubbleEvent.call(this,d,t,arguments)},t.on("all",t._proxyCallback,this)}a.hasOwnProperty(d)&&(k=a[d],n=this.attributes[d],k?(k.parents=k.parents||
7
+ [],-1==g.indexOf(k.parents,this)&&k.parents.push(this)):n&&0<n.parents.length&&(n.parents=g.difference(n.parents,[this]),n._proxyCallback&&n.off("all",n._proxyCallback,this)))},this);return v.set.call(this,a,c)},_bubbleEvent:function(a,c,d){var b=d[0].split(":"),g=b[0],f="change"===g,h=d[1],l=-1,k=c._proxyCalls,b=b[1],n;if("nested-change"!=d[0]){if(e.Associations.EVENTS_WILDCARD&&/\[\*\]/g.test(b))return this;c instanceof q&&(f||b)&&(l=c.indexOf(A||h));this instanceof u&&(A=this);b=a+(-1!==l&&(f||
8
+ b)?"["+l+"]":"")+(b?p+b:"");e.Associations.EVENTS_WILDCARD&&(n=b.replace(/\[\d+\]/g,"[*]"));h=[];h.push.apply(h,d);h[0]=g+":"+b;e.Associations.EVENTS_WILDCARD&&b!==n&&(h[0]=h[0]+" "+g+":"+n);k=c._proxyCalls=k||{};if(this._isEventAvailable.call(this,k,b))return this;k[b]=!0;f&&(this._previousAttributes[a]=c._previousAttributes,this.changed[a]=c);this.trigger.apply(this,h);e.Associations.EVENTS_NC&&(f&&this.get(b)!=d[2])&&(a=["nested-change",b,d[1]],d[2]&&a.push(d[2]),this.trigger.apply(this,a));k&&
9
+ b&&delete k[b];A=void 0;return this}},_isEventAvailable:function(a,c){return g.find(a,function(a,b){return-1!==c.indexOf(b,c.length-b.length)})},_createCollection:function(a){var c=a;g.isString(c)&&(c=x(c));if(c&&c.prototype instanceof r||g.isFunction(c))a=new q,a.model=c;else throw Error("type must inherit from Backbone.AssociatedModel");return a},_processPendingEvents:function(){this._processedEvents||(this._processedEvents=!0,this._deferEvents=!1,g.each(this._pendingEvents,function(a){a.c.trigger.apply(a.c,
10
+ a.a)}),this._pendingEvents=[],g.each(this.relations,function(a){(a=this.attributes[a.key])&&a._processPendingEvents()},this),delete this._processedEvents)},trigger:function(a){this._deferEvents?(this._pendingEvents=this._pendingEvents||[],this._pendingEvents.push({c:this,a:arguments})):v.trigger.apply(this,arguments)},toJSON:function(a){var c={},d;c[this.idAttribute]=this.id;this.visited||(this.visited=!0,c=v.toJSON.apply(this,arguments),this.relations&&g.each(this.relations,function(b){var e=b.key,
11
+ f=b.remoteKey,h=this.attributes[e];b=!b.isTransient;delete c[e];b&&(d=h&&h.toJSON?h.toJSON(a):h,c[f||e]=g.isArray(d)?g.compact(d):d)},this),delete this.visited);return c},clone:function(){return new this.constructor(this.toJSON())},cleanup:function(){g.each(this.relations,function(a){(a=this.attributes[a.key])&&(a.parents=g.difference(a.parents,[this]))},this);this.off()},_getAttr:function(a){var c=this;a=F(a);var d,b;if(!(1>g.size(a))){for(b=0;b<a.length;b++){d=a[b];if(!c)break;c=c instanceof q?
12
+ isNaN(d)?void 0:c.at(d):c.attributes[d]}return c}}});var F=function(a){return""===a?[""]:g.isString(a)?a.match(D):a||[]},x=function(a){return g.reduce(a.split(p),function(a,d){return a[d]},z)},G=function(a,c,d){var b,e;g.find(a,function(a){if(b=g.find(a.relations,function(b){return a.get(b.key)===c},this))return e=a,!0},this);return b&&b.map?b.map.call(e,d,c):d},y={};g.each(["set","remove","reset"],function(a){y[a]=q.prototype[a];w[a]=function(c,d){this.model.prototype instanceof r&&this.parents&&
13
+ (arguments[0]=G(this.parents,this,c));return y[a].apply(this,arguments)}});y.trigger=w.trigger;w.trigger=function(a){this._deferEvents?(this._pendingEvents=this._pendingEvents||[],this._pendingEvents.push({c:this,a:arguments})):y.trigger.apply(this,arguments)};w._processPendingEvents=r.prototype._processPendingEvents}).call(this);
@@ -1,5 +1,5 @@
1
1
  //
2
- // Backbone-associations.js 0.5.4
2
+ // Backbone-associations.js 0.5.5
3
3
  //
4
4
  // (c) 2013 Dhruva Ray, Jaynti Kanani, Persistent Systems Ltd.
5
5
  // Backbone-associations may be freely distributed under the MIT license.
@@ -19,8 +19,8 @@
19
19
  // The top-level namespace. All public Backbone classes and modules will be attached to this.
20
20
  // Exported for the browser and CommonJS.
21
21
  var _, Backbone, BackboneModel, BackboneCollection, ModelProto,
22
- CollectionProto, defaultEvents, AssociatedModel, pathChecker,
23
- collectionEvents, delimiters, pathSeparator;
22
+ CollectionProto, AssociatedModel, pathChecker,
23
+ delimiters, pathSeparator, source;
24
24
 
25
25
  if (typeof exports !== 'undefined') {
26
26
  _ = require('underscore');
@@ -39,12 +39,8 @@
39
39
  ModelProto = BackboneModel.prototype;
40
40
  CollectionProto = BackboneCollection.prototype;
41
41
 
42
- // Built-in Backbone `events`.
43
- defaultEvents = ["change", "add", "remove", "reset", "sort", "destroy"];
44
- collectionEvents = ["reset", "sort"];
45
-
46
42
  Backbone.Associations = {
47
- VERSION: "0.5.4"
43
+ VERSION: "0.5.5"
48
44
  };
49
45
 
50
46
  // Define `getter` and `setter` for `separator`
@@ -82,7 +78,14 @@
82
78
  Backbone.Associations.SEPARATOR = ".";
83
79
  Backbone.Associations.getSeparator = getSeparator;
84
80
  Backbone.Associations.setSeparator = setSeparator;
81
+
82
+ Backbone.Associations.EVENTS_BUBBLE = true;
83
+ Backbone.Associations.EVENTS_WILDCARD = true;
84
+ Backbone.Associations.EVENTS_NC = true;
85
+
86
+
85
87
  setSeparator();
88
+
86
89
  // Define `AssociatedModel` (Extends Backbone.Model).
87
90
  AssociatedModel = Backbone.AssociatedModel = Backbone.Associations.AssociatedModel = BackboneModel.extend({
88
91
  // Define relations with Associated Model.
@@ -91,6 +94,7 @@
91
94
  // and prevent redundant event to be triggered in case of cyclic model graphs.
92
95
  _proxyCalls:undefined,
93
96
 
97
+
94
98
  // Get the value of an attribute.
95
99
  get:function (attr) {
96
100
  var obj = ModelProto.get.call(this, attr);
@@ -261,7 +265,8 @@
261
265
  // Only add callback if not defined or new Ctx has been identified.
262
266
  if (newCtx || (relationValue && !relationValue._proxyCallback)) {
263
267
  relationValue._proxyCallback = function () {
264
- return this._bubbleEvent.call(this, relationKey, relationValue, arguments);
268
+ return Backbone.Associations.EVENTS_BUBBLE &&
269
+ this._bubbleEvent.call(this, relationKey, relationValue, arguments);
265
270
  };
266
271
  relationValue.on("all", relationValue._proxyCallback, this);
267
272
  }
@@ -286,70 +291,59 @@
286
291
  // Return results for `BackboneModel.set`.
287
292
  return ModelProto.set.call(this, attributes, options);
288
293
  },
294
+
295
+
289
296
  // Bubble-up event to `parent` Model
290
297
  _bubbleEvent:function (relationKey, relationValue, eventArguments) {
291
298
  var args = eventArguments,
292
299
  opt = args[0].split(":"),
293
300
  eventType = opt[0],
294
301
  catch_all = args[0] == "nested-change",
302
+ isChangeEvent = eventType === "change",
295
303
  eventObject = args[1],
296
- colObject = args[2],
297
304
  indexEventObject = -1,
298
305
  _proxyCalls = relationValue._proxyCalls,
299
306
  cargs,
300
- eventPath,
301
- basecolEventPath,
302
- isDefaultEvent = _.indexOf(defaultEvents, eventType) !== -1;
307
+ eventPath = opt[1],
308
+ basecolEventPath;
303
309
 
304
- //Short circuit the listen in to the nested-graph event
305
- if (catch_all) return;
306
310
 
307
- // Change the event name to a fully qualified path.
308
- _.size(opt) > 1 && (eventPath = opt[1]);
311
+ // Short circuit the listen in to the nested-graph event
312
+ if (catch_all) return;
309
313
 
310
- if (_.indexOf(collectionEvents, eventType) !== -1) {
311
- colObject = eventObject;
314
+ // Short circuit the listen in to the wild-card event
315
+ if (Backbone.Associations.EVENTS_WILDCARD) {
316
+ if (/\[\*\]/g.test(eventPath)) return this;
312
317
  }
313
318
 
314
- // Find the specific object in the collection which has changed.
315
- if (relationValue instanceof BackboneCollection && isDefaultEvent && eventObject) {
316
- var pathTokens = getPathArray(eventPath),
317
- initialTokens = _.initial(pathTokens), colModel;
318
-
319
- colModel = relationValue.find(function (model) {
320
- if (eventObject === model) return true;
321
- if (!model) return false;
322
- var changedModel = model.get(initialTokens);
323
-
324
- if ((changedModel instanceof AssociatedModel || changedModel instanceof BackboneCollection)
325
- && eventObject === changedModel)
326
- return true;
327
-
328
- changedModel = model.get(pathTokens);
329
-
330
- if ((changedModel instanceof AssociatedModel || changedModel instanceof BackboneCollection)
331
- && eventObject === changedModel)
332
- return true;
333
-
334
- if (changedModel instanceof BackboneCollection && colObject
335
- && colObject === changedModel)
336
- return true;
337
- });
338
- colModel && (indexEventObject = relationValue.indexOf(colModel));
319
+ if (relationValue instanceof BackboneCollection && (isChangeEvent || eventPath)) {
320
+ // O(n) search :(
321
+ indexEventObject = relationValue.indexOf(source || eventObject);
339
322
  }
340
323
 
324
+ if (this instanceof BackboneModel) {
325
+ // A quicker way to identify the model which caused an update inside the collection (while bubbling up)
326
+ source = this;
327
+ }
341
328
  // Manipulate `eventPath`.
342
- eventPath = relationKey + ((indexEventObject !== -1 && (eventType === "change" || eventPath)) ?
329
+ eventPath = relationKey + ((indexEventObject !== -1 && (isChangeEvent || eventPath)) ?
343
330
  "[" + indexEventObject + "]" : "") + (eventPath ? pathSeparator + eventPath : "");
344
331
 
345
332
  // Short circuit collection * events
346
- if (/\[\*\]/g.test(eventPath)) return this;
347
- basecolEventPath = eventPath.replace(/\[\d+\]/g, '[*]');
333
+
334
+ if (Backbone.Associations.EVENTS_WILDCARD) {
335
+ basecolEventPath = eventPath.replace(/\[\d+\]/g, '[*]');
336
+ }
348
337
 
349
338
  cargs = [];
350
339
  cargs.push.apply(cargs, args);
351
340
  cargs[0] = eventType + ":" + eventPath;
352
341
 
342
+ // Create a collection modified event with wild-card
343
+ if (Backbone.Associations.EVENTS_WILDCARD && eventPath !== basecolEventPath) {
344
+ cargs[0] = cargs[0] + " " + eventType + ":" + basecolEventPath;
345
+ }
346
+
353
347
  // If event has been already triggered as result of same source `eventPath`,
354
348
  // no need to re-trigger event to prevent cycle.
355
349
  _proxyCalls = relationValue._proxyCalls = (_proxyCalls || {});
@@ -358,17 +352,19 @@
358
352
  // Add `eventPath` in `_proxyCalls` to keep track of already triggered `event`.
359
353
  _proxyCalls[eventPath] = true;
360
354
 
355
+
361
356
  // Set up previous attributes correctly.
362
- if ("change" === eventType) {
357
+ if (isChangeEvent) {
363
358
  this._previousAttributes[relationKey] = relationValue._previousAttributes;
364
359
  this.changed[relationKey] = relationValue;
365
360
  }
366
361
 
367
362
  // Bubble up event to parent `model` with new changed arguments.
363
+
368
364
  this.trigger.apply(this, cargs);
369
365
 
370
366
  //Only fire for change. Not change:attribute
371
- if ("change" === eventType && this.get(eventPath) != args[2]) {
367
+ if (Backbone.Associations.EVENTS_NC && isChangeEvent && this.get(eventPath) != args[2]) {
372
368
  var ncargs = ["nested-change", eventPath, args[1]];
373
369
  args[2] && ncargs.push(args[2]); //args[2] will be options if present
374
370
  this.trigger.apply(this, ncargs);
@@ -379,11 +375,7 @@
379
375
  // which allow event to be triggered on for next operation of `set`.
380
376
  if (_proxyCalls && eventPath) delete _proxyCalls[eventPath];
381
377
 
382
- // Create a collection modified event with wild-card
383
- if (eventPath !== basecolEventPath) {
384
- cargs[0] = eventType + ":" + basecolEventPath;
385
- this.trigger.apply(this, cargs);
386
- }
378
+ source = undefined;
387
379
 
388
380
  return this;
389
381
  },
@@ -457,11 +449,21 @@
457
449
  // and added it's json representation to parents' json representation.
458
450
  if (this.relations) {
459
451
  _.each(this.relations, function (relation) {
460
- var attr = this.attributes[relation.key];
461
- if (attr) {
462
- aJson = attr.toJSON ? attr.toJSON(options) : attr;
463
- json[relation.key] = _.isArray(aJson) ? _.compact(aJson) : aJson;
452
+ var key = relation.key,
453
+ remoteKey = relation.remoteKey,
454
+ attr = this.attributes[key],
455
+ serialize = !relation.isTransient;
456
+
457
+ // Remove default Backbone serialization for associations.
458
+ delete json[key];
459
+
460
+ //Assign to remoteKey if specified. Otherwise use the default key.
461
+ //Only for non-transient relationships
462
+ if (serialize) {
463
+ aJson = attr && attr.toJSON ? attr.toJSON(options) : attr;
464
+ json[remoteKey || key] = _.isArray(aJson) ? _.compact(aJson) : aJson;
464
465
  }
466
+
465
467
  }, this);
466
468
  }
467
469
  delete this.visited;
@@ -2,7 +2,7 @@
2
2
  "version":3,
3
3
  "file":"backbone-associations-min.js",
4
4
  "lineCount":13,
5
- "mappings":"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",
5
+ "mappings":"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",
6
6
  "sources":["backbone-associations.js"],
7
- "names":["root","_","Backbone","BackboneModel","BackboneCollection","ModelProto","CollectionProto","defaultEvents","AssociatedModel","pathChecker","collectionEvents","delimiters","pathSeparator","exports","require","module","Model","Collection","prototype","Associations","getSeparator","setSeparator","value","isString","size","RegExp","Object","defineProperty","e","Many","One","Self","SEPARATOR","extend","undefined","get","attr","obj","call","_getAttr","apply","arguments","set","key","options","attributes","isObject","result","_set","_processPendingEvents","modelMap","modelId","match","pathTokens","getPathArray","initials","initial","last","length","parentModel","cid","data","_setAttr","model","unset","parents","relations","each","relation","relationKey","relatedModel","collectionType","map","currVal","idKey","idAttribute","val","relationOptions","relationValue","newCtx","isFunction","constructor","map2Scope","Error","type","_deferEvents","reset","models","_createCollection","_proxyCallback","relationValue._proxyCallback","_bubbleEvent","on","hasOwnProperty","updated","original","indexOf","push","difference","off","eventArguments","opt","split","eventType","catch_all","eventObject","colObject","indexEventObject","_proxyCalls","eventPath","isDefaultEvent","initialTokens","colModel","find","changedModel","test","basecolEventPath","replace","cargs","_isEventAvailable","_previousAttributes","changed","trigger","ncargs","path","eventKey","collection","_processedEvents","_pendingEvents","c","a","name","toJSON","json","aJson","id","visited","isArray","compact","clone","cleanup","attrs","i","isNaN","at","reduce","memo","elem","map2models","target","surrogate","parent","rel","proxies","method"]
7
+ "names":["root","_","Backbone","BackboneModel","BackboneCollection","ModelProto","CollectionProto","AssociatedModel","pathChecker","delimiters","pathSeparator","source","exports","require","module","Model","Collection","prototype","Associations","getSeparator","setSeparator","value","isString","size","RegExp","Object","defineProperty","e","Many","One","Self","SEPARATOR","EVENTS_BUBBLE","EVENTS_WILDCARD","EVENTS_NC","extend","undefined","get","attr","obj","call","_getAttr","apply","arguments","set","key","options","attributes","isObject","result","_set","_processPendingEvents","modelMap","modelId","match","pathTokens","getPathArray","initials","initial","last","length","parentModel","cid","data","_setAttr","model","unset","parents","relations","each","relation","relationKey","relatedModel","collectionType","map","currVal","idKey","idAttribute","val","relationOptions","relationValue","newCtx","isFunction","constructor","map2Scope","Error","type","_deferEvents","reset","models","_createCollection","_proxyCallback","relationValue._proxyCallback","_bubbleEvent","on","hasOwnProperty","updated","original","indexOf","push","difference","off","eventArguments","opt","split","eventType","isChangeEvent","eventObject","indexEventObject","_proxyCalls","eventPath","basecolEventPath","test","replace","cargs","_isEventAvailable","_previousAttributes","changed","trigger","ncargs","path","find","eventKey","collection","_processedEvents","_pendingEvents","c","a","name","toJSON","json","aJson","id","visited","remoteKey","serialize","isTransient","isArray","compact","clone","cleanup","attrs","i","isNaN","at","reduce","memo","elem","map2models","target","surrogate","parent","rel","proxies","method"]
8
8
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: backbone-associations-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.4
4
+ version: 0.5.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stafford Brunk
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-14 00:00:00.000000000 Z
11
+ date: 2014-02-07 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Backbone-associations provides a way of specifying 1:1 and 1:N relationships
14
14
  between Backbone models. Additionally, parent model instances (and objects extended
@@ -51,7 +51,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
51
51
  version: '0'
52
52
  requirements: []
53
53
  rubyforge_project:
54
- rubygems_version: 2.1.10
54
+ rubygems_version: 2.0.14
55
55
  signing_key:
56
56
  specification_version: 4
57
57
  summary: Packages the backbone.associations library for use with the asset pipline