wingman_rails 0.0.9 → 0.0.10
Sign up to get free protection for your applications and to get access to all the features.
- data/vendor/assets/javascripts/wingman.js +264 -208
- metadata +4 -4
@@ -64,6 +64,8 @@
|
|
64
64
|
|
65
65
|
exports.View = require('./wingman/view');
|
66
66
|
|
67
|
+
exports.Store = require('./wingman/store');
|
68
|
+
|
67
69
|
exports.Model = require('./wingman/model');
|
68
70
|
|
69
71
|
exports.Controller = require('./wingman/controller');
|
@@ -74,6 +76,10 @@
|
|
74
76
|
|
75
77
|
exports.Events = require('./wingman/shared/events');
|
76
78
|
|
79
|
+
exports.store = function() {
|
80
|
+
return this._store || (this._store = new exports.Store);
|
81
|
+
};
|
82
|
+
|
77
83
|
}).call(this);
|
78
84
|
}, "wingman/application": function(exports, require, module) {(function() {
|
79
85
|
var Application, Events, Fleck, Navigator, Wingman, WingmanObject,
|
@@ -245,7 +251,7 @@
|
|
245
251
|
|
246
252
|
}).call(this);
|
247
253
|
}, "wingman/model": function(exports, require, module) {(function() {
|
248
|
-
var Fleck, HasManyAssociation, Model,
|
254
|
+
var Fleck, HasManyAssociation, Model, StorageAdapter, Wingman, WingmanObject,
|
249
255
|
__hasProp = Object.prototype.hasOwnProperty,
|
250
256
|
__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; },
|
251
257
|
__slice = Array.prototype.slice;
|
@@ -256,10 +262,6 @@
|
|
256
262
|
|
257
263
|
StorageAdapter = require('./model/storage_adapter');
|
258
264
|
|
259
|
-
Store = require('./model/store');
|
260
|
-
|
261
|
-
Scope = require('./model/scope');
|
262
|
-
|
263
265
|
HasManyAssociation = require('./model/has_many_association');
|
264
266
|
|
265
267
|
Fleck = require('fleck');
|
@@ -270,12 +272,12 @@
|
|
270
272
|
|
271
273
|
Model.extend(StorageAdapter);
|
272
274
|
|
273
|
-
Model.
|
274
|
-
return
|
275
|
+
Model.collection = function() {
|
276
|
+
return Wingman.store().collection(this);
|
275
277
|
};
|
276
278
|
|
277
279
|
Model.count = function() {
|
278
|
-
return this.
|
280
|
+
return this.collection().count();
|
279
281
|
};
|
280
282
|
|
281
283
|
Model.load = function() {
|
@@ -320,11 +322,11 @@
|
|
320
322
|
};
|
321
323
|
|
322
324
|
Model.scoped = function(params) {
|
323
|
-
return
|
325
|
+
return this.collection().scoped(params);
|
324
326
|
};
|
325
327
|
|
326
328
|
Model.find = function(id) {
|
327
|
-
return this.
|
329
|
+
return this.collection().find(id);
|
328
330
|
};
|
329
331
|
|
330
332
|
function Model(properties, options) {
|
@@ -333,7 +335,7 @@
|
|
333
335
|
this.dirtyStaticPropertyNames = [];
|
334
336
|
if (this.constructor.hasManyNames) this.setupHasManyAssociations();
|
335
337
|
this.observeOnce('id', function() {
|
336
|
-
return _this.constructor.
|
338
|
+
return _this.constructor.collection().add(_this);
|
337
339
|
});
|
338
340
|
this.set(properties);
|
339
341
|
}
|
@@ -555,119 +557,6 @@
|
|
555
557
|
|
556
558
|
})(Module);
|
557
559
|
|
558
|
-
}).call(this);
|
559
|
-
}, "wingman/model/scope": function(exports, require, module) {(function() {
|
560
|
-
var Events, Module, Scope,
|
561
|
-
__bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
|
562
|
-
__hasProp = Object.prototype.hasOwnProperty,
|
563
|
-
__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; };
|
564
|
-
|
565
|
-
Module = require('./../shared/module');
|
566
|
-
|
567
|
-
Events = require('./../shared/events');
|
568
|
-
|
569
|
-
module.exports = Scope = (function(_super) {
|
570
|
-
|
571
|
-
__extends(Scope, _super);
|
572
|
-
|
573
|
-
Scope.include(Events);
|
574
|
-
|
575
|
-
function Scope(store, params) {
|
576
|
-
var _this = this;
|
577
|
-
this.params = params;
|
578
|
-
this.remove = __bind(this.remove, this);
|
579
|
-
this.check = __bind(this.check, this);
|
580
|
-
this.listen = __bind(this.listen, this);
|
581
|
-
this.models = {};
|
582
|
-
store.forEach(function(model) {
|
583
|
-
return _this.check(model);
|
584
|
-
});
|
585
|
-
store.bind('add', this.listen);
|
586
|
-
}
|
587
|
-
|
588
|
-
Scope.prototype.listen = function(model) {
|
589
|
-
var key, _i, _len, _ref, _results,
|
590
|
-
_this = this;
|
591
|
-
this.check(model);
|
592
|
-
_ref = Object.keys(this.params);
|
593
|
-
_results = [];
|
594
|
-
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
595
|
-
key = _ref[_i];
|
596
|
-
_results.push(model.observe(key, function() {
|
597
|
-
return _this.check(model);
|
598
|
-
}));
|
599
|
-
}
|
600
|
-
return _results;
|
601
|
-
};
|
602
|
-
|
603
|
-
Scope.prototype.check = function(model) {
|
604
|
-
if (this.shouldBeAdded(model)) {
|
605
|
-
return this.add(model);
|
606
|
-
} else if (this.shouldBeRemoved(model)) {
|
607
|
-
return this.remove(model);
|
608
|
-
}
|
609
|
-
};
|
610
|
-
|
611
|
-
Scope.prototype.shouldBeAdded = function(model) {
|
612
|
-
return this.matches(model) && !this.exists(model);
|
613
|
-
};
|
614
|
-
|
615
|
-
Scope.prototype.shouldBeRemoved = function(model) {
|
616
|
-
return !this.matches(model) && this.exists(model);
|
617
|
-
};
|
618
|
-
|
619
|
-
Scope.prototype.add = function(model) {
|
620
|
-
if (!model.get('id')) throw new Error('Model must have ID to be stored.');
|
621
|
-
if (this.exists(model)) {
|
622
|
-
throw new Error("" + model.constructor.name + " model with ID " + (model.get('id')) + " already in scope.");
|
623
|
-
}
|
624
|
-
this.models[model.get('id')] = model;
|
625
|
-
this.trigger('add', model);
|
626
|
-
return model.bind('destroy', this.remove);
|
627
|
-
};
|
628
|
-
|
629
|
-
Scope.prototype.matches = function(model) {
|
630
|
-
var _this = this;
|
631
|
-
return Object.keys(this.params).every(function(key) {
|
632
|
-
return model.get(key) === _this.params[key];
|
633
|
-
});
|
634
|
-
};
|
635
|
-
|
636
|
-
Scope.prototype.count = function() {
|
637
|
-
return Object.keys(this.models).length;
|
638
|
-
};
|
639
|
-
|
640
|
-
Scope.prototype.find = function(id) {
|
641
|
-
return this.models[id] || (function() {
|
642
|
-
throw new Error('Model not found in scope.');
|
643
|
-
})();
|
644
|
-
};
|
645
|
-
|
646
|
-
Scope.prototype.remove = function(model) {
|
647
|
-
delete this.models[model.get('id')];
|
648
|
-
model.unbind('destroy', this.remove);
|
649
|
-
return this.trigger('remove', model);
|
650
|
-
};
|
651
|
-
|
652
|
-
Scope.prototype.exists = function(model) {
|
653
|
-
return !!this.models[model.get('id')];
|
654
|
-
};
|
655
|
-
|
656
|
-
Scope.prototype.forEach = function(callback) {
|
657
|
-
var key, value, _ref, _results;
|
658
|
-
_ref = this.models;
|
659
|
-
_results = [];
|
660
|
-
for (key in _ref) {
|
661
|
-
value = _ref[key];
|
662
|
-
_results.push(callback(value));
|
663
|
-
}
|
664
|
-
return _results;
|
665
|
-
};
|
666
|
-
|
667
|
-
return Scope;
|
668
|
-
|
669
|
-
})(Module);
|
670
|
-
|
671
560
|
}).call(this);
|
672
561
|
}, "wingman/model/storage_adapter": function(exports, require, module) {(function() {
|
673
562
|
var LocalStorage, RestStorage;
|
@@ -764,6 +653,10 @@
|
|
764
653
|
return Math.round(Math.random() * 5000000);
|
765
654
|
};
|
766
655
|
|
656
|
+
_Class.prototype["delete"] = function(id) {
|
657
|
+
return Wingman.localStorage.removeItem(this.key(id));
|
658
|
+
};
|
659
|
+
|
767
660
|
return _Class;
|
768
661
|
|
769
662
|
})();
|
@@ -828,90 +721,6 @@
|
|
828
721
|
|
829
722
|
})();
|
830
723
|
|
831
|
-
}).call(this);
|
832
|
-
}, "wingman/model/store": function(exports, require, module) {(function() {
|
833
|
-
var Events, Module, Store,
|
834
|
-
__bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
|
835
|
-
__hasProp = Object.prototype.hasOwnProperty,
|
836
|
-
__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; };
|
837
|
-
|
838
|
-
Module = require('./../shared/module');
|
839
|
-
|
840
|
-
Events = require('./../shared/events');
|
841
|
-
|
842
|
-
module.exports = Store = (function(_super) {
|
843
|
-
|
844
|
-
__extends(Store, _super);
|
845
|
-
|
846
|
-
Store.include(Events);
|
847
|
-
|
848
|
-
function Store() {
|
849
|
-
this.remove = __bind(this.remove, this); this.models = {};
|
850
|
-
}
|
851
|
-
|
852
|
-
Store.prototype.add = function(model) {
|
853
|
-
if (!model.get('id')) throw new Error('Model must have ID to be stored.');
|
854
|
-
if (this.exists(model)) {
|
855
|
-
return this.update(this.models[model.get('id')], model);
|
856
|
-
} else {
|
857
|
-
return this.insert(model);
|
858
|
-
}
|
859
|
-
};
|
860
|
-
|
861
|
-
Store.prototype.insert = function(model) {
|
862
|
-
this.models[model.get('id')] = model;
|
863
|
-
this.trigger('add', model);
|
864
|
-
return model.bind('destroy', this.remove);
|
865
|
-
};
|
866
|
-
|
867
|
-
Store.prototype.update = function(model, model2) {
|
868
|
-
var key, value, _ref, _results;
|
869
|
-
_ref = model2.toJSON();
|
870
|
-
_results = [];
|
871
|
-
for (key in _ref) {
|
872
|
-
value = _ref[key];
|
873
|
-
if (key !== 'id') {
|
874
|
-
_results.push(model.setProperty(key, value));
|
875
|
-
} else {
|
876
|
-
_results.push(void 0);
|
877
|
-
}
|
878
|
-
}
|
879
|
-
return _results;
|
880
|
-
};
|
881
|
-
|
882
|
-
Store.prototype.find = function(id) {
|
883
|
-
return this.models[id];
|
884
|
-
};
|
885
|
-
|
886
|
-
Store.prototype.count = function() {
|
887
|
-
return Object.keys(this.models).length;
|
888
|
-
};
|
889
|
-
|
890
|
-
Store.prototype.remove = function(model) {
|
891
|
-
delete this.models[model.get('id')];
|
892
|
-
model.unbind(this.remove);
|
893
|
-
return this.trigger('remove', model);
|
894
|
-
};
|
895
|
-
|
896
|
-
Store.prototype.exists = function(model) {
|
897
|
-
return !!this.models[model.get('id')];
|
898
|
-
};
|
899
|
-
|
900
|
-
Store.prototype.forEach = function(callback) {
|
901
|
-
var key, value, _ref, _results;
|
902
|
-
_ref = this.models;
|
903
|
-
_results = [];
|
904
|
-
for (key in _ref) {
|
905
|
-
value = _ref[key];
|
906
|
-
_results.push(callback(value));
|
907
|
-
}
|
908
|
-
return _results;
|
909
|
-
};
|
910
|
-
|
911
|
-
return Store;
|
912
|
-
|
913
|
-
})(Module);
|
914
|
-
|
915
724
|
}).call(this);
|
916
725
|
}, "wingman/request": function(exports, require, module) {(function() {
|
917
726
|
var Wingman, request,
|
@@ -1374,6 +1183,253 @@
|
|
1374
1183
|
|
1375
1184
|
module.exports = WingmanObject;
|
1376
1185
|
|
1186
|
+
}).call(this);
|
1187
|
+
}, "wingman/store": function(exports, require, module) {(function() {
|
1188
|
+
var Collection, Store;
|
1189
|
+
|
1190
|
+
Collection = require('./store/collection');
|
1191
|
+
|
1192
|
+
module.exports = Store = (function() {
|
1193
|
+
|
1194
|
+
function Store(options) {
|
1195
|
+
var _ref;
|
1196
|
+
this.options = options;
|
1197
|
+
this.collections = {};
|
1198
|
+
this.collectionClass = ((_ref = this.options) != null ? _ref.collectionClass : void 0) || Collection;
|
1199
|
+
}
|
1200
|
+
|
1201
|
+
Store.prototype.collection = function(klass) {
|
1202
|
+
return this.collections[klass] || this.createCollection(klass);
|
1203
|
+
};
|
1204
|
+
|
1205
|
+
Store.prototype.createCollection = function(klass) {
|
1206
|
+
return this.collections[klass] = new this.collectionClass(klass);
|
1207
|
+
};
|
1208
|
+
|
1209
|
+
Store.prototype.clear = function() {
|
1210
|
+
var collection, klass, _ref, _results;
|
1211
|
+
_ref = this.collections;
|
1212
|
+
_results = [];
|
1213
|
+
for (klass in _ref) {
|
1214
|
+
collection = _ref[klass];
|
1215
|
+
_results.push(collection.clear());
|
1216
|
+
}
|
1217
|
+
return _results;
|
1218
|
+
};
|
1219
|
+
|
1220
|
+
return Store;
|
1221
|
+
|
1222
|
+
})();
|
1223
|
+
|
1224
|
+
}).call(this);
|
1225
|
+
}, "wingman/store/collection": function(exports, require, module) {(function() {
|
1226
|
+
var Events, Module, Scope, Store,
|
1227
|
+
__bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
|
1228
|
+
__hasProp = Object.prototype.hasOwnProperty,
|
1229
|
+
__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; };
|
1230
|
+
|
1231
|
+
Module = require('./../shared/module');
|
1232
|
+
|
1233
|
+
Events = require('./../shared/events');
|
1234
|
+
|
1235
|
+
Scope = require('./scope');
|
1236
|
+
|
1237
|
+
module.exports = Store = (function(_super) {
|
1238
|
+
|
1239
|
+
__extends(Store, _super);
|
1240
|
+
|
1241
|
+
Store.include(Events);
|
1242
|
+
|
1243
|
+
function Store() {
|
1244
|
+
this.remove = __bind(this.remove, this); this.models = {};
|
1245
|
+
}
|
1246
|
+
|
1247
|
+
Store.prototype.add = function(model) {
|
1248
|
+
if (!model.get('id')) throw new Error('Model must have ID to be stored.');
|
1249
|
+
if (this.exists(model)) {
|
1250
|
+
return this.update(this.models[model.get('id')], model);
|
1251
|
+
} else {
|
1252
|
+
return this.insert(model);
|
1253
|
+
}
|
1254
|
+
};
|
1255
|
+
|
1256
|
+
Store.prototype.insert = function(model) {
|
1257
|
+
this.models[model.get('id')] = model;
|
1258
|
+
this.trigger('add', model);
|
1259
|
+
return model.bind('destroy', this.remove);
|
1260
|
+
};
|
1261
|
+
|
1262
|
+
Store.prototype.update = function(model, model2) {
|
1263
|
+
var key, value, _ref, _results;
|
1264
|
+
_ref = model2.toJSON();
|
1265
|
+
_results = [];
|
1266
|
+
for (key in _ref) {
|
1267
|
+
value = _ref[key];
|
1268
|
+
if (key !== 'id') {
|
1269
|
+
_results.push(model.setProperty(key, value));
|
1270
|
+
} else {
|
1271
|
+
_results.push(void 0);
|
1272
|
+
}
|
1273
|
+
}
|
1274
|
+
return _results;
|
1275
|
+
};
|
1276
|
+
|
1277
|
+
Store.prototype.find = function(id) {
|
1278
|
+
return this.models[id];
|
1279
|
+
};
|
1280
|
+
|
1281
|
+
Store.prototype.count = function() {
|
1282
|
+
return Object.keys(this.models).length;
|
1283
|
+
};
|
1284
|
+
|
1285
|
+
Store.prototype.remove = function(model) {
|
1286
|
+
delete this.models[model.get('id')];
|
1287
|
+
model.unbind(this.remove);
|
1288
|
+
return this.trigger('remove', model);
|
1289
|
+
};
|
1290
|
+
|
1291
|
+
Store.prototype.exists = function(model) {
|
1292
|
+
return !!this.models[model.get('id')];
|
1293
|
+
};
|
1294
|
+
|
1295
|
+
Store.prototype.forEach = function(callback) {
|
1296
|
+
var key, value, _ref, _results;
|
1297
|
+
_ref = this.models;
|
1298
|
+
_results = [];
|
1299
|
+
for (key in _ref) {
|
1300
|
+
value = _ref[key];
|
1301
|
+
_results.push(callback(value));
|
1302
|
+
}
|
1303
|
+
return _results;
|
1304
|
+
};
|
1305
|
+
|
1306
|
+
Store.prototype.scoped = function(params) {
|
1307
|
+
return new Scope(this, params);
|
1308
|
+
};
|
1309
|
+
|
1310
|
+
Store.prototype.clear = function() {
|
1311
|
+
return this.forEach(function(model) {
|
1312
|
+
return model.destroy();
|
1313
|
+
});
|
1314
|
+
};
|
1315
|
+
|
1316
|
+
return Store;
|
1317
|
+
|
1318
|
+
})(Module);
|
1319
|
+
|
1320
|
+
}).call(this);
|
1321
|
+
}, "wingman/store/scope": function(exports, require, module) {(function() {
|
1322
|
+
var Events, Module, Scope,
|
1323
|
+
__bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
|
1324
|
+
__hasProp = Object.prototype.hasOwnProperty,
|
1325
|
+
__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; };
|
1326
|
+
|
1327
|
+
Module = require('./../shared/module');
|
1328
|
+
|
1329
|
+
Events = require('./../shared/events');
|
1330
|
+
|
1331
|
+
module.exports = Scope = (function(_super) {
|
1332
|
+
|
1333
|
+
__extends(Scope, _super);
|
1334
|
+
|
1335
|
+
Scope.include(Events);
|
1336
|
+
|
1337
|
+
function Scope(collection, params) {
|
1338
|
+
var _this = this;
|
1339
|
+
this.params = params;
|
1340
|
+
this.remove = __bind(this.remove, this);
|
1341
|
+
this.check = __bind(this.check, this);
|
1342
|
+
this.listen = __bind(this.listen, this);
|
1343
|
+
this.models = {};
|
1344
|
+
collection.forEach(function(model) {
|
1345
|
+
return _this.check(model);
|
1346
|
+
});
|
1347
|
+
collection.bind('add', this.listen);
|
1348
|
+
}
|
1349
|
+
|
1350
|
+
Scope.prototype.listen = function(model) {
|
1351
|
+
var key, _i, _len, _ref, _results,
|
1352
|
+
_this = this;
|
1353
|
+
this.check(model);
|
1354
|
+
_ref = Object.keys(this.params);
|
1355
|
+
_results = [];
|
1356
|
+
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
1357
|
+
key = _ref[_i];
|
1358
|
+
_results.push(model.observe(key, function() {
|
1359
|
+
return _this.check(model);
|
1360
|
+
}));
|
1361
|
+
}
|
1362
|
+
return _results;
|
1363
|
+
};
|
1364
|
+
|
1365
|
+
Scope.prototype.check = function(model) {
|
1366
|
+
if (this.shouldBeAdded(model)) {
|
1367
|
+
return this.add(model);
|
1368
|
+
} else if (this.shouldBeRemoved(model)) {
|
1369
|
+
return this.remove(model);
|
1370
|
+
}
|
1371
|
+
};
|
1372
|
+
|
1373
|
+
Scope.prototype.shouldBeAdded = function(model) {
|
1374
|
+
return this.matches(model) && !this.exists(model);
|
1375
|
+
};
|
1376
|
+
|
1377
|
+
Scope.prototype.shouldBeRemoved = function(model) {
|
1378
|
+
return !this.matches(model) && this.exists(model);
|
1379
|
+
};
|
1380
|
+
|
1381
|
+
Scope.prototype.add = function(model) {
|
1382
|
+
if (!model.get('id')) throw new Error('Model must have ID to be stored.');
|
1383
|
+
if (this.exists(model)) {
|
1384
|
+
throw new Error("" + model.constructor.name + " model with ID " + (model.get('id')) + " already in scope.");
|
1385
|
+
}
|
1386
|
+
this.models[model.get('id')] = model;
|
1387
|
+
this.trigger('add', model);
|
1388
|
+
return model.bind('destroy', this.remove);
|
1389
|
+
};
|
1390
|
+
|
1391
|
+
Scope.prototype.matches = function(model) {
|
1392
|
+
var _this = this;
|
1393
|
+
return Object.keys(this.params).every(function(key) {
|
1394
|
+
return model.get(key) === _this.params[key];
|
1395
|
+
});
|
1396
|
+
};
|
1397
|
+
|
1398
|
+
Scope.prototype.count = function() {
|
1399
|
+
return Object.keys(this.models).length;
|
1400
|
+
};
|
1401
|
+
|
1402
|
+
Scope.prototype.find = function(id) {
|
1403
|
+
return this.models[id] || (function() {
|
1404
|
+
throw new Error('Model not found in scope.');
|
1405
|
+
})();
|
1406
|
+
};
|
1407
|
+
|
1408
|
+
Scope.prototype.remove = function(model) {
|
1409
|
+
delete this.models[model.get('id')];
|
1410
|
+
model.unbind('destroy', this.remove);
|
1411
|
+
return this.trigger('remove', model);
|
1412
|
+
};
|
1413
|
+
|
1414
|
+
Scope.prototype.exists = function(model) {
|
1415
|
+
return !!this.models[model.get('id')];
|
1416
|
+
};
|
1417
|
+
|
1418
|
+
Scope.prototype.forEach = function(callback) {
|
1419
|
+
var key, value, _ref, _results;
|
1420
|
+
_ref = this.models;
|
1421
|
+
_results = [];
|
1422
|
+
for (key in _ref) {
|
1423
|
+
value = _ref[key];
|
1424
|
+
_results.push(callback(value));
|
1425
|
+
}
|
1426
|
+
return _results;
|
1427
|
+
};
|
1428
|
+
|
1429
|
+
return Scope;
|
1430
|
+
|
1431
|
+
})(Module);
|
1432
|
+
|
1377
1433
|
}).call(this);
|
1378
1434
|
}, "wingman/template": function(exports, require, module) {(function() {
|
1379
1435
|
var Fleck, HandlerFactory, Parser, Template;
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wingman_rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.10
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-04-
|
12
|
+
date: 2012-04-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: railties
|
16
|
-
requirement: &
|
16
|
+
requirement: &70186217504960 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -24,7 +24,7 @@ dependencies:
|
|
24
24
|
version: '5.0'
|
25
25
|
type: :runtime
|
26
26
|
prerelease: false
|
27
|
-
version_requirements: *
|
27
|
+
version_requirements: *70186217504960
|
28
28
|
description: This gem provides Wingman for your Rails 3 application.
|
29
29
|
email:
|
30
30
|
- rasmusrnielsen@gmail.com
|