rivets-rails 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/build/update.sh +1 -1
- data/dist/rivets.general_custom.js +1 -1
- data/dist/rivets.general_custom.js.min.js +1 -1
- data/dist/rivets.js +320 -96
- data/dist/rivets.min.js +2 -2
- data/lib/rivets-rails/version.rb +1 -1
- data/package.json +2 -2
- data/vendor/assets/javascripts/rivets.general_custom.js +1 -1
- data/vendor/assets/javascripts/rivets.general_custom.js.min.js +1 -1
- data/vendor/assets/javascripts/rivets.js +320 -96
- data/vendor/assets/javascripts/rivets.min.js +2 -2
- metadata +2 -2
data/build/update.sh
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// rivets.custom_by_vkill.js
|
2
|
-
// version: 0.1.
|
2
|
+
// version: 0.1.1
|
3
3
|
// author: vkill
|
4
4
|
// license: MIT
|
5
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);
|
data/dist/rivets.js
CHANGED
@@ -1,11 +1,13 @@
|
|
1
1
|
// Rivets.js
|
2
|
-
// version: 0.5.
|
2
|
+
// version: 0.5.10
|
3
3
|
// author: Michael Richards
|
4
4
|
// license: MIT
|
5
5
|
(function() {
|
6
6
|
var Rivets,
|
7
7
|
__bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
|
8
8
|
__slice = [].slice,
|
9
|
+
__hasProp = {}.hasOwnProperty,
|
10
|
+
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
|
9
11
|
__indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };
|
10
12
|
|
11
13
|
Rivets = {};
|
@@ -34,7 +36,7 @@
|
|
34
36
|
this.set = __bind(this.set, this);
|
35
37
|
this.eventHandler = __bind(this.eventHandler, this);
|
36
38
|
this.formattedValue = __bind(this.formattedValue, this);
|
37
|
-
if (!(this.binder = this.view.binders[type])) {
|
39
|
+
if (!(this.binder = Rivets.internalBinders[this.type] || this.view.binders[type])) {
|
38
40
|
_ref = this.view.binders;
|
39
41
|
for (identifier in _ref) {
|
40
42
|
value = _ref[identifier];
|
@@ -173,16 +175,115 @@
|
|
173
175
|
}
|
174
176
|
};
|
175
177
|
|
176
|
-
Binding.prototype.update = function() {
|
177
|
-
|
178
|
-
|
179
|
-
|
178
|
+
Binding.prototype.update = function(models) {
|
179
|
+
var _ref;
|
180
|
+
|
181
|
+
if (models == null) {
|
182
|
+
models = {};
|
183
|
+
}
|
184
|
+
if (this.key) {
|
185
|
+
if (models[this.key]) {
|
186
|
+
if (!this.options.bypass) {
|
187
|
+
this.view.config.adapter.unsubscribe(this.model, this.keypath, this.sync);
|
188
|
+
}
|
189
|
+
this.model = models[this.key];
|
190
|
+
if (this.options.bypass) {
|
191
|
+
this.sync();
|
192
|
+
} else {
|
193
|
+
this.view.config.adapter.subscribe(this.model, this.keypath, this.sync);
|
194
|
+
if (this.view.config.preloadData) {
|
195
|
+
this.sync();
|
196
|
+
}
|
197
|
+
}
|
198
|
+
}
|
199
|
+
} else {
|
200
|
+
this.sync();
|
201
|
+
}
|
202
|
+
return (_ref = this.binder.update) != null ? _ref.call(this, models) : void 0;
|
180
203
|
};
|
181
204
|
|
182
205
|
return Binding;
|
183
206
|
|
184
207
|
})();
|
185
208
|
|
209
|
+
Rivets.ComponentBinding = (function(_super) {
|
210
|
+
__extends(ComponentBinding, _super);
|
211
|
+
|
212
|
+
function ComponentBinding(view, el, type) {
|
213
|
+
var attribute, _i, _len, _ref, _ref1;
|
214
|
+
|
215
|
+
this.view = view;
|
216
|
+
this.el = el;
|
217
|
+
this.type = type;
|
218
|
+
this.unbind = __bind(this.unbind, this);
|
219
|
+
this.bind = __bind(this.bind, this);
|
220
|
+
this.update = __bind(this.update, this);
|
221
|
+
this.locals = __bind(this.locals, this);
|
222
|
+
this.component = Rivets.components[this.type];
|
223
|
+
this.attributes = {};
|
224
|
+
this.inflections = {};
|
225
|
+
_ref = this.el.attributes || [];
|
226
|
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
227
|
+
attribute = _ref[_i];
|
228
|
+
if (_ref1 = attribute.name, __indexOf.call(this.component.attributes, _ref1) >= 0) {
|
229
|
+
this.attributes[attribute.name] = attribute.value;
|
230
|
+
} else {
|
231
|
+
this.inflections[attribute.name] = attribute.value;
|
232
|
+
}
|
233
|
+
}
|
234
|
+
}
|
235
|
+
|
236
|
+
ComponentBinding.prototype.sync = function() {};
|
237
|
+
|
238
|
+
ComponentBinding.prototype.locals = function(models) {
|
239
|
+
var inverse, key, model, result, _ref, _ref1;
|
240
|
+
|
241
|
+
if (models == null) {
|
242
|
+
models = this.view.models;
|
243
|
+
}
|
244
|
+
result = {};
|
245
|
+
_ref = this.inflections;
|
246
|
+
for (key in _ref) {
|
247
|
+
inverse = _ref[key];
|
248
|
+
result[key] = models[inverse];
|
249
|
+
}
|
250
|
+
for (key in models) {
|
251
|
+
model = models[key];
|
252
|
+
if ((_ref1 = result[key]) == null) {
|
253
|
+
result[key] = model;
|
254
|
+
}
|
255
|
+
}
|
256
|
+
return result;
|
257
|
+
};
|
258
|
+
|
259
|
+
ComponentBinding.prototype.update = function(models) {
|
260
|
+
var _ref;
|
261
|
+
|
262
|
+
return (_ref = this.componentView) != null ? _ref.update(this.locals(models)) : void 0;
|
263
|
+
};
|
264
|
+
|
265
|
+
ComponentBinding.prototype.bind = function() {
|
266
|
+
var el, _ref;
|
267
|
+
|
268
|
+
if (this.componentView != null) {
|
269
|
+
return (_ref = this.componentView) != null ? _ref.bind() : void 0;
|
270
|
+
} else {
|
271
|
+
el = this.component.build.call(this.attributes);
|
272
|
+
(this.componentView = new Rivets.View(el, this.locals(), this.view.options)).bind();
|
273
|
+
return this.el.parentNode.replaceChild(el, this.el);
|
274
|
+
}
|
275
|
+
};
|
276
|
+
|
277
|
+
ComponentBinding.prototype.unbind = function() {
|
278
|
+
var _ref;
|
279
|
+
|
280
|
+
return (_ref = this.componentView) != null ? _ref.unbind() : void 0;
|
281
|
+
};
|
282
|
+
|
283
|
+
return ComponentBinding;
|
284
|
+
|
285
|
+
})(Rivets.Binding);
|
286
|
+
|
186
287
|
Rivets.View = (function() {
|
187
288
|
function View(els, models, options) {
|
188
289
|
var k, option, v, _base, _i, _len, _ref, _ref1, _ref2, _ref3;
|
@@ -197,6 +298,7 @@
|
|
197
298
|
this.bind = __bind(this.bind, this);
|
198
299
|
this.select = __bind(this.select, this);
|
199
300
|
this.build = __bind(this.build, this);
|
301
|
+
this.componentRegExp = __bind(this.componentRegExp, this);
|
200
302
|
this.bindingRegExp = __bind(this.bindingRegExp, this);
|
201
303
|
if (!(this.els.jquery || this.els instanceof Array)) {
|
202
304
|
this.els = [this.els];
|
@@ -234,108 +336,144 @@
|
|
234
336
|
}
|
235
337
|
};
|
236
338
|
|
339
|
+
View.prototype.componentRegExp = function() {
|
340
|
+
var _ref, _ref1;
|
341
|
+
|
342
|
+
return new RegExp("^" + ((_ref = (_ref1 = this.config.prefix) != null ? _ref1.toUpperCase() : void 0) != null ? _ref : 'RV') + "-");
|
343
|
+
};
|
344
|
+
|
237
345
|
View.prototype.build = function() {
|
238
|
-
var bindingRegExp,
|
346
|
+
var bindingRegExp, buildBinding, componentRegExp, el, parse, skipNodes, _i, _len, _ref,
|
239
347
|
_this = this;
|
240
348
|
|
241
349
|
this.bindings = [];
|
242
350
|
skipNodes = [];
|
243
351
|
bindingRegExp = this.bindingRegExp();
|
352
|
+
componentRegExp = this.componentRegExp();
|
353
|
+
buildBinding = function(node, type, declaration) {
|
354
|
+
var context, ctx, dependencies, key, keypath, options, path, pipe, pipes, splitPath;
|
355
|
+
|
356
|
+
options = {};
|
357
|
+
pipes = (function() {
|
358
|
+
var _i, _len, _ref, _results;
|
359
|
+
|
360
|
+
_ref = declaration.split('|');
|
361
|
+
_results = [];
|
362
|
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
363
|
+
pipe = _ref[_i];
|
364
|
+
_results.push(pipe.trim());
|
365
|
+
}
|
366
|
+
return _results;
|
367
|
+
})();
|
368
|
+
context = (function() {
|
369
|
+
var _i, _len, _ref, _results;
|
370
|
+
|
371
|
+
_ref = pipes.shift().split('<');
|
372
|
+
_results = [];
|
373
|
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
374
|
+
ctx = _ref[_i];
|
375
|
+
_results.push(ctx.trim());
|
376
|
+
}
|
377
|
+
return _results;
|
378
|
+
})();
|
379
|
+
path = context.shift();
|
380
|
+
splitPath = path.split(/\.|:/);
|
381
|
+
options.formatters = pipes;
|
382
|
+
options.bypass = path.indexOf(':') !== -1;
|
383
|
+
if (splitPath[0]) {
|
384
|
+
key = splitPath.shift();
|
385
|
+
} else {
|
386
|
+
key = null;
|
387
|
+
splitPath.shift();
|
388
|
+
}
|
389
|
+
keypath = splitPath.join('.');
|
390
|
+
if (dependencies = context.shift()) {
|
391
|
+
options.dependencies = dependencies.split(/\s+/);
|
392
|
+
}
|
393
|
+
return _this.bindings.push(new Rivets.Binding(_this, node, type, key, keypath, options));
|
394
|
+
};
|
244
395
|
parse = function(node) {
|
245
|
-
var attribute, attributes, binder,
|
396
|
+
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;
|
246
397
|
|
247
398
|
if (__indexOf.call(skipNodes, node) < 0) {
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
399
|
+
if (node.nodeType === Node.TEXT_NODE) {
|
400
|
+
parser = Rivets.TextTemplateParser;
|
401
|
+
if (delimiters = _this.config.templateDelimiters) {
|
402
|
+
if ((tokens = parser.parse(node.data, delimiters)).length) {
|
403
|
+
if (!(tokens.length === 1 && tokens[0].type === parser.types.text)) {
|
404
|
+
startToken = tokens[0], restTokens = 2 <= tokens.length ? __slice.call(tokens, 1) : [];
|
405
|
+
node.data = startToken.value;
|
406
|
+
switch (startToken.type) {
|
407
|
+
case 0:
|
408
|
+
node.data = startToken.value;
|
409
|
+
break;
|
410
|
+
case 1:
|
411
|
+
buildBinding(node, 'textNode', startToken.value);
|
412
|
+
}
|
413
|
+
for (_i = 0, _len = restTokens.length; _i < _len; _i++) {
|
414
|
+
token = restTokens[_i];
|
415
|
+
node.parentNode.appendChild((text = document.createTextNode(token.value)));
|
416
|
+
if (token.type === 1) {
|
417
|
+
buildBinding(text, 'textNode', token.value);
|
261
418
|
}
|
262
419
|
}
|
263
420
|
}
|
264
421
|
}
|
265
|
-
binder || (binder = _this.binders['*']);
|
266
|
-
if (binder.block) {
|
267
|
-
_ref2 = node.getElementsByTagName('*');
|
268
|
-
for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {
|
269
|
-
n = _ref2[_j];
|
270
|
-
skipNodes.push(n);
|
271
|
-
}
|
272
|
-
attributes = [attribute];
|
273
|
-
}
|
274
422
|
}
|
275
|
-
}
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
423
|
+
} else if (componentRegExp.test(node.tagName)) {
|
424
|
+
type = node.tagName.replace(componentRegExp, '').toLowerCase();
|
425
|
+
_this.bindings.push(new Rivets.ComponentBinding(_this, node, type));
|
426
|
+
} else if (node.attributes != null) {
|
427
|
+
_ref = node.attributes;
|
428
|
+
for (_j = 0, _len1 = _ref.length; _j < _len1; _j++) {
|
429
|
+
attribute = _ref[_j];
|
430
|
+
if (bindingRegExp.test(attribute.name)) {
|
431
|
+
type = attribute.name.replace(bindingRegExp, '');
|
432
|
+
if (!(binder = _this.binders[type])) {
|
433
|
+
_ref1 = _this.binders;
|
434
|
+
for (identifier in _ref1) {
|
435
|
+
value = _ref1[identifier];
|
436
|
+
if (identifier !== '*' && identifier.indexOf('*') !== -1) {
|
437
|
+
regexp = new RegExp("^" + (identifier.replace('*', '.+')) + "$");
|
438
|
+
if (regexp.test(type)) {
|
439
|
+
binder = value;
|
440
|
+
}
|
441
|
+
}
|
442
|
+
}
|
290
443
|
}
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
ctx = _ref4[_l];
|
300
|
-
_results.push(ctx.trim());
|
444
|
+
binder || (binder = _this.binders['*']);
|
445
|
+
if (binder.block) {
|
446
|
+
_ref2 = node.childNodes;
|
447
|
+
for (_k = 0, _len2 = _ref2.length; _k < _len2; _k++) {
|
448
|
+
n = _ref2[_k];
|
449
|
+
skipNodes.push(n);
|
450
|
+
}
|
451
|
+
attributes = [attribute];
|
301
452
|
}
|
302
|
-
return _results;
|
303
|
-
})();
|
304
|
-
path = context.shift();
|
305
|
-
splitPath = path.split(/\.|:/);
|
306
|
-
options.formatters = pipes;
|
307
|
-
options.bypass = path.indexOf(':') !== -1;
|
308
|
-
if (splitPath[0]) {
|
309
|
-
key = splitPath.shift();
|
310
|
-
} else {
|
311
|
-
key = null;
|
312
|
-
splitPath.shift();
|
313
453
|
}
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
|
454
|
+
}
|
455
|
+
_ref3 = attributes || node.attributes;
|
456
|
+
for (_l = 0, _len3 = _ref3.length; _l < _len3; _l++) {
|
457
|
+
attribute = _ref3[_l];
|
458
|
+
if (bindingRegExp.test(attribute.name)) {
|
459
|
+
type = attribute.name.replace(bindingRegExp, '');
|
460
|
+
buildBinding(node, type, attribute.value);
|
320
461
|
}
|
321
462
|
}
|
322
463
|
}
|
323
|
-
|
324
|
-
|
464
|
+
_ref4 = node.childNodes;
|
465
|
+
_results = [];
|
466
|
+
for (_m = 0, _len4 = _ref4.length; _m < _len4; _m++) {
|
467
|
+
childNode = _ref4[_m];
|
468
|
+
_results.push(parse(childNode));
|
325
469
|
}
|
470
|
+
return _results;
|
326
471
|
}
|
327
472
|
};
|
328
473
|
_ref = this.els;
|
329
474
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
330
475
|
el = _ref[_i];
|
331
476
|
parse(el);
|
332
|
-
_ref1 = el.getElementsByTagName('*');
|
333
|
-
for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {
|
334
|
-
node = _ref1[_j];
|
335
|
-
if (node.attributes != null) {
|
336
|
-
parse(node);
|
337
|
-
}
|
338
|
-
}
|
339
477
|
}
|
340
478
|
};
|
341
479
|
|
@@ -404,33 +542,85 @@
|
|
404
542
|
};
|
405
543
|
|
406
544
|
View.prototype.update = function(models) {
|
407
|
-
var binding, key, model, _results;
|
545
|
+
var binding, key, model, _i, _len, _ref, _results;
|
408
546
|
|
409
547
|
if (models == null) {
|
410
548
|
models = {};
|
411
549
|
}
|
412
|
-
_results = [];
|
413
550
|
for (key in models) {
|
414
551
|
model = models[key];
|
415
552
|
this.models[key] = model;
|
416
|
-
|
417
|
-
|
553
|
+
}
|
554
|
+
_ref = this.bindings;
|
555
|
+
_results = [];
|
556
|
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
557
|
+
binding = _ref[_i];
|
558
|
+
_results.push(binding.update(models));
|
559
|
+
}
|
560
|
+
return _results;
|
561
|
+
};
|
562
|
+
|
563
|
+
return View;
|
564
|
+
|
565
|
+
})();
|
566
|
+
|
567
|
+
Rivets.TextTemplateParser = (function() {
|
568
|
+
function TextTemplateParser() {}
|
418
569
|
|
419
|
-
|
420
|
-
|
570
|
+
TextTemplateParser.types = {
|
571
|
+
text: 0,
|
572
|
+
binding: 1
|
573
|
+
};
|
574
|
+
|
575
|
+
TextTemplateParser.parse = function(template, delimiters) {
|
576
|
+
var index, lastIndex, lastToken, length, substring, tokens, value;
|
577
|
+
|
578
|
+
tokens = [];
|
579
|
+
length = template.length;
|
580
|
+
index = 0;
|
581
|
+
lastIndex = 0;
|
582
|
+
while (lastIndex < length) {
|
583
|
+
index = template.indexOf(delimiters[0], lastIndex);
|
584
|
+
if (index < 0) {
|
585
|
+
tokens.push({
|
586
|
+
type: this.types.text,
|
587
|
+
value: template.slice(lastIndex)
|
421
588
|
});
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
589
|
+
break;
|
590
|
+
} else {
|
591
|
+
if (index > 0 && lastIndex < index) {
|
592
|
+
tokens.push({
|
593
|
+
type: this.types.text,
|
594
|
+
value: template.slice(lastIndex, index)
|
595
|
+
});
|
426
596
|
}
|
427
|
-
|
428
|
-
|
597
|
+
lastIndex = index + 2;
|
598
|
+
index = template.indexOf(delimiters[1], lastIndex);
|
599
|
+
if (index < 0) {
|
600
|
+
substring = template.slice(lastIndex - 2);
|
601
|
+
lastToken = tokens[tokens.length - 1];
|
602
|
+
if ((lastToken != null ? lastToken.type : void 0) === this.types.text) {
|
603
|
+
lastToken.value += substring;
|
604
|
+
} else {
|
605
|
+
tokens.push({
|
606
|
+
type: this.types.text,
|
607
|
+
value: substring
|
608
|
+
});
|
609
|
+
}
|
610
|
+
break;
|
611
|
+
}
|
612
|
+
value = template.slice(lastIndex, index).trim();
|
613
|
+
tokens.push({
|
614
|
+
type: this.types.binding,
|
615
|
+
value: value
|
616
|
+
});
|
617
|
+
lastIndex = index + 2;
|
618
|
+
}
|
429
619
|
}
|
430
|
-
return
|
620
|
+
return tokens;
|
431
621
|
};
|
432
622
|
|
433
|
-
return
|
623
|
+
return TextTemplateParser;
|
434
624
|
|
435
625
|
})();
|
436
626
|
|
@@ -610,7 +800,7 @@
|
|
610
800
|
routine: function(el, value) {
|
611
801
|
var key, model, models, options, _ref;
|
612
802
|
|
613
|
-
if (value === (this.nested == null)) {
|
803
|
+
if (!!value === (this.nested == null)) {
|
614
804
|
if (value) {
|
615
805
|
models = {};
|
616
806
|
_ref = this.view.models;
|
@@ -631,6 +821,9 @@
|
|
631
821
|
return delete this.nested;
|
632
822
|
}
|
633
823
|
}
|
824
|
+
},
|
825
|
+
update: function(models) {
|
826
|
+
return this.nested.update(models);
|
634
827
|
}
|
635
828
|
},
|
636
829
|
unless: {
|
@@ -643,6 +836,9 @@
|
|
643
836
|
},
|
644
837
|
routine: function(el, value) {
|
645
838
|
return Rivets.binders["if"].routine.call(this, el, !value);
|
839
|
+
},
|
840
|
+
update: function(models) {
|
841
|
+
return Rivets.binders["if"].update.call(this, models);
|
646
842
|
}
|
647
843
|
},
|
648
844
|
"on-*": {
|
@@ -737,6 +933,24 @@
|
|
737
933
|
}
|
738
934
|
}
|
739
935
|
return _results;
|
936
|
+
},
|
937
|
+
update: function(models) {
|
938
|
+
var data, key, model, view, _i, _len, _ref, _results;
|
939
|
+
|
940
|
+
data = {};
|
941
|
+
for (key in models) {
|
942
|
+
model = models[key];
|
943
|
+
if (key !== this.args[0]) {
|
944
|
+
data[key] = model;
|
945
|
+
}
|
946
|
+
}
|
947
|
+
_ref = this.iterated;
|
948
|
+
_results = [];
|
949
|
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
950
|
+
view = _ref[_i];
|
951
|
+
_results.push(view.update(data));
|
952
|
+
}
|
953
|
+
return _results;
|
740
954
|
}
|
741
955
|
},
|
742
956
|
"class-*": function(el, value) {
|
@@ -756,6 +970,14 @@
|
|
756
970
|
}
|
757
971
|
};
|
758
972
|
|
973
|
+
Rivets.internalBinders = {
|
974
|
+
textNode: function(node, value) {
|
975
|
+
return node.data = value != null ? value : '';
|
976
|
+
}
|
977
|
+
};
|
978
|
+
|
979
|
+
Rivets.components = {};
|
980
|
+
|
759
981
|
Rivets.config = {
|
760
982
|
preloadData: true,
|
761
983
|
handler: function(context, ev, binding) {
|
@@ -766,7 +988,9 @@
|
|
766
988
|
Rivets.formatters = {};
|
767
989
|
|
768
990
|
Rivets.factory = function(exports) {
|
991
|
+
exports._ = Rivets;
|
769
992
|
exports.binders = Rivets.binders;
|
993
|
+
exports.components = Rivets.components;
|
770
994
|
exports.formatters = Rivets.formatters;
|
771
995
|
exports.config = Rivets.config;
|
772
996
|
exports.configure = function(options) {
|