{:uriI"üfile:///Users/etewiah/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/paloma-5.0.0/vendor/assets/javascripts/paloma/controller_class_factory.js?type=application/javascript&pipeline=self&id=490a930f711b62d0ca409b46327a91548499375076b0f538f0980dbf78e67c54:ET:load_pathI"i/Users/etewiah/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/paloma-5.0.0/vendor/assets/javascripts;T: filenameI"‡/Users/etewiah/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/paloma-5.0.0/vendor/assets/javascripts/paloma/controller_class_factory.js;T: nameI"$paloma/controller_class_factory;T:logical_pathI",paloma/controller_class_factory.self.js;T:content_typeI"application/javascript;T: sourceI"Paloma.ControllerClassFactory = function(){ this._controllers = {}; this._inheritanceSymbol = '<'; }; Paloma.ControllerClassFactory.prototype = { make: function(controllerAndParent, prototype){ var parts = this._extractParts(controllerAndParent), controller = this._getOrCreate( parts.controller ); this._updatePrototype(controller, prototype); this._updateParent(controller, parts.parent); return controller; }, get: function(name){ return this._controllers[name] || null; }, _updateParent: function(controller, parent){ if (!parent) return; var parentClass = this.get(parent); if (parentClass) controller.prototype.__proto__ = parentClass.prototype; }, _updatePrototype: function(controller, newPrototype){ for (var k in newPrototype) if (newPrototype.hasOwnProperty(k)) controller.prototype[k] = newPrototype[k]; }, _getOrCreate: function(name){ return this.get(name) || this._create(name); }, _create: function(name){ var controller = function(params){ Paloma.BaseController.call(this, params); }; controller.prototype.__proto__ = Paloma.BaseController.prototype; this._controllers[name] = controller; return controller; }, _extractParts: function(controllerAndParent){ var parts = controllerAndParent.split( this._inheritanceSymbol ); var controller = parts[0].trim(), parent = parts[1]; if (parent) parent = parent.trim(); return {controller: controller, parent: parent}; } }; ;T: metadata{ :dependencieso:Set: @hash} I"environment-version;TTI"environment-paths;TTI"rails-env;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI"•file-digest:///Users/etewiah/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/paloma-5.0.0/vendor/assets/javascripts/paloma/controller_class_factory.js;TTF: requiredo;;}F: stubbedo;;}F: linkso;;}F: charsetI" utf-8;F: digest"%Û^ÛlÝcL¤é„¾Pº²8ÖÝŽ+A¦»Öâa§þ=þ¨: lengthi:dependencies_digest"%½r“ÔÝj¹™€©sŽ÷ÞÈ¥³l´À-¾óC|e'8/:idI"E490a930f711b62d0ca409b46327a91548499375076b0f538f0980dbf78e67c54;F: mtimel+=}