marionette-rails 1.4.1 → 1.5.0
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dcceaa1565df647f52b0d0c274cc7a5885ada32f
|
4
|
+
data.tar.gz: 2451eb7659b45826ac6f9b7f9f0a677711f7688a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e088ac26a358f2cc84d767d582e92a7a18f3f2cd98c7c4232a3ab84959185f9738c6a780c4abc33b447463e460f28c25f3db4872b04cd3370dcee45780fdc014
|
7
|
+
data.tar.gz: dc3d41542a511d7327f20a1d92a17d1b80d42617f6076e237f6fad58de81bdfb0eff7a4a8f55c8f4e1318b6dfff875938de261562edf855fa7f08e870b7dc0e9
|
@@ -1,8 +1,8 @@
|
|
1
1
|
// MarionetteJS (Backbone.Marionette)
|
2
2
|
// ----------------------------------
|
3
|
-
// v1.
|
3
|
+
// v1.5.0
|
4
4
|
//
|
5
|
-
// Copyright (c)
|
5
|
+
// Copyright (c)2014 Derick Bailey, Muted Solutions, LLC.
|
6
6
|
// Distributed under MIT license
|
7
7
|
//
|
8
8
|
// http://marionettejs.com
|
@@ -496,11 +496,11 @@ Marionette.getOption = function(target, optionName){
|
|
496
496
|
// `this.triggerMethod("foo")` will trigger the "foo" event and
|
497
497
|
// call the "onFoo" method.
|
498
498
|
//
|
499
|
-
// `this.triggerMethod("foo:bar") will trigger the "foo:bar" event and
|
499
|
+
// `this.triggerMethod("foo:bar")` will trigger the "foo:bar" event and
|
500
500
|
// call the "onFooBar" method.
|
501
501
|
Marionette.triggerMethod = (function(){
|
502
502
|
|
503
|
-
// split the event name on the :
|
503
|
+
// split the event name on the ":"
|
504
504
|
var splitter = /(^|:)(\w)/gi;
|
505
505
|
|
506
506
|
// take the event section ("section1:section2:section3")
|
@@ -509,7 +509,7 @@ Marionette.triggerMethod = (function(){
|
|
509
509
|
return eventName.toUpperCase();
|
510
510
|
}
|
511
511
|
|
512
|
-
// actual triggerMethod
|
512
|
+
// actual triggerMethod implementation
|
513
513
|
var triggerMethod = function(event) {
|
514
514
|
// get the method name from the event name
|
515
515
|
var methodName = 'on' + event.replace(splitter, getEventName);
|
@@ -537,7 +537,7 @@ Marionette.triggerMethod = (function(){
|
|
537
537
|
// in the DOM, trigger a "dom:refresh" event every time it is
|
538
538
|
// re-rendered.
|
539
539
|
|
540
|
-
Marionette.MonitorDOMRefresh = (function(){
|
540
|
+
Marionette.MonitorDOMRefresh = (function(documentElement){
|
541
541
|
// track when the view has been shown in the DOM,
|
542
542
|
// using a Marionette.Region (or by other means of triggering "show")
|
543
543
|
function handleShow(view){
|
@@ -553,13 +553,17 @@ Marionette.MonitorDOMRefresh = (function(){
|
|
553
553
|
|
554
554
|
// Trigger the "dom:refresh" event and corresponding "onDomRefresh" method
|
555
555
|
function triggerDOMRefresh(view){
|
556
|
-
if (view._isShown && view._isRendered){
|
556
|
+
if (view._isShown && view._isRendered && isInDOM(view)){
|
557
557
|
if (_.isFunction(view.triggerMethod)){
|
558
558
|
view.triggerMethod("dom:refresh");
|
559
559
|
}
|
560
560
|
}
|
561
561
|
}
|
562
562
|
|
563
|
+
function isInDOM(view) {
|
564
|
+
return documentElement.contains(view.el);
|
565
|
+
}
|
566
|
+
|
563
567
|
// Export public API
|
564
568
|
return function(view){
|
565
569
|
view.listenTo(view, "show", function(){
|
@@ -570,7 +574,7 @@ Marionette.MonitorDOMRefresh = (function(){
|
|
570
574
|
handleRender(view);
|
571
575
|
});
|
572
576
|
};
|
573
|
-
})();
|
577
|
+
})(document.documentElement);
|
574
578
|
|
575
579
|
|
576
580
|
// Marionette.bindEntityEvents & unbindEntityEvents
|
@@ -909,7 +913,7 @@ _.extend(Marionette.Region.prototype, Backbone.Events, {
|
|
909
913
|
if (view.close) { view.close(); }
|
910
914
|
else if (view.remove) { view.remove(); }
|
911
915
|
|
912
|
-
Marionette.triggerMethod.call(this, "close");
|
916
|
+
Marionette.triggerMethod.call(this, "close", view);
|
913
917
|
|
914
918
|
delete this.currentView;
|
915
919
|
},
|
@@ -1052,9 +1056,9 @@ Marionette.RegionManager = (function(Marionette){
|
|
1052
1056
|
//
|
1053
1057
|
// Mix in methods from Underscore, for iteration, and other
|
1054
1058
|
// collection related features.
|
1055
|
-
var methods = ['forEach', 'each', 'map', 'find', 'detect', 'filter',
|
1056
|
-
'select', 'reject', 'every', 'all', 'some', 'any', 'include',
|
1057
|
-
'contains', 'invoke', 'toArray', 'first', 'initial', 'rest',
|
1059
|
+
var methods = ['forEach', 'each', 'map', 'find', 'detect', 'filter',
|
1060
|
+
'select', 'reject', 'every', 'all', 'some', 'any', 'include',
|
1061
|
+
'contains', 'invoke', 'toArray', 'first', 'initial', 'rest',
|
1058
1062
|
'last', 'without', 'isEmpty', 'pluck'];
|
1059
1063
|
|
1060
1064
|
_.each(methods, function(method) {
|
@@ -1079,7 +1083,7 @@ Marionette.TemplateCache = function(templateId){
|
|
1079
1083
|
};
|
1080
1084
|
|
1081
1085
|
// TemplateCache object-level methods. Manage the template
|
1082
|
-
// caches from these method calls instead of creating
|
1086
|
+
// caches from these method calls instead of creating
|
1083
1087
|
// your own TemplateCache instances
|
1084
1088
|
_.extend(Marionette.TemplateCache, {
|
1085
1089
|
templateCaches: {},
|
@@ -1102,7 +1106,7 @@ _.extend(Marionette.TemplateCache, {
|
|
1102
1106
|
// are specified, clears all templates:
|
1103
1107
|
// `clear()`
|
1104
1108
|
//
|
1105
|
-
// If arguments are specified, clears each of the
|
1109
|
+
// If arguments are specified, clears each of the
|
1106
1110
|
// specified templates from the cache:
|
1107
1111
|
// `clear("#t1", "#t2", "...")`
|
1108
1112
|
clear: function(){
|
@@ -1142,7 +1146,7 @@ _.extend(Marionette.TemplateCache.prototype, {
|
|
1142
1146
|
// Load a template from the DOM, by default. Override
|
1143
1147
|
// this method to provide your own template retrieval
|
1144
1148
|
// For asynchronous loading with AMD/RequireJS, consider
|
1145
|
-
// using a template-loader plugin as described here:
|
1149
|
+
// using a template-loader plugin as described here:
|
1146
1150
|
// https://github.com/marionettejs/backbone.marionette/wiki/Using-marionette-with-requirejs
|
1147
1151
|
loadTemplate: function(templateId){
|
1148
1152
|
var template = Marionette.$(templateId).html();
|
@@ -1211,7 +1215,7 @@ Marionette.View = Backbone.View.extend({
|
|
1211
1215
|
// this is a backfill since backbone removed the assignment
|
1212
1216
|
// of this.options
|
1213
1217
|
// at some point however this may be removed
|
1214
|
-
this.options = _.extend({}, this
|
1218
|
+
this.options = _.extend({}, _.result(this, 'options'), _.isFunction(options) ? options.call(this) : options);
|
1215
1219
|
|
1216
1220
|
// parses out the @ui DSL for events
|
1217
1221
|
this.events = this.normalizeUIKeys(_.result(this, 'events'));
|
@@ -1671,12 +1675,14 @@ Marionette.CollectionView = Marionette.View.extend({
|
|
1671
1675
|
|
1672
1676
|
// call the "show" method if the collection view
|
1673
1677
|
// has already been shown
|
1674
|
-
if (this._isShown){
|
1678
|
+
if (this._isShown && !this.isBuffering){
|
1675
1679
|
Marionette.triggerMethod.call(view, "show");
|
1676
1680
|
}
|
1677
1681
|
|
1678
1682
|
// this view was added
|
1679
1683
|
this.triggerMethod("after:item:added", view);
|
1684
|
+
|
1685
|
+
return view;
|
1680
1686
|
},
|
1681
1687
|
|
1682
1688
|
// Set up the child view event forwarding. Uses an "itemview:"
|
@@ -1688,13 +1694,30 @@ Marionette.CollectionView = Marionette.View.extend({
|
|
1688
1694
|
// prepending "itemview:" to the event name
|
1689
1695
|
this.listenTo(view, "all", function(){
|
1690
1696
|
var args = slice(arguments);
|
1691
|
-
|
1697
|
+
var rootEvent = args[0];
|
1698
|
+
var itemEvents = this.getItemEvents();
|
1699
|
+
|
1700
|
+
args[0] = prefix + ":" + rootEvent;
|
1692
1701
|
args.splice(1, 0, view);
|
1693
1702
|
|
1703
|
+
// call collectionView itemEvent if defined
|
1704
|
+
if (typeof itemEvents !== "undefined" && _.isFunction(itemEvents[rootEvent])) {
|
1705
|
+
itemEvents[rootEvent].apply(this, args);
|
1706
|
+
}
|
1707
|
+
|
1694
1708
|
Marionette.triggerMethod.apply(this, args);
|
1695
1709
|
}, this);
|
1696
1710
|
},
|
1697
1711
|
|
1712
|
+
// returns the value of itemEvents depending on if a function
|
1713
|
+
getItemEvents: function() {
|
1714
|
+
if (_.isFunction(this.itemEvents)) {
|
1715
|
+
return this.itemEvents.call(this);
|
1716
|
+
}
|
1717
|
+
|
1718
|
+
return this.itemEvents;
|
1719
|
+
},
|
1720
|
+
|
1698
1721
|
// render the item view
|
1699
1722
|
renderItemView: function(view, index) {
|
1700
1723
|
view.render();
|
@@ -1928,7 +1951,7 @@ Marionette.CompositeView = Marionette.CollectionView.extend({
|
|
1928
1951
|
var itemViewContainer = Marionette.getOption(containerView, "itemViewContainer");
|
1929
1952
|
if (itemViewContainer){
|
1930
1953
|
|
1931
|
-
var selector = _.isFunction(itemViewContainer) ? itemViewContainer() : itemViewContainer;
|
1954
|
+
var selector = _.isFunction(itemViewContainer) ? itemViewContainer.call(this) : itemViewContainer;
|
1932
1955
|
container = containerView.$(selector);
|
1933
1956
|
if (container.length <= 0) {
|
1934
1957
|
throwError("The specified `itemViewContainer` was not found: " + containerView.itemViewContainer, "ItemViewContainerMissingError");
|
@@ -2092,7 +2115,7 @@ Marionette.Layout = Marionette.ItemView.extend({
|
|
2092
2115
|
//
|
2093
2116
|
// Configure an AppRouter with `appRoutes`.
|
2094
2117
|
//
|
2095
|
-
// App routers can only take one `controller` object.
|
2118
|
+
// App routers can only take one `controller` object.
|
2096
2119
|
// It is recommended that you divide your controller
|
2097
2120
|
// objects in to smaller pieces of related functionality
|
2098
2121
|
// and have multiple routers / controllers, instead of
|
@@ -2104,7 +2127,7 @@ Marionette.AppRouter = Backbone.Router.extend({
|
|
2104
2127
|
|
2105
2128
|
constructor: function(options){
|
2106
2129
|
Backbone.Router.prototype.constructor.apply(this, slice(arguments));
|
2107
|
-
|
2130
|
+
|
2108
2131
|
this.options = options || {};
|
2109
2132
|
|
2110
2133
|
var appRoutes = Marionette.getOption(this, "appRoutes");
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"lib/backbone.marionette.min.js","sources":["backbone.marionette.js"],"names":["Backbone","ChildViewContainer","_","Container","views","this","_views","_indexByModel","_indexByCustom","_updateLength","each","add","extend","prototype","view","customIndex","viewCid","cid","model","findByModel","findByModelCid","modelCid","findByCid","findByCustom","index","findByIndex","values","remove","any","key","call","method","apply","tail","arguments","args","isFunction","length","size","methods","concat","toArray","Wreqr","Marionette","Handlers","options","_wreqrHandlers","initialize","Model","Events","setHandlers","handlers","handler","name","context","isObject","callback","setHandler","config","trigger","hasHandler","getHandler","Error","Array","slice","removeHandler","removeAllHandlers","CommandStorage","_commands","getCommands","commandName","commands","command","instances","addCommand","push","clearCommands","Commands","storageType","constructor","_initializeStorage","on","_executeCommands","execute","storage","StorageType","RequestResponse","request","EventAggregator","EA","global","protoSlice","throwError","message","error","$","getOption","target","optionName","value","undefined","triggerMethod","getEventName","match","prefix","eventName","toUpperCase","splitter","event","methodName","replace","MonitorDOMRefresh","handleShow","_isShown","triggerDOMRefresh","handleRender","_isRendered","listenTo","bindFromStrings","entity","evt","methodNames","split","bindToFunction","unbindFromStrings","stopListening","unbindToFunction","iterateEvents","bindings","functionCallback","stringCallback","bindEntityEvents","unbindEntityEvents","Callbacks","_deferred","Deferred","_callbacks","contextOverride","cb","ctx","done","run","resolve","reset","callbacks","Controller","close","unbind","Region","el","err","buildRegion","regionConfig","defaultRegionType","regionIsString","regionSelectorIsString","selector","regionTypeIsUndefined","regionType","regionIsType","RegionType","region","parentEl","getEl","find","show","ensureEl","isViewClosed","isClosed","isUndefined","$el","isDifferentView","currentView","render","open","empty","append","attachView","RegionManager","_regions","addRegions","regionDefinitions","defaults","regions","definition","addRegion","isString","hasSelector","_store","get","removeRegion","_remove","removeRegions","closeRegions","_setLength","TemplateCache","templateId","templateCaches","cachedTemplate","load","clear","i","compiledTemplate","template","loadTemplate","compileTemplate","html","rawTemplate","Renderer","data","templateFunc","View","bindAll","events","normalizeUIKeys","result","onShowCalled","getTemplate","mixinTemplateHelpers","templateHelpers","hash","keys","v","ui","configureTriggers","triggers","triggerEvents","hasOptions","e","prevent","preventDefault","stop","stopPropagation","shouldPrevent","shouldStop","collection","delegateEvents","_delegateDOMEvents","combinedEvents","undelegateEvents","shouldClose","unbindUIElements","bindUIElements","_uiBindings","ItemView","serializeData","toJSON","items","CollectionView","itemViewEventPrefix","_initChildViewStorage","_initialEvents","initRenderBuffer","elBuffer","document","createDocumentFragment","startBuffering","isBuffering","endBuffering","appendBuffer","addChildView","removeItemView","item","closeEmptyView","getItemView","indexOf","addItemView","children","child","triggerBeforeRender","triggerRendered","_renderChildren","closeChildren","showCollection","showEmptyView","EmptyView","getEmptyView","_showingEmptyView","itemView","itemViewOptions","buildItemView","addChildViewEventForwarding","renderItemView","splice","appendHtml","ItemViewType","removeChildView","checkEmpty","collectionView","buffer","appendChild","CompositeView","once","isRendered","resetItemViewContainer","renderModel","compositeView","$container","getItemViewContainer","containerView","$itemViewContainer","container","itemViewContainer","Layout","_firstRender","_initializeRegions","_reInitializeRegions","regionManager","_buildRegions","that","_initRegionManager","AppRouter","Router","appRoutes","controller","_getController","processAppRoutes","appRoute","route","_addAppRoute","routeNames","reverse","bind","Application","_initCallbacks","vent","reqres","submodules","addInitializer","initializer","start","_regionManager","getRegion","module","unshift","Module","create","moduleName","app","_setupInitializersAndFinalizers","startWithParent","_initializerCallbacks","addFinalizer","_finalizerCallbacks","_isInitialized","mod","addDefinition","moduleDefinition","customArgs","_runModuleDefinition","flatten","moduleNames","moduleDefinitions","parentModule","_getModule","_addModuleDefinition","def","fn","define","startWithParentIsConfigured"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"lib/backbone.marionette.min.js","sources":["backbone.marionette.js"],"names":["Backbone","ChildViewContainer","_","Container","views","this","_views","_indexByModel","_indexByCustom","_updateLength","each","add","extend","prototype","view","customIndex","viewCid","cid","model","findByModel","findByModelCid","modelCid","findByCid","findByCustom","index","findByIndex","values","remove","any","key","call","method","apply","tail","arguments","args","isFunction","length","size","methods","concat","toArray","Wreqr","Marionette","Handlers","options","_wreqrHandlers","initialize","Model","Events","setHandlers","handlers","handler","name","context","isObject","callback","setHandler","config","trigger","hasHandler","getHandler","Error","Array","slice","removeHandler","removeAllHandlers","CommandStorage","_commands","getCommands","commandName","commands","command","instances","addCommand","push","clearCommands","Commands","storageType","constructor","_initializeStorage","on","_executeCommands","execute","storage","StorageType","RequestResponse","request","EventAggregator","EA","global","protoSlice","throwError","message","error","$","getOption","target","optionName","value","undefined","triggerMethod","getEventName","match","prefix","eventName","toUpperCase","splitter","event","methodName","replace","MonitorDOMRefresh","documentElement","handleShow","_isShown","triggerDOMRefresh","handleRender","_isRendered","isInDOM","contains","el","listenTo","document","bindFromStrings","entity","evt","methodNames","split","bindToFunction","unbindFromStrings","stopListening","unbindToFunction","iterateEvents","bindings","functionCallback","stringCallback","bindEntityEvents","unbindEntityEvents","Callbacks","_deferred","Deferred","_callbacks","contextOverride","cb","ctx","done","run","resolve","reset","callbacks","Controller","close","unbind","Region","err","buildRegion","regionConfig","defaultRegionType","regionIsString","regionSelectorIsString","selector","regionTypeIsUndefined","regionType","regionIsType","RegionType","region","parentEl","getEl","find","show","ensureEl","isViewClosed","isClosed","isUndefined","$el","isDifferentView","currentView","render","open","empty","append","attachView","RegionManager","_regions","addRegions","regionDefinitions","defaults","regions","definition","addRegion","isString","hasSelector","_store","get","removeRegion","_remove","removeRegions","closeRegions","_setLength","TemplateCache","templateId","templateCaches","cachedTemplate","load","clear","i","compiledTemplate","template","loadTemplate","compileTemplate","html","rawTemplate","Renderer","data","templateFunc","View","bindAll","result","events","normalizeUIKeys","onShowCalled","getTemplate","mixinTemplateHelpers","templateHelpers","hash","keys","v","ui","configureTriggers","triggers","triggerEvents","hasOptions","e","prevent","preventDefault","stop","stopPropagation","shouldPrevent","shouldStop","collection","delegateEvents","_delegateDOMEvents","combinedEvents","undelegateEvents","shouldClose","unbindUIElements","bindUIElements","_uiBindings","ItemView","serializeData","toJSON","items","CollectionView","itemViewEventPrefix","_initChildViewStorage","_initialEvents","initRenderBuffer","elBuffer","createDocumentFragment","startBuffering","isBuffering","endBuffering","appendBuffer","addChildView","removeItemView","item","closeEmptyView","getItemView","indexOf","addItemView","children","child","triggerBeforeRender","triggerRendered","_renderChildren","closeChildren","showCollection","showEmptyView","EmptyView","getEmptyView","_showingEmptyView","itemView","itemViewOptions","buildItemView","addChildViewEventForwarding","renderItemView","rootEvent","itemEvents","getItemEvents","splice","appendHtml","ItemViewType","removeChildView","checkEmpty","collectionView","buffer","appendChild","CompositeView","once","isRendered","resetItemViewContainer","renderModel","compositeView","$container","getItemViewContainer","containerView","$itemViewContainer","container","itemViewContainer","Layout","_firstRender","_initializeRegions","_reInitializeRegions","regionManager","_buildRegions","that","_initRegionManager","AppRouter","Router","appRoutes","controller","_getController","processAppRoutes","appRoute","route","_addAppRoute","routeNames","reverse","bind","Application","_initCallbacks","vent","reqres","submodules","addInitializer","initializer","start","_regionManager","getRegion","module","unshift","Module","create","moduleName","app","_setupInitializersAndFinalizers","startWithParent","_initializerCallbacks","addFinalizer","_finalizerCallbacks","_isInitialized","mod","addDefinition","moduleDefinition","customArgs","_runModuleDefinition","flatten","moduleNames","moduleDefinitions","parentModule","_getModule","_addModuleDefinition","def","fn","define","startWithParentIsConfigured"],"mappings":"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"}
|
@@ -1,8 +1,8 @@
|
|
1
1
|
// MarionetteJS (Backbone.Marionette)
|
2
2
|
// ----------------------------------
|
3
|
-
// v1.
|
3
|
+
// v1.5.0
|
4
4
|
//
|
5
|
-
// Copyright (c)
|
5
|
+
// Copyright (c)2014 Derick Bailey, Muted Solutions, LLC.
|
6
6
|
// Distributed under MIT license
|
7
7
|
//
|
8
8
|
// http://marionettejs.com
|
@@ -17,5 +17,5 @@
|
|
17
17
|
* https://github.com/marionettejs/backbone.wreqr/
|
18
18
|
*/
|
19
19
|
|
20
|
-
Backbone.ChildViewContainer=function(a,b){var c=function(a){this._views={},this._indexByModel={},this._indexByCustom={},this._updateLength(),b.each(a,this.add,this)};b.extend(c.prototype,{add:function(a,b){var c=a.cid;this._views[c]=a,a.model&&(this._indexByModel[a.model.cid]=c),b&&(this._indexByCustom[b]=c),this._updateLength()},findByModel:function(a){return this.findByModelCid(a.cid)},findByModelCid:function(a){var b=this._indexByModel[a];return this.findByCid(b)},findByCustom:function(a){var b=this._indexByCustom[a];return this.findByCid(b)},findByIndex:function(a){return b.values(this._views)[a]},findByCid:function(a){return this._views[a]},remove:function(a){var c=a.cid;a.model&&delete this._indexByModel[a.model.cid],b.any(this._indexByCustom,function(a,b){return a===c?(delete this._indexByCustom[b],!0):void 0},this),delete this._views[c],this._updateLength()},call:function(a){this.apply(a,b.tail(arguments))},apply:function(a,c){b.each(this._views,function(d){b.isFunction(d[a])&&d[a].apply(d,c||[])})},_updateLength:function(){this.length=b.size(this._views)}});var d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck"];return b.each(d,function(a){c.prototype[a]=function(){var c=b.values(this._views),d=[c].concat(b.toArray(arguments));return b[a].apply(b,d)}}),c}(Backbone,_),Backbone.Wreqr=function(a,b,c){"use strict";var d={};return d.Handlers=function(a,b){var c=function(a){this.options=a,this._wreqrHandlers={},b.isFunction(this.initialize)&&this.initialize(a)};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events,{setHandlers:function(a){b.each(a,function(a,c){var d=null;b.isObject(a)&&!b.isFunction(a)&&(d=a.context,a=a.callback),this.setHandler(c,a,d)},this)},setHandler:function(a,b,c){var d={callback:b,context:c};this._wreqrHandlers[a]=d,this.trigger("handler:add",a,b,c)},hasHandler:function(a){return!!this._wreqrHandlers[a]},getHandler:function(a){var b=this._wreqrHandlers[a];if(!b)throw new Error("Handler not found for '"+a+"'");return function(){var a=Array.prototype.slice.apply(arguments);return b.callback.apply(b.context,a)}},removeHandler:function(a){delete this._wreqrHandlers[a]},removeAllHandlers:function(){this._wreqrHandlers={}}}),c}(a,c),d.CommandStorage=function(){var b=function(a){this.options=a,this._commands={},c.isFunction(this.initialize)&&this.initialize(a)};return c.extend(b.prototype,a.Events,{getCommands:function(a){var b=this._commands[a];return b||(b={command:a,instances:[]},this._commands[a]=b),b},addCommand:function(a,b){var c=this.getCommands(a);c.instances.push(b)},clearCommands:function(a){var b=this.getCommands(a);b.instances=[]}}),b}(),d.Commands=function(a){return a.Handlers.extend({storageType:a.CommandStorage,constructor:function(b){this.options=b||{},this._initializeStorage(this.options),this.on("handler:add",this._executeCommands,this);var c=Array.prototype.slice.call(arguments);a.Handlers.prototype.constructor.apply(this,c)},execute:function(a,b){a=arguments[0],b=Array.prototype.slice.call(arguments,1),this.hasHandler(a)?this.getHandler(a).apply(this,b):this.storage.addCommand(a,b)},_executeCommands:function(a,b,d){var e=this.storage.getCommands(a);c.each(e.instances,function(a){b.apply(d,a)}),this.storage.clearCommands(a)},_initializeStorage:function(a){var b,d=a.storageType||this.storageType;b=c.isFunction(d)?new d:d,this.storage=b}})}(d),d.RequestResponse=function(a){return a.Handlers.extend({request:function(){var a=arguments[0],b=Array.prototype.slice.call(arguments,1);return this.getHandler(a).apply(this,b)}})}(d),d.EventAggregator=function(a,b){var c=function(){};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events),c}(a,c),d}(Backbone,Backbone.Marionette,_);var Marionette=function(a,b,c){"use strict";function d(a){return g.call(a)}function e(a,b){var c=new Error(a);throw c.name=b||"Error",c}var f={};b.Marionette=f,f.$=b.$;var g=Array.prototype.slice;return f.extend=b.Model.extend,f.getOption=function(a,b){if(a&&b){var c;return c=a.options&&b in a.options&&void 0!==a.options[b]?a.options[b]:a[b]}},f.triggerMethod=function(){function a(a,b,c){return c.toUpperCase()}var b=/(^|:)(\w)/gi,d=function(d){var e="on"+d.replace(b,a),f=this[e];return c.isFunction(this.trigger)&&this.trigger.apply(this,arguments),c.isFunction(f)?f.apply(this,c.tail(arguments)):void 0};return d}(),f.MonitorDOMRefresh=function(){function a(a){a._isShown=!0,d(a)}function b(a){a._isRendered=!0,d(a)}function d(a){a._isShown&&a._isRendered&&c.isFunction(a.triggerMethod)&&a.triggerMethod("dom:refresh")}return function(c){c.listenTo(c,"show",function(){a(c)}),c.listenTo(c,"render",function(){b(c)})}}(),function(a){function b(a,b,d,f){var g=f.split(/\s+/);c.each(g,function(c){var f=a[c];f||e("Method '"+c+"' was configured as an event handler, but does not exist."),a.listenTo(b,d,f,a)})}function d(a,b,c,d){a.listenTo(b,c,d,a)}function f(a,b,d,e){var f=e.split(/\s+/);c.each(f,function(c){var e=a[c];a.stopListening(b,d,e,a)})}function g(a,b,c,d){a.stopListening(b,c,d,a)}function h(a,b,d,e,f){b&&d&&(c.isFunction(d)&&(d=d.call(a)),c.each(d,function(d,g){c.isFunction(d)?e(a,b,g,d):f(a,b,g,d)}))}a.bindEntityEvents=function(a,c,e){h(a,c,e,d,b)},a.unbindEntityEvents=function(a,b,c){h(a,b,c,g,f)}}(f),f.Callbacks=function(){this._deferred=f.$.Deferred(),this._callbacks=[]},c.extend(f.Callbacks.prototype,{add:function(a,b){this._callbacks.push({cb:a,ctx:b}),this._deferred.done(function(c,d){b&&(c=b),a.call(c,d)})},run:function(a,b){this._deferred.resolve(b,a)},reset:function(){var a=this._callbacks;this._deferred=f.$.Deferred(),this._callbacks=[],c.each(a,function(a){this.add(a.cb,a.ctx)},this)}}),f.Controller=function(a){this.triggerMethod=f.triggerMethod,this.options=a||{},c.isFunction(this.initialize)&&this.initialize(this.options)},f.Controller.extend=f.extend,c.extend(f.Controller.prototype,b.Events,{close:function(){this.stopListening(),this.triggerMethod("close"),this.unbind()}}),f.Region=function(a){if(this.options=a||{},this.el=f.getOption(this,"el"),!this.el){var b=new Error("An 'el' must be specified for a region.");throw b.name="NoElError",b}if(this.initialize){var c=Array.prototype.slice.apply(arguments);this.initialize.apply(this,c)}},c.extend(f.Region,{buildRegion:function(a,b){var d="string"==typeof a,e="string"==typeof a.selector,f="undefined"==typeof a.regionType,g="function"==typeof a;if(!g&&!d&&!e)throw new Error("Region must be specified as a Region type, a selector string or an object with selector property");var h,i;d&&(h=a),a.selector&&(h=a.selector),g&&(i=a),!g&&f&&(i=b),a.regionType&&(i=a.regionType);var j=new i({el:h});return a.parentEl&&(j.getEl=function(b){var d=a.parentEl;return c.isFunction(d)&&(d=d()),d.find(b)}),j}}),c.extend(f.Region.prototype,b.Events,{show:function(a){this.ensureEl();var b=a.isClosed||c.isUndefined(a.$el),d=a!==this.currentView;d&&this.close(),a.render(),(d||b)&&this.open(a),this.currentView=a,f.triggerMethod.call(this,"show",a),f.triggerMethod.call(a,"show")},ensureEl:function(){this.$el&&0!==this.$el.length||(this.$el=this.getEl(this.el))},getEl:function(a){return f.$(a)},open:function(a){this.$el.empty().append(a.el)},close:function(){var a=this.currentView;a&&!a.isClosed&&(a.close?a.close():a.remove&&a.remove(),f.triggerMethod.call(this,"close"),delete this.currentView)},attachView:function(a){this.currentView=a},reset:function(){this.close(),delete this.$el}}),f.Region.extend=f.extend,f.RegionManager=function(a){var b=a.Controller.extend({constructor:function(b){this._regions={},a.Controller.prototype.constructor.call(this,b)},addRegions:function(a,b){var d={};return c.each(a,function(a,e){"string"==typeof a&&(a={selector:a}),a.selector&&(a=c.defaults({},a,b));var f=this.addRegion(e,a);d[e]=f},this),d},addRegion:function(b,d){var e,f=c.isObject(d),g=c.isString(d),h=!!d.selector;return e=g||f&&h?a.Region.buildRegion(d,a.Region):c.isFunction(d)?a.Region.buildRegion(d,a.Region):d,this._store(b,e),this.triggerMethod("region:add",b,e),e},get:function(a){return this._regions[a]},removeRegion:function(a){var b=this._regions[a];this._remove(a,b)},removeRegions:function(){c.each(this._regions,function(a,b){this._remove(b,a)},this)},closeRegions:function(){c.each(this._regions,function(a){a.close()},this)},close:function(){this.removeRegions();var b=Array.prototype.slice.call(arguments);a.Controller.prototype.close.apply(this,b)},_store:function(a,b){this._regions[a]=b,this._setLength()},_remove:function(a,b){b.close(),delete this._regions[a],this._setLength(),this.triggerMethod("region:remove",a,b)},_setLength:function(){this.length=c.size(this._regions)}}),d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck"];return c.each(d,function(a){b.prototype[a]=function(){var b=c.values(this._regions),d=[b].concat(c.toArray(arguments));return c[a].apply(c,d)}}),b}(f),f.TemplateCache=function(a){this.templateId=a},c.extend(f.TemplateCache,{templateCaches:{},get:function(a){var b=this.templateCaches[a];return b||(b=new f.TemplateCache(a),this.templateCaches[a]=b),b.load()},clear:function(){var a,b=d(arguments),c=b.length;if(c>0)for(a=0;c>a;a++)delete this.templateCaches[b[a]];else this.templateCaches={}}}),c.extend(f.TemplateCache.prototype,{load:function(){if(this.compiledTemplate)return this.compiledTemplate;var a=this.loadTemplate(this.templateId);return this.compiledTemplate=this.compileTemplate(a),this.compiledTemplate},loadTemplate:function(a){var b=f.$(a).html();return b&&0!==b.length||e("Could not find template: '"+a+"'","NoTemplateError"),b},compileTemplate:function(a){return c.template(a)}}),f.Renderer={render:function(a,b){if(!a){var c=new Error("Cannot render the template since it's false, null or undefined.");throw c.name="TemplateNotFoundError",c}var d;return d="function"==typeof a?a:f.TemplateCache.get(a),d(b)}},f.View=b.View.extend({constructor:function(a){c.bindAll(this,"render");var d=Array.prototype.slice.apply(arguments);this.options=c.extend({},this.options,a),this.events=this.normalizeUIKeys(c.result(this,"events")),b.View.prototype.constructor.apply(this,d),f.MonitorDOMRefresh(this),this.listenTo(this,"show",this.onShowCalled,this)},triggerMethod:f.triggerMethod,getTemplate:function(){return f.getOption(this,"template")},mixinTemplateHelpers:function(a){a=a||{};var b=f.getOption(this,"templateHelpers");return c.isFunction(b)&&(b=b.call(this)),c.extend(a,b)},normalizeUIKeys:function(a){return"undefined"!=typeof a?(c.each(c.keys(a),function(b){var c=b.split("@ui.");2===c.length&&(a[c[0]+this.ui[c[1]]]=a[b],delete a[b])},this),a):void 0},configureTriggers:function(){if(this.triggers){var a={},b=this.normalizeUIKeys(c.result(this,"triggers"));return c.each(b,function(b,d){var e=c.isObject(b),f=e?b.event:b;a[d]=function(a){if(a){var c=a.preventDefault,d=a.stopPropagation,g=e?b.preventDefault:c,h=e?b.stopPropagation:d;g&&c&&c.apply(a),h&&d&&d.apply(a)}var i={view:this,model:this.model,collection:this.collection};this.triggerMethod(f,i)}},this),a}},delegateEvents:function(a){this._delegateDOMEvents(a),f.bindEntityEvents(this,this.model,f.getOption(this,"modelEvents")),f.bindEntityEvents(this,this.collection,f.getOption(this,"collectionEvents"))},_delegateDOMEvents:function(a){a=a||this.events,c.isFunction(a)&&(a=a.call(this));var d={},e=this.configureTriggers();c.extend(d,a,e),b.View.prototype.delegateEvents.call(this,d)},undelegateEvents:function(){var a=Array.prototype.slice.call(arguments);b.View.prototype.undelegateEvents.apply(this,a),f.unbindEntityEvents(this,this.model,f.getOption(this,"modelEvents")),f.unbindEntityEvents(this,this.collection,f.getOption(this,"collectionEvents"))},onShowCalled:function(){},close:function(){if(!this.isClosed){var a=this.triggerMethod("before:close");a!==!1&&(this.isClosed=!0,this.triggerMethod("close"),this.unbindUIElements(),this.remove())}},bindUIElements:function(){if(this.ui){this._uiBindings||(this._uiBindings=this.ui);var a=c.result(this,"_uiBindings");this.ui={},c.each(c.keys(a),function(b){var c=a[b];this.ui[b]=this.$(c)},this)}},unbindUIElements:function(){this.ui&&this._uiBindings&&(c.each(this.ui,function(a,b){delete this.ui[b]},this),this.ui=this._uiBindings,delete this._uiBindings)}}),f.ItemView=f.View.extend({constructor:function(){f.View.prototype.constructor.apply(this,d(arguments))},serializeData:function(){var a={};return this.model?a=this.model.toJSON():this.collection&&(a={items:this.collection.toJSON()}),a},render:function(){this.isClosed=!1,this.triggerMethod("before:render",this),this.triggerMethod("item:before:render",this);var a=this.serializeData();a=this.mixinTemplateHelpers(a);var b=this.getTemplate(),c=f.Renderer.render(b,a);return this.$el.html(c),this.bindUIElements(),this.triggerMethod("render",this),this.triggerMethod("item:rendered",this),this},close:function(){this.isClosed||(this.triggerMethod("item:before:close"),f.View.prototype.close.apply(this,d(arguments)),this.triggerMethod("item:closed"))}}),f.CollectionView=f.View.extend({itemViewEventPrefix:"itemview",constructor:function(){this._initChildViewStorage(),f.View.prototype.constructor.apply(this,d(arguments)),this._initialEvents(),this.initRenderBuffer()},initRenderBuffer:function(){this.elBuffer=document.createDocumentFragment()},startBuffering:function(){this.initRenderBuffer(),this.isBuffering=!0},endBuffering:function(){this.appendBuffer(this,this.elBuffer),this.initRenderBuffer(),this.isBuffering=!1},_initialEvents:function(){this.collection&&(this.listenTo(this.collection,"add",this.addChildView,this),this.listenTo(this.collection,"remove",this.removeItemView,this),this.listenTo(this.collection,"reset",this.render,this))},addChildView:function(a){this.closeEmptyView();var b=this.getItemView(a),c=this.collection.indexOf(a);this.addItemView(a,b,c)},onShowCalled:function(){this.children.each(function(a){f.triggerMethod.call(a,"show")})},triggerBeforeRender:function(){this.triggerMethod("before:render",this),this.triggerMethod("collection:before:render",this)},triggerRendered:function(){this.triggerMethod("render",this),this.triggerMethod("collection:rendered",this)},render:function(){return this.isClosed=!1,this.triggerBeforeRender(),this._renderChildren(),this.triggerRendered(),this},_renderChildren:function(){this.startBuffering(),this.closeEmptyView(),this.closeChildren(),this.collection&&this.collection.length>0?this.showCollection():this.showEmptyView(),this.endBuffering()},showCollection:function(){var a;this.collection.each(function(b,c){a=this.getItemView(b),this.addItemView(b,a,c)},this)},showEmptyView:function(){var a=this.getEmptyView();if(a&&!this._showingEmptyView){this._showingEmptyView=!0;var c=new b.Model;this.addItemView(c,a,0)}},closeEmptyView:function(){this._showingEmptyView&&(this.closeChildren(),delete this._showingEmptyView)},getEmptyView:function(){return f.getOption(this,"emptyView")},getItemView:function(){var a=f.getOption(this,"itemView");return a||e("An `itemView` must be specified","NoItemViewError"),a},addItemView:function(a,b,d){var e=f.getOption(this,"itemViewOptions");c.isFunction(e)&&(e=e.call(this,a,d));var g=this.buildItemView(a,b,e);this.addChildViewEventForwarding(g),this.triggerMethod("before:item:added",g),this.children.add(g),this.renderItemView(g,d),this._isShown&&f.triggerMethod.call(g,"show"),this.triggerMethod("after:item:added",g)},addChildViewEventForwarding:function(a){var b=f.getOption(this,"itemViewEventPrefix");this.listenTo(a,"all",function(){var c=d(arguments);c[0]=b+":"+c[0],c.splice(1,0,a),f.triggerMethod.apply(this,c)},this)},renderItemView:function(a,b){a.render(),this.appendHtml(this,a,b)},buildItemView:function(a,b,d){var e=c.extend({model:a},d);return new b(e)},removeItemView:function(a){var b=this.children.findByModel(a);this.removeChildView(b),this.checkEmpty()},removeChildView:function(a){a&&(this.stopListening(a),a.close?a.close():a.remove&&a.remove(),this.children.remove(a)),this.triggerMethod("item:removed",a)},checkEmpty:function(){this.collection&&0!==this.collection.length||this.showEmptyView()},appendBuffer:function(a,b){a.$el.append(b)},appendHtml:function(a,b){a.isBuffering?a.elBuffer.appendChild(b.el):a.$el.append(b.el)},_initChildViewStorage:function(){this.children=new b.ChildViewContainer},close:function(){this.isClosed||(this.triggerMethod("collection:before:close"),this.closeChildren(),this.triggerMethod("collection:closed"),f.View.prototype.close.apply(this,d(arguments)))},closeChildren:function(){this.children.each(function(a){this.removeChildView(a)},this),this.checkEmpty()}}),f.CompositeView=f.CollectionView.extend({constructor:function(){f.CollectionView.prototype.constructor.apply(this,d(arguments))},_initialEvents:function(){this.once("render",function(){this.collection&&(this.listenTo(this.collection,"add",this.addChildView,this),this.listenTo(this.collection,"remove",this.removeItemView,this),this.listenTo(this.collection,"reset",this._renderChildren,this))})},getItemView:function(){var a=f.getOption(this,"itemView")||this.constructor;return a||e("An `itemView` must be specified","NoItemViewError"),a},serializeData:function(){var a={};return this.model&&(a=this.model.toJSON()),a},render:function(){this.isRendered=!0,this.isClosed=!1,this.resetItemViewContainer(),this.triggerBeforeRender();var a=this.renderModel();return this.$el.html(a),this.bindUIElements(),this.triggerMethod("composite:model:rendered"),this._renderChildren(),this.triggerMethod("composite:rendered"),this.triggerRendered(),this},_renderChildren:function(){this.isRendered&&(f.CollectionView.prototype._renderChildren.call(this),this.triggerMethod("composite:collection:rendered"))},renderModel:function(){var a={};a=this.serializeData(),a=this.mixinTemplateHelpers(a);var b=this.getTemplate();return f.Renderer.render(b,a)},appendBuffer:function(a,b){var c=this.getItemViewContainer(a);c.append(b)},appendHtml:function(a,b){if(a.isBuffering)a.elBuffer.appendChild(b.el);else{var c=this.getItemViewContainer(a);c.append(b.el)}},getItemViewContainer:function(a){if("$itemViewContainer"in a)return a.$itemViewContainer;var b,d=f.getOption(a,"itemViewContainer");if(d){var g=c.isFunction(d)?d():d;b=a.$(g),b.length<=0&&e("The specified `itemViewContainer` was not found: "+a.itemViewContainer,"ItemViewContainerMissingError")}else b=a.$el;return a.$itemViewContainer=b,b},resetItemViewContainer:function(){this.$itemViewContainer&&delete this.$itemViewContainer}}),f.Layout=f.ItemView.extend({regionType:f.Region,constructor:function(a){a=a||{},this._firstRender=!0,this._initializeRegions(a),f.ItemView.prototype.constructor.call(this,a)},render:function(){this.isClosed&&this._initializeRegions(),this._firstRender?this._firstRender=!1:this.isClosed||this._reInitializeRegions();var a=Array.prototype.slice.apply(arguments),b=f.ItemView.prototype.render.apply(this,a);return b},close:function(){if(!this.isClosed){this.regionManager.close();var a=Array.prototype.slice.apply(arguments);f.ItemView.prototype.close.apply(this,a)}},addRegion:function(a,b){var c={};return c[a]=b,this._buildRegions(c)[a]},addRegions:function(a){return this.regions=c.extend({},this.regions,a),this._buildRegions(a)},removeRegion:function(a){return delete this.regions[a],this.regionManager.removeRegion(a)},_buildRegions:function(a){var b=this,c={regionType:f.getOption(this,"regionType"),parentEl:function(){return b.$el}};return this.regionManager.addRegions(a,c)},_initializeRegions:function(a){var b;this._initRegionManager(),b=c.isFunction(this.regions)?this.regions(a):this.regions||{},this.addRegions(b)},_reInitializeRegions:function(){this.regionManager.closeRegions(),this.regionManager.each(function(a){a.reset()})},_initRegionManager:function(){this.regionManager=new f.RegionManager,this.listenTo(this.regionManager,"region:add",function(a,b){this[a]=b,this.trigger("region:add",a,b)}),this.listenTo(this.regionManager,"region:remove",function(a,b){delete this[a],this.trigger("region:remove",a,b)})}}),f.AppRouter=b.Router.extend({constructor:function(a){b.Router.prototype.constructor.apply(this,d(arguments)),this.options=a||{};var c=f.getOption(this,"appRoutes"),e=this._getController();this.processAppRoutes(e,c)},appRoute:function(a,b){var c=this._getController();this._addAppRoute(c,a,b)},processAppRoutes:function(a,b){if(b){var d=c.keys(b).reverse();c.each(d,function(c){this._addAppRoute(a,c,b[c])},this)}},_getController:function(){return f.getOption(this,"controller")},_addAppRoute:function(a,b,d){var e=a[d];if(!e)throw new Error("Method '"+d+"' was not found on the controller");this.route(b,d,c.bind(e,a))}}),f.Application=function(a){this._initRegionManager(),this._initCallbacks=new f.Callbacks,this.vent=new b.Wreqr.EventAggregator,this.commands=new b.Wreqr.Commands,this.reqres=new b.Wreqr.RequestResponse,this.submodules={},c.extend(this,a),this.triggerMethod=f.triggerMethod},c.extend(f.Application.prototype,b.Events,{execute:function(){var a=Array.prototype.slice.apply(arguments);this.commands.execute.apply(this.commands,a)},request:function(){var a=Array.prototype.slice.apply(arguments);return this.reqres.request.apply(this.reqres,a)},addInitializer:function(a){this._initCallbacks.add(a)},start:function(a){this.triggerMethod("initialize:before",a),this._initCallbacks.run(a,this),this.triggerMethod("initialize:after",a),this.triggerMethod("start",a)},addRegions:function(a){return this._regionManager.addRegions(a)},closeRegions:function(){this._regionManager.closeRegions()},removeRegion:function(a){this._regionManager.removeRegion(a)},getRegion:function(a){return this._regionManager.get(a)},module:function(){var a=d(arguments);return a.unshift(this),f.Module.create.apply(f.Module,a)},_initRegionManager:function(){this._regionManager=new f.RegionManager,this.listenTo(this._regionManager,"region:add",function(a,b){this[a]=b}),this.listenTo(this._regionManager,"region:remove",function(a){delete this[a]})}}),f.Application.extend=f.extend,f.Module=function(a,b){this.moduleName=a,this.submodules={},this._setupInitializersAndFinalizers(),this.app=b,this.startWithParent=!0,this.triggerMethod=f.triggerMethod},c.extend(f.Module.prototype,b.Events,{addInitializer:function(a){this._initializerCallbacks.add(a)},addFinalizer:function(a){this._finalizerCallbacks.add(a)},start:function(a){this._isInitialized||(c.each(this.submodules,function(b){b.startWithParent&&b.start(a)}),this.triggerMethod("before:start",a),this._initializerCallbacks.run(a,this),this._isInitialized=!0,this.triggerMethod("start",a))},stop:function(){this._isInitialized&&(this._isInitialized=!1,f.triggerMethod.call(this,"before:stop"),c.each(this.submodules,function(a){a.stop()}),this._finalizerCallbacks.run(void 0,this),this._initializerCallbacks.reset(),this._finalizerCallbacks.reset(),f.triggerMethod.call(this,"stop"))},addDefinition:function(a,b){this._runModuleDefinition(a,b)},_runModuleDefinition:function(a,d){if(a){var e=c.flatten([this,this.app,b,f,f.$,c,d]);a.apply(this,e)}},_setupInitializersAndFinalizers:function(){this._initializerCallbacks=new f.Callbacks,this._finalizerCallbacks=new f.Callbacks}}),c.extend(f.Module,{create:function(a,b,e){var f=a,g=d(arguments);g.splice(0,3),b=b.split(".");var h=b.length,i=[];return i[h-1]=e,c.each(b,function(b,c){var d=f;f=this._getModule(d,b,a),this._addModuleDefinition(d,f,i[c],g)},this),f},_getModule:function(a,b,c){var d=a[b];return d||(d=new f.Module(b,c),a[b]=d,a.submodules[b]=d),d},_addModuleDefinition:function(a,b,d,e){var f,g;c.isFunction(d)?(f=d,g=!0):c.isObject(d)?(f=d.define,g=d.startWithParent):g=!0,f&&b.addDefinition(f,e),b.startWithParent=b.startWithParent&&g,b.startWithParent&&!b.startWithParentIsConfigured&&(b.startWithParentIsConfigured=!0,a.addInitializer(function(a){b.startWithParent&&b.start(a)}))}}),f}(this,Backbone,_);
|
20
|
+
Backbone.ChildViewContainer=function(a,b){var c=function(a){this._views={},this._indexByModel={},this._indexByCustom={},this._updateLength(),b.each(a,this.add,this)};b.extend(c.prototype,{add:function(a,b){var c=a.cid;this._views[c]=a,a.model&&(this._indexByModel[a.model.cid]=c),b&&(this._indexByCustom[b]=c),this._updateLength()},findByModel:function(a){return this.findByModelCid(a.cid)},findByModelCid:function(a){var b=this._indexByModel[a];return this.findByCid(b)},findByCustom:function(a){var b=this._indexByCustom[a];return this.findByCid(b)},findByIndex:function(a){return b.values(this._views)[a]},findByCid:function(a){return this._views[a]},remove:function(a){var c=a.cid;a.model&&delete this._indexByModel[a.model.cid],b.any(this._indexByCustom,function(a,b){return a===c?(delete this._indexByCustom[b],!0):void 0},this),delete this._views[c],this._updateLength()},call:function(a){this.apply(a,b.tail(arguments))},apply:function(a,c){b.each(this._views,function(d){b.isFunction(d[a])&&d[a].apply(d,c||[])})},_updateLength:function(){this.length=b.size(this._views)}});var d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck"];return b.each(d,function(a){c.prototype[a]=function(){var c=b.values(this._views),d=[c].concat(b.toArray(arguments));return b[a].apply(b,d)}}),c}(Backbone,_),Backbone.Wreqr=function(a,b,c){"use strict";var d={};return d.Handlers=function(a,b){var c=function(a){this.options=a,this._wreqrHandlers={},b.isFunction(this.initialize)&&this.initialize(a)};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events,{setHandlers:function(a){b.each(a,function(a,c){var d=null;b.isObject(a)&&!b.isFunction(a)&&(d=a.context,a=a.callback),this.setHandler(c,a,d)},this)},setHandler:function(a,b,c){var d={callback:b,context:c};this._wreqrHandlers[a]=d,this.trigger("handler:add",a,b,c)},hasHandler:function(a){return!!this._wreqrHandlers[a]},getHandler:function(a){var b=this._wreqrHandlers[a];if(!b)throw new Error("Handler not found for '"+a+"'");return function(){var a=Array.prototype.slice.apply(arguments);return b.callback.apply(b.context,a)}},removeHandler:function(a){delete this._wreqrHandlers[a]},removeAllHandlers:function(){this._wreqrHandlers={}}}),c}(a,c),d.CommandStorage=function(){var b=function(a){this.options=a,this._commands={},c.isFunction(this.initialize)&&this.initialize(a)};return c.extend(b.prototype,a.Events,{getCommands:function(a){var b=this._commands[a];return b||(b={command:a,instances:[]},this._commands[a]=b),b},addCommand:function(a,b){var c=this.getCommands(a);c.instances.push(b)},clearCommands:function(a){var b=this.getCommands(a);b.instances=[]}}),b}(),d.Commands=function(a){return a.Handlers.extend({storageType:a.CommandStorage,constructor:function(b){this.options=b||{},this._initializeStorage(this.options),this.on("handler:add",this._executeCommands,this);var c=Array.prototype.slice.call(arguments);a.Handlers.prototype.constructor.apply(this,c)},execute:function(a,b){a=arguments[0],b=Array.prototype.slice.call(arguments,1),this.hasHandler(a)?this.getHandler(a).apply(this,b):this.storage.addCommand(a,b)},_executeCommands:function(a,b,d){var e=this.storage.getCommands(a);c.each(e.instances,function(a){b.apply(d,a)}),this.storage.clearCommands(a)},_initializeStorage:function(a){var b,d=a.storageType||this.storageType;b=c.isFunction(d)?new d:d,this.storage=b}})}(d),d.RequestResponse=function(a){return a.Handlers.extend({request:function(){var a=arguments[0],b=Array.prototype.slice.call(arguments,1);return this.getHandler(a).apply(this,b)}})}(d),d.EventAggregator=function(a,b){var c=function(){};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events),c}(a,c),d}(Backbone,Backbone.Marionette,_);var Marionette=function(a,b,c){"use strict";function d(a){return g.call(a)}function e(a,b){var c=new Error(a);throw c.name=b||"Error",c}var f={};b.Marionette=f,f.$=b.$;var g=Array.prototype.slice;return f.extend=b.Model.extend,f.getOption=function(a,b){if(a&&b){var c;return c=a.options&&b in a.options&&void 0!==a.options[b]?a.options[b]:a[b]}},f.triggerMethod=function(){function a(a,b,c){return c.toUpperCase()}var b=/(^|:)(\w)/gi,d=function(d){var e="on"+d.replace(b,a),f=this[e];return c.isFunction(this.trigger)&&this.trigger.apply(this,arguments),c.isFunction(f)?f.apply(this,c.tail(arguments)):void 0};return d}(),f.MonitorDOMRefresh=function(a){function b(a){a._isShown=!0,e(a)}function d(a){a._isRendered=!0,e(a)}function e(a){a._isShown&&a._isRendered&&f(a)&&c.isFunction(a.triggerMethod)&&a.triggerMethod("dom:refresh")}function f(b){return a.contains(b.el)}return function(a){a.listenTo(a,"show",function(){b(a)}),a.listenTo(a,"render",function(){d(a)})}}(document.documentElement),function(a){function b(a,b,d,f){var g=f.split(/\s+/);c.each(g,function(c){var f=a[c];f||e("Method '"+c+"' was configured as an event handler, but does not exist."),a.listenTo(b,d,f,a)})}function d(a,b,c,d){a.listenTo(b,c,d,a)}function f(a,b,d,e){var f=e.split(/\s+/);c.each(f,function(c){var e=a[c];a.stopListening(b,d,e,a)})}function g(a,b,c,d){a.stopListening(b,c,d,a)}function h(a,b,d,e,f){b&&d&&(c.isFunction(d)&&(d=d.call(a)),c.each(d,function(d,g){c.isFunction(d)?e(a,b,g,d):f(a,b,g,d)}))}a.bindEntityEvents=function(a,c,e){h(a,c,e,d,b)},a.unbindEntityEvents=function(a,b,c){h(a,b,c,g,f)}}(f),f.Callbacks=function(){this._deferred=f.$.Deferred(),this._callbacks=[]},c.extend(f.Callbacks.prototype,{add:function(a,b){this._callbacks.push({cb:a,ctx:b}),this._deferred.done(function(c,d){b&&(c=b),a.call(c,d)})},run:function(a,b){this._deferred.resolve(b,a)},reset:function(){var a=this._callbacks;this._deferred=f.$.Deferred(),this._callbacks=[],c.each(a,function(a){this.add(a.cb,a.ctx)},this)}}),f.Controller=function(a){this.triggerMethod=f.triggerMethod,this.options=a||{},c.isFunction(this.initialize)&&this.initialize(this.options)},f.Controller.extend=f.extend,c.extend(f.Controller.prototype,b.Events,{close:function(){this.stopListening(),this.triggerMethod("close"),this.unbind()}}),f.Region=function(a){if(this.options=a||{},this.el=f.getOption(this,"el"),!this.el){var b=new Error("An 'el' must be specified for a region.");throw b.name="NoElError",b}if(this.initialize){var c=Array.prototype.slice.apply(arguments);this.initialize.apply(this,c)}},c.extend(f.Region,{buildRegion:function(a,b){var d="string"==typeof a,e="string"==typeof a.selector,f="undefined"==typeof a.regionType,g="function"==typeof a;if(!g&&!d&&!e)throw new Error("Region must be specified as a Region type, a selector string or an object with selector property");var h,i;d&&(h=a),a.selector&&(h=a.selector),g&&(i=a),!g&&f&&(i=b),a.regionType&&(i=a.regionType);var j=new i({el:h});return a.parentEl&&(j.getEl=function(b){var d=a.parentEl;return c.isFunction(d)&&(d=d()),d.find(b)}),j}}),c.extend(f.Region.prototype,b.Events,{show:function(a){this.ensureEl();var b=a.isClosed||c.isUndefined(a.$el),d=a!==this.currentView;d&&this.close(),a.render(),(d||b)&&this.open(a),this.currentView=a,f.triggerMethod.call(this,"show",a),f.triggerMethod.call(a,"show")},ensureEl:function(){this.$el&&0!==this.$el.length||(this.$el=this.getEl(this.el))},getEl:function(a){return f.$(a)},open:function(a){this.$el.empty().append(a.el)},close:function(){var a=this.currentView;a&&!a.isClosed&&(a.close?a.close():a.remove&&a.remove(),f.triggerMethod.call(this,"close",a),delete this.currentView)},attachView:function(a){this.currentView=a},reset:function(){this.close(),delete this.$el}}),f.Region.extend=f.extend,f.RegionManager=function(a){var b=a.Controller.extend({constructor:function(b){this._regions={},a.Controller.prototype.constructor.call(this,b)},addRegions:function(a,b){var d={};return c.each(a,function(a,e){"string"==typeof a&&(a={selector:a}),a.selector&&(a=c.defaults({},a,b));var f=this.addRegion(e,a);d[e]=f},this),d},addRegion:function(b,d){var e,f=c.isObject(d),g=c.isString(d),h=!!d.selector;return e=g||f&&h?a.Region.buildRegion(d,a.Region):c.isFunction(d)?a.Region.buildRegion(d,a.Region):d,this._store(b,e),this.triggerMethod("region:add",b,e),e},get:function(a){return this._regions[a]},removeRegion:function(a){var b=this._regions[a];this._remove(a,b)},removeRegions:function(){c.each(this._regions,function(a,b){this._remove(b,a)},this)},closeRegions:function(){c.each(this._regions,function(a){a.close()},this)},close:function(){this.removeRegions();var b=Array.prototype.slice.call(arguments);a.Controller.prototype.close.apply(this,b)},_store:function(a,b){this._regions[a]=b,this._setLength()},_remove:function(a,b){b.close(),delete this._regions[a],this._setLength(),this.triggerMethod("region:remove",a,b)},_setLength:function(){this.length=c.size(this._regions)}}),d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck"];return c.each(d,function(a){b.prototype[a]=function(){var b=c.values(this._regions),d=[b].concat(c.toArray(arguments));return c[a].apply(c,d)}}),b}(f),f.TemplateCache=function(a){this.templateId=a},c.extend(f.TemplateCache,{templateCaches:{},get:function(a){var b=this.templateCaches[a];return b||(b=new f.TemplateCache(a),this.templateCaches[a]=b),b.load()},clear:function(){var a,b=d(arguments),c=b.length;if(c>0)for(a=0;c>a;a++)delete this.templateCaches[b[a]];else this.templateCaches={}}}),c.extend(f.TemplateCache.prototype,{load:function(){if(this.compiledTemplate)return this.compiledTemplate;var a=this.loadTemplate(this.templateId);return this.compiledTemplate=this.compileTemplate(a),this.compiledTemplate},loadTemplate:function(a){var b=f.$(a).html();return b&&0!==b.length||e("Could not find template: '"+a+"'","NoTemplateError"),b},compileTemplate:function(a){return c.template(a)}}),f.Renderer={render:function(a,b){if(!a){var c=new Error("Cannot render the template since it's false, null or undefined.");throw c.name="TemplateNotFoundError",c}var d;return d="function"==typeof a?a:f.TemplateCache.get(a),d(b)}},f.View=b.View.extend({constructor:function(a){c.bindAll(this,"render");var d=Array.prototype.slice.apply(arguments);this.options=c.extend({},c.result(this,"options"),c.isFunction(a)?a.call(this):a),this.events=this.normalizeUIKeys(c.result(this,"events")),b.View.prototype.constructor.apply(this,d),f.MonitorDOMRefresh(this),this.listenTo(this,"show",this.onShowCalled,this)},triggerMethod:f.triggerMethod,getTemplate:function(){return f.getOption(this,"template")},mixinTemplateHelpers:function(a){a=a||{};var b=f.getOption(this,"templateHelpers");return c.isFunction(b)&&(b=b.call(this)),c.extend(a,b)},normalizeUIKeys:function(a){return"undefined"!=typeof a?(c.each(c.keys(a),function(b){var c=b.split("@ui.");2===c.length&&(a[c[0]+this.ui[c[1]]]=a[b],delete a[b])},this),a):void 0},configureTriggers:function(){if(this.triggers){var a={},b=this.normalizeUIKeys(c.result(this,"triggers"));return c.each(b,function(b,d){var e=c.isObject(b),f=e?b.event:b;a[d]=function(a){if(a){var c=a.preventDefault,d=a.stopPropagation,g=e?b.preventDefault:c,h=e?b.stopPropagation:d;g&&c&&c.apply(a),h&&d&&d.apply(a)}var i={view:this,model:this.model,collection:this.collection};this.triggerMethod(f,i)}},this),a}},delegateEvents:function(a){this._delegateDOMEvents(a),f.bindEntityEvents(this,this.model,f.getOption(this,"modelEvents")),f.bindEntityEvents(this,this.collection,f.getOption(this,"collectionEvents"))},_delegateDOMEvents:function(a){a=a||this.events,c.isFunction(a)&&(a=a.call(this));var d={},e=this.configureTriggers();c.extend(d,a,e),b.View.prototype.delegateEvents.call(this,d)},undelegateEvents:function(){var a=Array.prototype.slice.call(arguments);b.View.prototype.undelegateEvents.apply(this,a),f.unbindEntityEvents(this,this.model,f.getOption(this,"modelEvents")),f.unbindEntityEvents(this,this.collection,f.getOption(this,"collectionEvents"))},onShowCalled:function(){},close:function(){if(!this.isClosed){var a=this.triggerMethod("before:close");a!==!1&&(this.isClosed=!0,this.triggerMethod("close"),this.unbindUIElements(),this.remove())}},bindUIElements:function(){if(this.ui){this._uiBindings||(this._uiBindings=this.ui);var a=c.result(this,"_uiBindings");this.ui={},c.each(c.keys(a),function(b){var c=a[b];this.ui[b]=this.$(c)},this)}},unbindUIElements:function(){this.ui&&this._uiBindings&&(c.each(this.ui,function(a,b){delete this.ui[b]},this),this.ui=this._uiBindings,delete this._uiBindings)}}),f.ItemView=f.View.extend({constructor:function(){f.View.prototype.constructor.apply(this,d(arguments))},serializeData:function(){var a={};return this.model?a=this.model.toJSON():this.collection&&(a={items:this.collection.toJSON()}),a},render:function(){this.isClosed=!1,this.triggerMethod("before:render",this),this.triggerMethod("item:before:render",this);var a=this.serializeData();a=this.mixinTemplateHelpers(a);var b=this.getTemplate(),c=f.Renderer.render(b,a);return this.$el.html(c),this.bindUIElements(),this.triggerMethod("render",this),this.triggerMethod("item:rendered",this),this},close:function(){this.isClosed||(this.triggerMethod("item:before:close"),f.View.prototype.close.apply(this,d(arguments)),this.triggerMethod("item:closed"))}}),f.CollectionView=f.View.extend({itemViewEventPrefix:"itemview",constructor:function(){this._initChildViewStorage(),f.View.prototype.constructor.apply(this,d(arguments)),this._initialEvents(),this.initRenderBuffer()},initRenderBuffer:function(){this.elBuffer=document.createDocumentFragment()},startBuffering:function(){this.initRenderBuffer(),this.isBuffering=!0},endBuffering:function(){this.appendBuffer(this,this.elBuffer),this.initRenderBuffer(),this.isBuffering=!1},_initialEvents:function(){this.collection&&(this.listenTo(this.collection,"add",this.addChildView,this),this.listenTo(this.collection,"remove",this.removeItemView,this),this.listenTo(this.collection,"reset",this.render,this))},addChildView:function(a){this.closeEmptyView();var b=this.getItemView(a),c=this.collection.indexOf(a);this.addItemView(a,b,c)},onShowCalled:function(){this.children.each(function(a){f.triggerMethod.call(a,"show")})},triggerBeforeRender:function(){this.triggerMethod("before:render",this),this.triggerMethod("collection:before:render",this)},triggerRendered:function(){this.triggerMethod("render",this),this.triggerMethod("collection:rendered",this)},render:function(){return this.isClosed=!1,this.triggerBeforeRender(),this._renderChildren(),this.triggerRendered(),this},_renderChildren:function(){this.startBuffering(),this.closeEmptyView(),this.closeChildren(),this.collection&&this.collection.length>0?this.showCollection():this.showEmptyView(),this.endBuffering()},showCollection:function(){var a;this.collection.each(function(b,c){a=this.getItemView(b),this.addItemView(b,a,c)},this)},showEmptyView:function(){var a=this.getEmptyView();if(a&&!this._showingEmptyView){this._showingEmptyView=!0;var c=new b.Model;this.addItemView(c,a,0)}},closeEmptyView:function(){this._showingEmptyView&&(this.closeChildren(),delete this._showingEmptyView)},getEmptyView:function(){return f.getOption(this,"emptyView")},getItemView:function(){var a=f.getOption(this,"itemView");return a||e("An `itemView` must be specified","NoItemViewError"),a},addItemView:function(a,b,d){var e=f.getOption(this,"itemViewOptions");c.isFunction(e)&&(e=e.call(this,a,d));var g=this.buildItemView(a,b,e);return this.addChildViewEventForwarding(g),this.triggerMethod("before:item:added",g),this.children.add(g),this.renderItemView(g,d),this._isShown&&!this.isBuffering&&f.triggerMethod.call(g,"show"),this.triggerMethod("after:item:added",g),g},addChildViewEventForwarding:function(a){var b=f.getOption(this,"itemViewEventPrefix");this.listenTo(a,"all",function(){var e=d(arguments),g=e[0],h=this.getItemEvents();e[0]=b+":"+g,e.splice(1,0,a),"undefined"!=typeof h&&c.isFunction(h[g])&&h[g].apply(this,e),f.triggerMethod.apply(this,e)},this)},getItemEvents:function(){return c.isFunction(this.itemEvents)?this.itemEvents.call(this):this.itemEvents},renderItemView:function(a,b){a.render(),this.appendHtml(this,a,b)},buildItemView:function(a,b,d){var e=c.extend({model:a},d);return new b(e)},removeItemView:function(a){var b=this.children.findByModel(a);this.removeChildView(b),this.checkEmpty()},removeChildView:function(a){a&&(this.stopListening(a),a.close?a.close():a.remove&&a.remove(),this.children.remove(a)),this.triggerMethod("item:removed",a)},checkEmpty:function(){this.collection&&0!==this.collection.length||this.showEmptyView()},appendBuffer:function(a,b){a.$el.append(b)},appendHtml:function(a,b){a.isBuffering?a.elBuffer.appendChild(b.el):a.$el.append(b.el)},_initChildViewStorage:function(){this.children=new b.ChildViewContainer},close:function(){this.isClosed||(this.triggerMethod("collection:before:close"),this.closeChildren(),this.triggerMethod("collection:closed"),f.View.prototype.close.apply(this,d(arguments)))},closeChildren:function(){this.children.each(function(a){this.removeChildView(a)},this),this.checkEmpty()}}),f.CompositeView=f.CollectionView.extend({constructor:function(){f.CollectionView.prototype.constructor.apply(this,d(arguments))},_initialEvents:function(){this.once("render",function(){this.collection&&(this.listenTo(this.collection,"add",this.addChildView,this),this.listenTo(this.collection,"remove",this.removeItemView,this),this.listenTo(this.collection,"reset",this._renderChildren,this))})},getItemView:function(){var a=f.getOption(this,"itemView")||this.constructor;return a||e("An `itemView` must be specified","NoItemViewError"),a},serializeData:function(){var a={};return this.model&&(a=this.model.toJSON()),a},render:function(){this.isRendered=!0,this.isClosed=!1,this.resetItemViewContainer(),this.triggerBeforeRender();var a=this.renderModel();return this.$el.html(a),this.bindUIElements(),this.triggerMethod("composite:model:rendered"),this._renderChildren(),this.triggerMethod("composite:rendered"),this.triggerRendered(),this},_renderChildren:function(){this.isRendered&&(f.CollectionView.prototype._renderChildren.call(this),this.triggerMethod("composite:collection:rendered"))},renderModel:function(){var a={};a=this.serializeData(),a=this.mixinTemplateHelpers(a);var b=this.getTemplate();return f.Renderer.render(b,a)},appendBuffer:function(a,b){var c=this.getItemViewContainer(a);c.append(b)},appendHtml:function(a,b){if(a.isBuffering)a.elBuffer.appendChild(b.el);else{var c=this.getItemViewContainer(a);c.append(b.el)}},getItemViewContainer:function(a){if("$itemViewContainer"in a)return a.$itemViewContainer;var b,d=f.getOption(a,"itemViewContainer");if(d){var g=c.isFunction(d)?d.call(this):d;b=a.$(g),b.length<=0&&e("The specified `itemViewContainer` was not found: "+a.itemViewContainer,"ItemViewContainerMissingError")}else b=a.$el;return a.$itemViewContainer=b,b},resetItemViewContainer:function(){this.$itemViewContainer&&delete this.$itemViewContainer}}),f.Layout=f.ItemView.extend({regionType:f.Region,constructor:function(a){a=a||{},this._firstRender=!0,this._initializeRegions(a),f.ItemView.prototype.constructor.call(this,a)},render:function(){this.isClosed&&this._initializeRegions(),this._firstRender?this._firstRender=!1:this.isClosed||this._reInitializeRegions();var a=Array.prototype.slice.apply(arguments),b=f.ItemView.prototype.render.apply(this,a);return b},close:function(){if(!this.isClosed){this.regionManager.close();var a=Array.prototype.slice.apply(arguments);f.ItemView.prototype.close.apply(this,a)}},addRegion:function(a,b){var c={};return c[a]=b,this._buildRegions(c)[a]},addRegions:function(a){return this.regions=c.extend({},this.regions,a),this._buildRegions(a)},removeRegion:function(a){return delete this.regions[a],this.regionManager.removeRegion(a)},_buildRegions:function(a){var b=this,c={regionType:f.getOption(this,"regionType"),parentEl:function(){return b.$el}};return this.regionManager.addRegions(a,c)},_initializeRegions:function(a){var b;this._initRegionManager(),b=c.isFunction(this.regions)?this.regions(a):this.regions||{},this.addRegions(b)},_reInitializeRegions:function(){this.regionManager.closeRegions(),this.regionManager.each(function(a){a.reset()})},_initRegionManager:function(){this.regionManager=new f.RegionManager,this.listenTo(this.regionManager,"region:add",function(a,b){this[a]=b,this.trigger("region:add",a,b)}),this.listenTo(this.regionManager,"region:remove",function(a,b){delete this[a],this.trigger("region:remove",a,b)})}}),f.AppRouter=b.Router.extend({constructor:function(a){b.Router.prototype.constructor.apply(this,d(arguments)),this.options=a||{};var c=f.getOption(this,"appRoutes"),e=this._getController();this.processAppRoutes(e,c)},appRoute:function(a,b){var c=this._getController();this._addAppRoute(c,a,b)},processAppRoutes:function(a,b){if(b){var d=c.keys(b).reverse();c.each(d,function(c){this._addAppRoute(a,c,b[c])},this)}},_getController:function(){return f.getOption(this,"controller")},_addAppRoute:function(a,b,d){var e=a[d];if(!e)throw new Error("Method '"+d+"' was not found on the controller");this.route(b,d,c.bind(e,a))}}),f.Application=function(a){this._initRegionManager(),this._initCallbacks=new f.Callbacks,this.vent=new b.Wreqr.EventAggregator,this.commands=new b.Wreqr.Commands,this.reqres=new b.Wreqr.RequestResponse,this.submodules={},c.extend(this,a),this.triggerMethod=f.triggerMethod},c.extend(f.Application.prototype,b.Events,{execute:function(){var a=Array.prototype.slice.apply(arguments);this.commands.execute.apply(this.commands,a)},request:function(){var a=Array.prototype.slice.apply(arguments);return this.reqres.request.apply(this.reqres,a)},addInitializer:function(a){this._initCallbacks.add(a)},start:function(a){this.triggerMethod("initialize:before",a),this._initCallbacks.run(a,this),this.triggerMethod("initialize:after",a),this.triggerMethod("start",a)},addRegions:function(a){return this._regionManager.addRegions(a)},closeRegions:function(){this._regionManager.closeRegions()},removeRegion:function(a){this._regionManager.removeRegion(a)},getRegion:function(a){return this._regionManager.get(a)},module:function(){var a=d(arguments);return a.unshift(this),f.Module.create.apply(f.Module,a)},_initRegionManager:function(){this._regionManager=new f.RegionManager,this.listenTo(this._regionManager,"region:add",function(a,b){this[a]=b}),this.listenTo(this._regionManager,"region:remove",function(a){delete this[a]})}}),f.Application.extend=f.extend,f.Module=function(a,b){this.moduleName=a,this.submodules={},this._setupInitializersAndFinalizers(),this.app=b,this.startWithParent=!0,this.triggerMethod=f.triggerMethod},c.extend(f.Module.prototype,b.Events,{addInitializer:function(a){this._initializerCallbacks.add(a)},addFinalizer:function(a){this._finalizerCallbacks.add(a)},start:function(a){this._isInitialized||(c.each(this.submodules,function(b){b.startWithParent&&b.start(a)}),this.triggerMethod("before:start",a),this._initializerCallbacks.run(a,this),this._isInitialized=!0,this.triggerMethod("start",a))},stop:function(){this._isInitialized&&(this._isInitialized=!1,f.triggerMethod.call(this,"before:stop"),c.each(this.submodules,function(a){a.stop()}),this._finalizerCallbacks.run(void 0,this),this._initializerCallbacks.reset(),this._finalizerCallbacks.reset(),f.triggerMethod.call(this,"stop"))},addDefinition:function(a,b){this._runModuleDefinition(a,b)},_runModuleDefinition:function(a,d){if(a){var e=c.flatten([this,this.app,b,f,f.$,c,d]);a.apply(this,e)}},_setupInitializersAndFinalizers:function(){this._initializerCallbacks=new f.Callbacks,this._finalizerCallbacks=new f.Callbacks}}),c.extend(f.Module,{create:function(a,b,e){var f=a,g=d(arguments);g.splice(0,3),b=b.split(".");var h=b.length,i=[];return i[h-1]=e,c.each(b,function(b,c){var d=f;f=this._getModule(d,b,a),this._addModuleDefinition(d,f,i[c],g)},this),f},_getModule:function(a,b,c){var d=a[b];return d||(d=new f.Module(b,c),a[b]=d,a.submodules[b]=d),d},_addModuleDefinition:function(a,b,d,e){var f,g;c.isFunction(d)?(f=d,g=!0):c.isObject(d)?(f=d.define,g=d.startWithParent):g=!0,f&&b.addDefinition(f,e),b.startWithParent=b.startWithParent&&g,b.startWithParent&&!b.startWithParentIsConfigured&&(b.startWithParentIsConfigured=!0,a.addInitializer(function(a){b.startWithParent&&b.start(a)}))}}),f}(this,Backbone,_);
|
21
21
|
//# sourceMappingURL=backbone.marionette.map
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: marionette-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Godfrey Chan
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2014-01-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|