rivets-rails 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- data/build/update.sh +1 -1
- data/dist/rivets.custom.binders.js +4 -0
- data/dist/rivets.custom.formatters.js +9 -0
- data/dist/rivets.general_custom.js +13 -0
- data/dist/rivets.general_custom.js.min.js +1 -1
- data/dist/rivets.js +57 -72
- data/dist/rivets.min.js +2 -2
- data/lib/rivets-rails/version.rb +1 -1
- data/src/rivets.custom.binders.coffee +9 -1
- data/src/rivets.custom.formatters.coffee +19 -1
- data/src/rivets.custom.general_adapter.coffee +1 -0
- data/vendor/assets/javascripts/rivets.custom.binders.js +4 -0
- data/vendor/assets/javascripts/rivets.custom.formatters.js +9 -0
- data/vendor/assets/javascripts/rivets.general_custom.js +13 -0
- data/vendor/assets/javascripts/rivets.general_custom.js.min.js +1 -1
- data/vendor/assets/javascripts/rivets.js +57 -72
- data/vendor/assets/javascripts/rivets.min.js +2 -2
- metadata +2 -2
data/build/update.sh
CHANGED
@@ -51,4 +51,13 @@
|
|
51
51
|
return value.length;
|
52
52
|
};
|
53
53
|
|
54
|
+
rivets.formatters.mask = function(value, left, right, mask) {
|
55
|
+
var formatted;
|
56
|
+
|
57
|
+
formatted = value.substring(0, left);
|
58
|
+
formatted + mask;
|
59
|
+
formatted += value.substring(value.length - right);
|
60
|
+
return formatted;
|
61
|
+
};
|
62
|
+
|
54
63
|
}).call(this);
|
@@ -34,6 +34,10 @@
|
|
34
34
|
}
|
35
35
|
};
|
36
36
|
|
37
|
+
rivets.binders.color = function(el, value) {
|
38
|
+
return el.style.color = value;
|
39
|
+
};
|
40
|
+
|
37
41
|
}).call(this);
|
38
42
|
|
39
43
|
(function() {
|
@@ -89,6 +93,15 @@
|
|
89
93
|
return value.length;
|
90
94
|
};
|
91
95
|
|
96
|
+
rivets.formatters.mask = function(value, left, right, mask) {
|
97
|
+
var formatted;
|
98
|
+
|
99
|
+
formatted = value.substring(0, left);
|
100
|
+
formatted + mask;
|
101
|
+
formatted += value.substring(value.length - right);
|
102
|
+
return formatted;
|
103
|
+
};
|
104
|
+
|
92
105
|
}).call(this);
|
93
106
|
|
94
107
|
(function() {
|
@@ -2,4 +2,4 @@
|
|
2
2
|
// version: 0.1.1
|
3
3
|
// author: vkill
|
4
4
|
// license: MIT
|
5
|
-
!function(){var a;a=this.rivets,a.configure({prefix:"bind"})}.call(this),function(){var a;a=this.rivets,a.binders.content={routine:a.binders.text,bind:function(b){var c;return c=this,this.callback=function(){return a.config.adapter.publish(c.model,c.keypath,b.textContent)},b.addEventListener("input",this.callback,!1)},unbind:function(a){return a.removeEventListener("input",this.callback,!1)}}}.call(this),function(){var a;a=this.rivets,a.formatters.shortdate=function(a){return moment(a).format("YYYY-MM-DD")},a.formatters.number=function(a){return+a},a.formatters.string=function(a){return String(a)},a.formatters.negate=function(a){return!a},a.formatters.eq=function(a,b){return a===b},a.formatters.not_eq=function(a,b){return a!==b},a.formatters.gt=function(a,b){return a>b},a.formatters.lt=function(a,b){return b>a},a.formatters.blank=function(a){return null==a||""===a},a.formatters.preventDefault=function(a){return function(b){return b.preventDefault(),a.call(this,b),!1}},a.formatters.length=function(a){return a.length}}.call(this),function(){var a;a=this.rivets,a.configure({adapter:{subscribe:function(a,b,c){return null!=a.on?a.on("change:"+b,c):void 0},unsubscribe:function(a,b,c){return null!=a.off?a.off("change:"+b,c):void 0},read:function(a,b){return a[b]},publish:function(a,b,c){return a[b]=c}}})}.call(this);
|
5
|
+
!function(){var a;a=this.rivets,a.configure({prefix:"bind"})}.call(this),function(){var a;a=this.rivets,a.binders.content={routine:a.binders.text,bind:function(b){var c;return c=this,this.callback=function(){return a.config.adapter.publish(c.model,c.keypath,b.textContent)},b.addEventListener("input",this.callback,!1)},unbind:function(a){return a.removeEventListener("input",this.callback,!1)}},a.binders.color=function(a,b){return a.style.color=b}}.call(this),function(){var a;a=this.rivets,a.formatters.shortdate=function(a){return moment(a).format("YYYY-MM-DD")},a.formatters.number=function(a){return+a},a.formatters.string=function(a){return String(a)},a.formatters.negate=function(a){return!a},a.formatters.eq=function(a,b){return a===b},a.formatters.not_eq=function(a,b){return a!==b},a.formatters.gt=function(a,b){return a>b},a.formatters.lt=function(a,b){return b>a},a.formatters.blank=function(a){return null==a||""===a},a.formatters.preventDefault=function(a){return function(b){return b.preventDefault(),a.call(this,b),!1}},a.formatters.length=function(a){return a.length},a.formatters.mask=function(a,b,c,d){var e;return e=a.substring(0,b),e+=a.substring(a.length-c)}}.call(this),function(){var a;a=this.rivets,a.configure({adapter:{subscribe:function(a,b,c){return null!=a.on?a.on("change:"+b,c):void 0},unsubscribe:function(a,b,c){return null!=a.off?a.off("change:"+b,c):void 0},read:function(a,b){return a[b]},publish:function(a,b,c){return a[b]=c}}})}.call(this);
|
data/dist/rivets.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Rivets.js
|
2
|
-
// version: 0.5.
|
2
|
+
// version: 0.5.12
|
3
3
|
// author: Michael Richards
|
4
4
|
// license: MIT
|
5
5
|
(function() {
|
@@ -21,7 +21,6 @@
|
|
21
21
|
Rivets.Binding = (function() {
|
22
22
|
function Binding(view, el, type, key, keypath, options) {
|
23
23
|
var identifier, regexp, value, _ref;
|
24
|
-
|
25
24
|
this.view = view;
|
26
25
|
this.el = el;
|
27
26
|
this.type = type;
|
@@ -36,7 +35,7 @@
|
|
36
35
|
this.set = __bind(this.set, this);
|
37
36
|
this.eventHandler = __bind(this.eventHandler, this);
|
38
37
|
this.formattedValue = __bind(this.formattedValue, this);
|
39
|
-
if (!(this.binder =
|
38
|
+
if (!(this.binder = this.view.binders[type])) {
|
40
39
|
_ref = this.view.binders;
|
41
40
|
for (identifier in _ref) {
|
42
41
|
value = _ref[identifier];
|
@@ -62,7 +61,6 @@
|
|
62
61
|
|
63
62
|
Binding.prototype.formattedValue = function(value) {
|
64
63
|
var args, formatter, id, _i, _len, _ref;
|
65
|
-
|
66
64
|
_ref = this.formatters;
|
67
65
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
68
66
|
formatter = _ref[_i];
|
@@ -80,7 +78,6 @@
|
|
80
78
|
|
81
79
|
Binding.prototype.eventHandler = function(fn) {
|
82
80
|
var binding, handler;
|
83
|
-
|
84
81
|
handler = (binding = this).view.config.handler;
|
85
82
|
return function(ev) {
|
86
83
|
return handler.call(fn, this, ev, binding);
|
@@ -89,7 +86,6 @@
|
|
89
86
|
|
90
87
|
Binding.prototype.set = function(value) {
|
91
88
|
var _ref;
|
92
|
-
|
93
89
|
value = value instanceof Function && !this.binder["function"] ? this.formattedValue(value.call(this.model)) : this.formattedValue(value);
|
94
90
|
return (_ref = this.binder.routine) != null ? _ref.call(this, this.el, value) : void 0;
|
95
91
|
};
|
@@ -100,7 +96,6 @@
|
|
100
96
|
|
101
97
|
Binding.prototype.publish = function() {
|
102
98
|
var args, formatter, id, value, _i, _len, _ref, _ref1, _ref2;
|
103
|
-
|
104
99
|
value = Rivets.Util.getInputValue(this.el);
|
105
100
|
_ref = this.formatters.slice(0).reverse();
|
106
101
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -116,7 +111,6 @@
|
|
116
111
|
|
117
112
|
Binding.prototype.bind = function() {
|
118
113
|
var dependency, keypath, model, _i, _len, _ref, _ref1, _ref2, _results;
|
119
|
-
|
120
114
|
if ((_ref = this.binder.bind) != null) {
|
121
115
|
_ref.call(this, this.el);
|
122
116
|
}
|
@@ -149,7 +143,6 @@
|
|
149
143
|
|
150
144
|
Binding.prototype.unbind = function() {
|
151
145
|
var dependency, keypath, model, _i, _len, _ref, _ref1, _ref2, _results;
|
152
|
-
|
153
146
|
if ((_ref = this.binder.unbind) != null) {
|
154
147
|
_ref.call(this, this.el);
|
155
148
|
}
|
@@ -177,7 +170,6 @@
|
|
177
170
|
|
178
171
|
Binding.prototype.update = function(models) {
|
179
172
|
var _ref;
|
180
|
-
|
181
173
|
if (models == null) {
|
182
174
|
models = {};
|
183
175
|
}
|
@@ -211,7 +203,6 @@
|
|
211
203
|
|
212
204
|
function ComponentBinding(view, el, type) {
|
213
205
|
var attribute, _i, _len, _ref, _ref1;
|
214
|
-
|
215
206
|
this.view = view;
|
216
207
|
this.el = el;
|
217
208
|
this.type = type;
|
@@ -236,8 +227,7 @@
|
|
236
227
|
ComponentBinding.prototype.sync = function() {};
|
237
228
|
|
238
229
|
ComponentBinding.prototype.locals = function(models) {
|
239
|
-
var inverse, key, model, result, _ref, _ref1;
|
240
|
-
|
230
|
+
var inverse, key, model, path, result, _i, _len, _ref, _ref1;
|
241
231
|
if (models == null) {
|
242
232
|
models = this.view.models;
|
243
233
|
}
|
@@ -245,11 +235,15 @@
|
|
245
235
|
_ref = this.inflections;
|
246
236
|
for (key in _ref) {
|
247
237
|
inverse = _ref[key];
|
248
|
-
|
238
|
+
_ref1 = inverse.split('.');
|
239
|
+
for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
|
240
|
+
path = _ref1[_i];
|
241
|
+
result[key] = (result[key] || models)[path];
|
242
|
+
}
|
249
243
|
}
|
250
244
|
for (key in models) {
|
251
245
|
model = models[key];
|
252
|
-
if (
|
246
|
+
if (result[key] == null) {
|
253
247
|
result[key] = model;
|
254
248
|
}
|
255
249
|
}
|
@@ -258,13 +252,11 @@
|
|
258
252
|
|
259
253
|
ComponentBinding.prototype.update = function(models) {
|
260
254
|
var _ref;
|
261
|
-
|
262
255
|
return (_ref = this.componentView) != null ? _ref.update(this.locals(models)) : void 0;
|
263
256
|
};
|
264
257
|
|
265
258
|
ComponentBinding.prototype.bind = function() {
|
266
259
|
var el, _ref;
|
267
|
-
|
268
260
|
if (this.componentView != null) {
|
269
261
|
return (_ref = this.componentView) != null ? _ref.bind() : void 0;
|
270
262
|
} else {
|
@@ -276,7 +268,6 @@
|
|
276
268
|
|
277
269
|
ComponentBinding.prototype.unbind = function() {
|
278
270
|
var _ref;
|
279
|
-
|
280
271
|
return (_ref = this.componentView) != null ? _ref.unbind() : void 0;
|
281
272
|
};
|
282
273
|
|
@@ -284,10 +275,38 @@
|
|
284
275
|
|
285
276
|
})(Rivets.Binding);
|
286
277
|
|
278
|
+
Rivets.TextBinding = (function(_super) {
|
279
|
+
__extends(TextBinding, _super);
|
280
|
+
|
281
|
+
function TextBinding(view, el, type, key, keypath, options) {
|
282
|
+
this.view = view;
|
283
|
+
this.el = el;
|
284
|
+
this.type = type;
|
285
|
+
this.key = key;
|
286
|
+
this.keypath = keypath;
|
287
|
+
this.options = options != null ? options : {};
|
288
|
+
this.sync = __bind(this.sync, this);
|
289
|
+
this.formatters = this.options.formatters || [];
|
290
|
+
this.model = this.key ? this.view.models[this.key] : this.view.models;
|
291
|
+
}
|
292
|
+
|
293
|
+
TextBinding.prototype.binder = {
|
294
|
+
routine: function(node, value) {
|
295
|
+
return node.data = value != null ? value : '';
|
296
|
+
}
|
297
|
+
};
|
298
|
+
|
299
|
+
TextBinding.prototype.sync = function() {
|
300
|
+
return TextBinding.__super__.sync.apply(this, arguments);
|
301
|
+
};
|
302
|
+
|
303
|
+
return TextBinding;
|
304
|
+
|
305
|
+
})(Rivets.Binding);
|
306
|
+
|
287
307
|
Rivets.View = (function() {
|
288
308
|
function View(els, models, options) {
|
289
|
-
var k, option, v, _base, _i, _len, _ref, _ref1, _ref2
|
290
|
-
|
309
|
+
var k, option, v, _base, _i, _len, _ref, _ref1, _ref2;
|
291
310
|
this.els = els;
|
292
311
|
this.models = models;
|
293
312
|
this.options = options != null ? options : {};
|
@@ -317,7 +336,7 @@
|
|
317
336
|
_ref2 = Rivets[option];
|
318
337
|
for (k in _ref2) {
|
319
338
|
v = _ref2[k];
|
320
|
-
if ((
|
339
|
+
if ((_base = this[option])[k] == null) {
|
321
340
|
_base[k] = v;
|
322
341
|
}
|
323
342
|
}
|
@@ -327,7 +346,6 @@
|
|
327
346
|
|
328
347
|
View.prototype.bindingRegExp = function() {
|
329
348
|
var prefix;
|
330
|
-
|
331
349
|
prefix = this.config.prefix;
|
332
350
|
if (prefix) {
|
333
351
|
return new RegExp("^data-" + prefix + "-");
|
@@ -338,25 +356,21 @@
|
|
338
356
|
|
339
357
|
View.prototype.componentRegExp = function() {
|
340
358
|
var _ref, _ref1;
|
341
|
-
|
342
359
|
return new RegExp("^" + ((_ref = (_ref1 = this.config.prefix) != null ? _ref1.toUpperCase() : void 0) != null ? _ref : 'RV') + "-");
|
343
360
|
};
|
344
361
|
|
345
362
|
View.prototype.build = function() {
|
346
363
|
var bindingRegExp, buildBinding, componentRegExp, el, parse, skipNodes, _i, _len, _ref,
|
347
364
|
_this = this;
|
348
|
-
|
349
365
|
this.bindings = [];
|
350
366
|
skipNodes = [];
|
351
367
|
bindingRegExp = this.bindingRegExp();
|
352
368
|
componentRegExp = this.componentRegExp();
|
353
|
-
buildBinding = function(node, type, declaration) {
|
369
|
+
buildBinding = function(binding, node, type, declaration) {
|
354
370
|
var context, ctx, dependencies, key, keypath, options, path, pipe, pipes, splitPath;
|
355
|
-
|
356
371
|
options = {};
|
357
372
|
pipes = (function() {
|
358
373
|
var _i, _len, _ref, _results;
|
359
|
-
|
360
374
|
_ref = declaration.split('|');
|
361
375
|
_results = [];
|
362
376
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -367,7 +381,6 @@
|
|
367
381
|
})();
|
368
382
|
context = (function() {
|
369
383
|
var _i, _len, _ref, _results;
|
370
|
-
|
371
384
|
_ref = pipes.shift().split('<');
|
372
385
|
_results = [];
|
373
386
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -390,11 +403,10 @@
|
|
390
403
|
if (dependencies = context.shift()) {
|
391
404
|
options.dependencies = dependencies.split(/\s+/);
|
392
405
|
}
|
393
|
-
return _this.bindings.push(new Rivets
|
406
|
+
return _this.bindings.push(new Rivets[binding](_this, node, type, key, keypath, options));
|
394
407
|
};
|
395
408
|
parse = function(node) {
|
396
409
|
var attribute, attributes, binder, childNode, delimiters, identifier, n, parser, regexp, restTokens, startToken, text, token, tokens, type, value, _i, _j, _k, _l, _len, _len1, _len2, _len3, _len4, _m, _ref, _ref1, _ref2, _ref3, _ref4, _results;
|
397
|
-
|
398
410
|
if (__indexOf.call(skipNodes, node) < 0) {
|
399
411
|
if (node.nodeType === Node.TEXT_NODE) {
|
400
412
|
parser = Rivets.TextTemplateParser;
|
@@ -403,18 +415,17 @@
|
|
403
415
|
if (!(tokens.length === 1 && tokens[0].type === parser.types.text)) {
|
404
416
|
startToken = tokens[0], restTokens = 2 <= tokens.length ? __slice.call(tokens, 1) : [];
|
405
417
|
node.data = startToken.value;
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
case 1:
|
411
|
-
buildBinding(node, 'textNode', startToken.value);
|
418
|
+
if (startToken.type === 0) {
|
419
|
+
node.data = startToken.value;
|
420
|
+
} else {
|
421
|
+
buildBinding('TextBinding', node, null, startToken.value);
|
412
422
|
}
|
413
423
|
for (_i = 0, _len = restTokens.length; _i < _len; _i++) {
|
414
424
|
token = restTokens[_i];
|
415
|
-
|
425
|
+
text = document.createTextNode(token.value);
|
426
|
+
node.parentNode.appendChild(text);
|
416
427
|
if (token.type === 1) {
|
417
|
-
buildBinding(text,
|
428
|
+
buildBinding('TextBinding', text, null, token.value);
|
418
429
|
}
|
419
430
|
}
|
420
431
|
}
|
@@ -457,7 +468,7 @@
|
|
457
468
|
attribute = _ref3[_l];
|
458
469
|
if (bindingRegExp.test(attribute.name)) {
|
459
470
|
type = attribute.name.replace(bindingRegExp, '');
|
460
|
-
buildBinding(node, type, attribute.value);
|
471
|
+
buildBinding('Binding', node, type, attribute.value);
|
461
472
|
}
|
462
473
|
}
|
463
474
|
}
|
@@ -479,7 +490,6 @@
|
|
479
490
|
|
480
491
|
View.prototype.select = function(fn) {
|
481
492
|
var binding, _i, _len, _ref, _results;
|
482
|
-
|
483
493
|
_ref = this.bindings;
|
484
494
|
_results = [];
|
485
495
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -493,7 +503,6 @@
|
|
493
503
|
|
494
504
|
View.prototype.bind = function() {
|
495
505
|
var binding, _i, _len, _ref, _results;
|
496
|
-
|
497
506
|
_ref = this.bindings;
|
498
507
|
_results = [];
|
499
508
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -505,7 +514,6 @@
|
|
505
514
|
|
506
515
|
View.prototype.unbind = function() {
|
507
516
|
var binding, _i, _len, _ref, _results;
|
508
|
-
|
509
517
|
_ref = this.bindings;
|
510
518
|
_results = [];
|
511
519
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -517,7 +525,6 @@
|
|
517
525
|
|
518
526
|
View.prototype.sync = function() {
|
519
527
|
var binding, _i, _len, _ref, _results;
|
520
|
-
|
521
528
|
_ref = this.bindings;
|
522
529
|
_results = [];
|
523
530
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -529,7 +536,6 @@
|
|
529
536
|
|
530
537
|
View.prototype.publish = function() {
|
531
538
|
var binding, _i, _len, _ref, _results;
|
532
|
-
|
533
539
|
_ref = this.select(function(b) {
|
534
540
|
return b.binder.publishes;
|
535
541
|
});
|
@@ -543,7 +549,6 @@
|
|
543
549
|
|
544
550
|
View.prototype.update = function(models) {
|
545
551
|
var binding, key, model, _i, _len, _ref, _results;
|
546
|
-
|
547
552
|
if (models == null) {
|
548
553
|
models = {};
|
549
554
|
}
|
@@ -574,7 +579,6 @@
|
|
574
579
|
|
575
580
|
TextTemplateParser.parse = function(template, delimiters) {
|
576
581
|
var index, lastIndex, lastToken, length, substring, tokens, value;
|
577
|
-
|
578
582
|
tokens = [];
|
579
583
|
length = template.length;
|
580
584
|
index = 0;
|
@@ -657,7 +661,6 @@
|
|
657
661
|
},
|
658
662
|
getInputValue: function(el) {
|
659
663
|
var o, _i, _len, _results;
|
660
|
-
|
661
664
|
if (window.jQuery != null) {
|
662
665
|
el = jQuery(el);
|
663
666
|
switch (el[0].type) {
|
@@ -704,7 +707,6 @@
|
|
704
707
|
},
|
705
708
|
routine: function(el, value) {
|
706
709
|
var _ref;
|
707
|
-
|
708
710
|
if (el.type === 'radio') {
|
709
711
|
return el.checked = ((_ref = el.value) != null ? _ref.toString() : void 0) === (value != null ? value.toString() : void 0);
|
710
712
|
} else {
|
@@ -722,7 +724,6 @@
|
|
722
724
|
},
|
723
725
|
routine: function(el, value) {
|
724
726
|
var _ref;
|
725
|
-
|
726
727
|
if (el.type === 'radio') {
|
727
728
|
return el.checked = ((_ref = el.value) != null ? _ref.toString() : void 0) !== (value != null ? value.toString() : void 0);
|
728
729
|
} else {
|
@@ -749,7 +750,6 @@
|
|
749
750
|
},
|
750
751
|
routine: function(el, value) {
|
751
752
|
var o, _i, _len, _ref, _ref1, _ref2, _results;
|
752
|
-
|
753
753
|
if (window.jQuery != null) {
|
754
754
|
el = jQuery(el);
|
755
755
|
if ((value != null ? value.toString() : void 0) !== ((_ref = el.val()) != null ? _ref.toString() : void 0)) {
|
@@ -782,7 +782,6 @@
|
|
782
782
|
block: true,
|
783
783
|
bind: function(el) {
|
784
784
|
var attr, declaration;
|
785
|
-
|
786
785
|
if (this.marker == null) {
|
787
786
|
attr = ['data', this.view.config.prefix, this.type].join('-').replace('--', '-');
|
788
787
|
declaration = el.getAttribute(attr);
|
@@ -794,12 +793,10 @@
|
|
794
793
|
},
|
795
794
|
unbind: function() {
|
796
795
|
var _ref;
|
797
|
-
|
798
796
|
return (_ref = this.nested) != null ? _ref.unbind() : void 0;
|
799
797
|
},
|
800
798
|
routine: function(el, value) {
|
801
799
|
var key, model, models, options, _ref;
|
802
|
-
|
803
800
|
if (!!value === (this.nested == null)) {
|
804
801
|
if (value) {
|
805
802
|
models = {};
|
@@ -823,7 +820,8 @@
|
|
823
820
|
}
|
824
821
|
},
|
825
822
|
update: function(models) {
|
826
|
-
|
823
|
+
var _ref;
|
824
|
+
return (_ref = this.nested) != null ? _ref.update(models) : void 0;
|
827
825
|
}
|
828
826
|
},
|
829
827
|
unless: {
|
@@ -859,7 +857,6 @@
|
|
859
857
|
block: true,
|
860
858
|
bind: function(el) {
|
861
859
|
var attr;
|
862
|
-
|
863
860
|
if (this.marker == null) {
|
864
861
|
attr = ['data', this.view.config.prefix, this.type].join('-').replace('--', '-');
|
865
862
|
this.marker = document.createComment(" rivets: " + this.type + " ");
|
@@ -871,7 +868,6 @@
|
|
871
868
|
},
|
872
869
|
unbind: function(el) {
|
873
870
|
var view, _i, _len, _ref, _results;
|
874
|
-
|
875
871
|
if (this.iterated != null) {
|
876
872
|
_ref = this.iterated;
|
877
873
|
_results = [];
|
@@ -883,8 +879,7 @@
|
|
883
879
|
}
|
884
880
|
},
|
885
881
|
routine: function(el, collection) {
|
886
|
-
var data, i, index, k, key, model, modelName, options, previous, template, v, view, _i, _j, _len, _len1, _ref, _ref1, _ref2,
|
887
|
-
|
882
|
+
var data, i, index, k, key, model, modelName, options, previous, template, v, view, _i, _j, _len, _len1, _ref, _ref1, _ref2, _results;
|
888
883
|
modelName = this.args[0];
|
889
884
|
collection = collection || [];
|
890
885
|
if (this.iterated.length > collection.length) {
|
@@ -905,7 +900,7 @@
|
|
905
900
|
_ref1 = this.view.models;
|
906
901
|
for (key in _ref1) {
|
907
902
|
model = _ref1[key];
|
908
|
-
if (
|
903
|
+
if (data[key] == null) {
|
909
904
|
data[key] = model;
|
910
905
|
}
|
911
906
|
}
|
@@ -915,9 +910,9 @@
|
|
915
910
|
formatters: this.view.options.formatters,
|
916
911
|
config: {}
|
917
912
|
};
|
918
|
-
|
919
|
-
for (k in
|
920
|
-
v =
|
913
|
+
_ref2 = this.view.options.config;
|
914
|
+
for (k in _ref2) {
|
915
|
+
v = _ref2[k];
|
921
916
|
options.config[k] = v;
|
922
917
|
}
|
923
918
|
options.config.preloadData = true;
|
@@ -936,7 +931,6 @@
|
|
936
931
|
},
|
937
932
|
update: function(models) {
|
938
933
|
var data, key, model, view, _i, _len, _ref, _results;
|
939
|
-
|
940
934
|
data = {};
|
941
935
|
for (key in models) {
|
942
936
|
model = models[key];
|
@@ -955,7 +949,6 @@
|
|
955
949
|
},
|
956
950
|
"class-*": function(el, value) {
|
957
951
|
var elClass;
|
958
|
-
|
959
952
|
elClass = " " + el.className + " ";
|
960
953
|
if (!value === (elClass.indexOf(" " + this.args[0] + " ") !== -1)) {
|
961
954
|
return el.className = value ? "" + el.className + " " + this.args[0] : elClass.replace(" " + this.args[0] + " ", ' ').trim();
|
@@ -970,12 +963,6 @@
|
|
970
963
|
}
|
971
964
|
};
|
972
965
|
|
973
|
-
Rivets.internalBinders = {
|
974
|
-
textNode: function(node, value) {
|
975
|
-
return node.data = value != null ? value : '';
|
976
|
-
}
|
977
|
-
};
|
978
|
-
|
979
966
|
Rivets.components = {};
|
980
967
|
|
981
968
|
Rivets.config = {
|
@@ -995,7 +982,6 @@
|
|
995
982
|
exports.config = Rivets.config;
|
996
983
|
exports.configure = function(options) {
|
997
984
|
var property, value;
|
998
|
-
|
999
985
|
if (options == null) {
|
1000
986
|
options = {};
|
1001
987
|
}
|
@@ -1006,7 +992,6 @@
|
|
1006
992
|
};
|
1007
993
|
return exports.bind = function(el, models, options) {
|
1008
994
|
var view;
|
1009
|
-
|
1010
995
|
if (models == null) {
|
1011
996
|
models = {};
|
1012
997
|
}
|