define("admin/adapters/application",["ember-data","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.ActiveModelAdapter.extend({namespace:window.RAILS_ENV.baseURL+(window.RAILS_ENV.baseURL?"/":"")+"api"})}),define("admin/app",["ember","ember/resolver","ember/load-initializers","admin/config/environment","admin/pretender/index","exports"],function(e,t,s,a,n,i){"use strict";var r=e["default"],o=t["default"],l=s["default"],u=a["default"],p=n["default"];u.usePretender&&p.initialize(),r.MODEL_FACTORY_INJECTIONS=!0;var h=r.Application.extend({modulePrefix:u.modulePrefix,podModulePrefix:u.podModulePrefix,Resolver:o});l(h,u.modulePrefix),i["default"]=h}),define("admin/components/async-button",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Component.extend({tagName:"button",textState:"default",reset:!1,classNames:["async-button"],classNameBindings:["textState"],attributeBindings:["disabled","type"],type:"submit",disabled:s.computed.equal("textState","pending"),click:function(){var e=this;return this.sendAction("action",function(t){e.set("promise",t)}),this.set("textState","pending"),!1},text:s.computed("textState","default","pending","resolved","fulfilled","rejected",function(){return this.getWithDefault(this.textState,this.get("default"))}),resetObserver:s.observer("textState","reset",function(){this.get("reset")&&["resolved","rejected","fulfilled"].contains(this.get("textState"))&&this.set("textState","default")}),handleActionPromise:s.observer("promise",function(){var e=this;this.get("promise").then(function(){e.isDestroyed||e.set("textState","fulfilled")})["catch"](function(){e.isDestroyed||e.set("textState","rejected")})}),setUnknownProperty:function(e,t){"resolved"===e&&(s.deprecate("The 'resolved' property is deprecated. Please use 'fulfilled'",!1),e="fulfilled"),this[e]=null,this.set(e,t)}})}),define("admin/components/lf-overlay",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Component.extend({tagName:"span",classNames:["lf-overlay"],didInsertElement:function(){s.$("body").addClass("lf-modal-open")},willDestroy:function(){s.$("body").removeClass("lf-modal-open")},click:function(){this.sendAction("clickAway")}})}),define("admin/components/liquid-modal",["ember","exports"],function(e,t){"use strict";function s(e,t){var s=e.get("innerViewInstance");s&&s.send(t)}var a=e["default"];t["default"]=a.Component.extend({classNames:["liquid-modal"],currentContext:a.computed.oneWay("owner.modalContexts.lastObject"),owner:null,innerView:a.computed("currentContext",function(){var e=this,t=this.get("currentContext"),s=t.get("name"),n=this.get("container"),i=n.lookup("component-lookup:main").lookupFactory(s);a.assert("Tried to render a modal using component '"+s+"', but couldn't find it.",!!i);var r=a.copy(t.get("params"));r.registerMyself=a.on("init",function(){e.set("innerViewInstance",this)}),r._source=a.computed(function(){return t.get("source")});var o,l,u=t.get("options.otherParams");for(o in u)l=u[o],r[l]=a.computed.alias("_source."+o);var p=t.get("options.actions")||{};return r.sendAction=function(e){var s=p[e];if(!s)return void this._super.apply(this,Array.prototype.slice.call(arguments));var a=t.get("source"),n=Array.prototype.slice.call(arguments,1);n.unshift(s),a.send.apply(a,n)},i.extend(r)}),actions:{outsideClick:function(){this.get("currentContext.options.dismissWithOutsideClick")?this.send("dismiss"):s(this,"outsideClick")},escape:function(){this.get("currentContext.options.dismissWithEscape")?this.send("dismiss"):s(this,"escape")},dismiss:function(){var e=this.get("currentContext.source"),t=e.constructor.proto(),s=this.get("currentContext.options.withParams"),a={};for(var n in s)a[n]=t[n];e.setProperties(a)}}})}),define("admin/components/lm-container",["ember","liquid-fire/tabbable","exports"],function(e,t,s){"use strict";function a(){i&&i.focus()}var n=e["default"],i=null;n.$(document).on("focusin",a),s["default"]=n.Component.extend({classNames:["lm-container"],attributeBindings:["tabindex"],tabindex:0,keyUp:function(e){27===e.keyCode&&this.sendAction()},keyDown:function(e){9===e.keyCode&&this.constrainTabNavigation(e)},didInsertElement:function(){this.focus(),i=this},willDestroy:function(){i=null},focus:function(){if(!this.get("element").contains(document.activeElement)){var e=this.$("[autofocus]");e.length||(e=this.$(":tabbable")),e.length||(e=this.$()),e[0].focus()}},constrainTabNavigation:function(e){var t=this.$(":tabbable"),s=t[e.shiftKey?"first":"last"]()[0],a=s===document.activeElement||this.get("element")===document.activeElement;a&&(e.preventDefault(),t[e.shiftKey?"last":"first"]()[0].focus())}})}),define("admin/helpers/fa-icon",["ember","exports"],function(e,t){"use strict";var s=e["default"],a=/^fa\-.+/,n=s.Logger.warn,i=function(e,t){if("string"!==s.typeOf(e)){var i="fa-icon: no icon specified";return n(i),new s.Handlebars.SafeString(i)}var r=t.hash,o=[],l="";return o.push("fa"),e.match(a)||(e="fa-"+e),o.push(e),r.spin&&o.push("fa-spin"),r.flip&&o.push("fa-flip-"+r.flip),r.rotate&&o.push("fa-rotate-"+r.rotate),r.lg&&(n("fa-icon: the 'lg' parameter is deprecated. Use 'size' instead. I.e. {{fa-icon size=\"lg\"}}"),o.push("fa-lg")),r.x&&(n("fa-icon: the 'x' parameter is deprecated. Use 'size' instead. I.e. {{fa-icon size=\""+r.x+'"}}'),o.push("fa-"+r.x+"x")),r.size&&o.push("number"===s.typeOf(r.size)?"fa-"+r.size+"x":"fa-"+r.size),r.fixedWidth&&o.push("fa-fw"),r.listItem&&o.push("fa-li"),r.pull&&o.push("pull-"+r.pull),r.border&&o.push("fa-border"),r.classNames&&!s.isArray(r.classNames)&&(r.classNames=[r.classNames]),s.isEmpty(r.classNames)||Array.prototype.push.apply(o,r.classNames),l+="\n
\n

\n Current live build\n \n "),t.buffer.push(f((n=a["fa-icon"]||e&&e["fa-icon"],i={hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["STRING"],data:t},n?n.call(e,"external-link",i):m.call(e,"fa-icon","external-link",i)))),t.buffer.push('\n \n

\n
\n
\n

Branch: '),s=a._triageMustache.call(e,"model.bestBuild.branch",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("

\n

Sha: "),s=a._triageMustache.call(e,"model.bestBuild.sha",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("

\n

Job: "),s=a._triageMustache.call(e,"model.bestBuild.job",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("

\n
\n \n "),r}function o(e,t){var s="";return t.buffer.push('\n
\n

No active build.

\n\n

\n To start pushing builds, install Ember CLI FrontEndBuilds and deploy with ember deploy.\n

\n

\n API key:
\n

'),t.buffer.push(f(a._triageMustache.call(e,"model.apiKey",{hash:{unescaped:"true"},hashTypes:{unescaped:"STRING"},hashContexts:{unescaped:e},contexts:[e],types:["ID"],data:t}))),t.buffer.push("
\n

\n
\n "),s}function l(e,t){var s,n,i,r="";return t.buffer.push("\n

All builds

\n "),s=a["if"].call(e,"model.requireManualActivation",{hash:{},hashTypes:{},hashContexts:{},inverse:b.noop,fn:b.program(6,u,t),contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("\n "),t.buffer.push(f((n=a["build-list"]||e&&e["build-list"],i={hash:{builds:"model.orderedBuilds"},hashTypes:{builds:"ID"},hashContexts:{builds:e},contexts:[],types:[],data:t},n?n.call(e,i):m.call(e,"build-list",i)))),t.buffer.push("\n"),r}function u(e,t){t.buffer.push("\n

This app requires new builds to be activated manually.

\n ")}this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var p,h,d,c="",f=this.escapeExpression,m=a.helperMissing,b=this;return i.buffer.push('\n\n
\n
\n '),p=a["if"].call(t,"model.bestBuild",{hash:{},hashTypes:{},hashContexts:{},inverse:b.program(3,o,i),fn:b.program(1,r,i),contexts:[t],types:["ID"],data:i}),(p||0===p)&&i.buffer.push(p),i.buffer.push('\n\n
\n\n
\n
\n
Options
\n \n
\n
\n
\n\n"),p=a["if"].call(t,"model.orderedBuilds",{hash:{},hashTypes:{},hashContexts:{},inverse:b.noop,fn:b.program(5,l,i),contexts:[t],types:["ID"],data:i}),(p||0===p)&&i.buffer.push(p),i.buffer.push("\n"),c})}),define("admin/pods/application/route",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Route.extend({model:function(){return this.store.find("host-app","current")}})}),define("admin/pods/application/template",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Handlebars.template(function(e,t,a,n,i){function r(e,t){var s,n="";return t.buffer.push("\n "),s=a._triageMustache.call(e,"model.friendlyName",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("'s frontend apps\n "),n}this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var o,l,u,p="",h=this,d=a.helperMissing;return i.buffer.push('\n\n
\n '),o=a._triageMustache.call(t,"outlet",{hash:{},hashTypes:{},hashContexts:{},contexts:[t],types:["ID"],data:i}),(o||0===o)&&i.buffer.push(o),i.buffer.push("\n
\n\n"),o=a._triageMustache.call(t,"liquid-modal",{hash:{},hashTypes:{},hashContexts:{},contexts:[t],types:["ID"],data:i}),(o||0===o)&&i.buffer.push(o),i.buffer.push("\n"),p})}),define("admin/pods/apps/controller",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Controller.extend({savedApps:s.computed.filterBy("model","isNew",!1),newApp:function(){return this.get("model").filterBy("isNew",!0).get("firstObject")}.property("model.@each.isNew"),actions:{createApp:function(){this.store.createRecord("app")}}})}),define("admin/pods/apps/route",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Route.extend({model:function(){return this.store.find("app")}})}),define("admin/pods/apps/template",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Handlebars.template(function(e,t,a,n,i){function r(e,t){var s,n,i="";return t.buffer.push('\n
\n '),t.buffer.push(c((s=a["app-card"]||e&&e["app-card"],n={hash:{app:"app"},hashTypes:{app:"ID"},hashContexts:{app:e},contexts:[],types:[],data:t},s?s.call(e,n):d.call(e,"app-card",n)))),t.buffer.push("\n
\n "),i}function o(e,t){var s,n,i="";return t.buffer.push('\n
\n '),t.buffer.push(c((s=a["new-app-card"]||e&&e["new-app-card"],n={hash:{app:"newApp"},hashTypes:{app:"ID"},hashContexts:{app:e},contexts:[],types:[],data:t},s?s.call(e,n):d.call(e,"new-app-card",n)))),t.buffer.push("\n
\n "),i}this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var l,u,p,h="",d=a.helperMissing,c=this.escapeExpression,f=this;return i.buffer.push("
\n

Apps

\n
\n\n
\n \n
\n\n
\n '),l=a.each.call(t,"app","in","savedApps",{hash:{},hashTypes:{},hashContexts:{},inverse:f.noop,fn:f.program(1,r,i),contexts:[t,t,t],types:["ID","ID","ID"],data:i}),(l||0===l)&&i.buffer.push(l),i.buffer.push("\n\n "),l=a["if"].call(t,"newApp",{hash:{},hashTypes:{},hashContexts:{},inverse:f.noop,fn:f.program(3,o,i),contexts:[t],types:["ID"],data:i}),(l||0===l)&&i.buffer.push(l),i.buffer.push("\n
\n\n"),l=a._triageMustache.call(t,"liquid-modal",{hash:{},hashTypes:{},hashContexts:{},contexts:[t],types:["ID"],data:i}),(l||0===l)&&i.buffer.push(l),i.buffer.push("\n"),h})}),define("admin/pods/components/app-card/template",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Handlebars.template(function(e,t,a,n,i){function r(e,t){var s,n="";return t.buffer.push('\n
\n
\n

Branch

\n

'),s=a._triageMustache.call(e,"app.bestBuild.branch",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("

\n
\n
\n

Sha

\n

"),s=a._triageMustache.call(e,"app.bestBuild.shortSha",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("

\n
\n
\n

Job

\n

"),s=a._triageMustache.call(e,"app.bestBuild.job",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("

\n
\n
\n\n
\n\n

\n API key:\n \n ********\n copy\n \n

\n\n "),n}function o(e,t){var s,n="";return t.buffer.push('\n\n
\n

No active build.

\n
\n

\n To start pushing builds, install Ember CLI FrontEndBuilds and deploy with ember deploy.\n

\n

\n API key:
\n

'),s=a._triageMustache.call(e,"app.apiKey",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("
\n

\n
\n\n "),n}this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var l,u,p,h="",d=a.helperMissing,c=this.escapeExpression,f=this;return i.buffer.push('
\n
\n

\n '),i.buffer.push(c((u=a["link-to"]||t&&t["link-to"],p={hash:{},hashTypes:{},hashContexts:{},contexts:[t,t,t],types:["ID","STRING","ID"],data:i},u?u.call(t,"app.name","app","app",p):d.call(t,"link-to","app.name","app","app",p)))),i.buffer.push('\n

\n
\n
\n\n '),l=a["if"].call(t,"app.bestBuild",{hash:{},hashTypes:{},hashContexts:{},inverse:f.program(3,o,i),fn:f.program(1,r,i),contexts:[t],types:["ID"],data:i}),(l||0===l)&&i.buffer.push(l),i.buffer.push("\n\n
\n
\n"),h})}),define("admin/pods/components/build-list/component",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Component.extend({actions:{activate:function(e){return e.set("active",!0).save().then(null,function(e){console.error(e)})},deactivate:function(e){return e.set("active",!1).save().then(null,function(e){console.error(e)})}}})}),define("admin/pods/components/build-list/template",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Handlebars.template(function(e,t,a,n,i){function r(e,t){var s,n,i,r="";return t.buffer.push("\n \n #"),s=a._triageMustache.call(e,"build.id",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("\n \n "),s=a["if"].call(e,"build.isBest",{hash:{},hashTypes:{},hashContexts:{},inverse:m.noop,fn:m.program(2,o,t),contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("\n \n \n \n "),t.buffer.push(f((n=a["fa-icon"]||e&&e["fa-icon"],i={hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["STRING"],data:t},n?n.call(e,"external-link",i):b.call(e,"fa-icon","external-link",i)))),t.buffer.push("\n \n \n \n

"),t.buffer.push(f((n=a.ago||e&&e.ago,i={hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t},n?n.call(e,"build.createdAt",i):b.call(e,"ago","build.createdAt",i)))),t.buffer.push("

\n \n "),s=a._triageMustache.call(e,"build.branch",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("\n #"),s=a._triageMustache.call(e,"build.shortSha",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("\n "),s=a["if"].call(e,"build.active",{hash:{},hashTypes:{},hashContexts:{},inverse:m.program(6,u,t),fn:m.program(4,l,t),contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("\n \n "),s=a["if"].call(e,"build.active",{hash:{},hashTypes:{},hashContexts:{},inverse:m.program(10,h,t),fn:m.program(8,p,t),contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("\n \n \n "),r}function o(e,t){t.buffer.push("\n \n Live\n \n ")}function l(e,t){t.buffer.push("Active")}function u(e,t){t.buffer.push("Not active")}function p(e,t){var s="";return t.buffer.push("\n \n '),s}function h(e,t){var s="";return t.buffer.push("\n \n '),s}this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var d,c="",f=this.escapeExpression,m=this,b=a.helperMissing;return i.buffer.push("\n \n \n \n \n \n \n \n \n \n \n \n \n \n "),d=a.each.call(t,"build","in","builds",{hash:{},hashTypes:{},hashContexts:{},inverse:m.noop,fn:m.program(1,r,i),contexts:[t,t,t],types:["ID","ID","ID"],data:i}),(d||0===d)&&i.buffer.push(d),i.buffer.push("\n \n
IDBuiltBranchCommitStatus
\n"),c})}),define("admin/pods/components/delete-app-form/component",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Component.extend({canDelete:function(){return this.get("app.name")===this.get("confirmedName")}.property("app.name","confirmedName"),actions:{dismiss:function(){this.sendAction("dismiss")},deleteApp:function(){var e=this;this.get("app").destroyRecord().then(function(){e.sendAction("deleted")},function(){console.error("something happened")})}}})}),define("admin/pods/components/delete-app-form/template",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Handlebars.template(function(e,t,a,n,i){this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var r,o,l,u="",p=this.escapeExpression,h=a.helperMissing;return i.buffer.push('\n\n"),u })}),define("admin/pods/components/new-app-card/component",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Component.extend({didInsertElement:function(){var e=this;this.$("input").focus().on("keyup",function(t){27==t.keyCode&&e.send("discardNewApp")})},actions:{createApp:function(){return this.get("app").save()},discardNewApp:function(){this.get("app").deleteRecord()}}})}),define("admin/pods/components/new-app-card/template",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Handlebars.template(function(e,t,a,n,i){this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var r,o,l="",u=this.escapeExpression,p=a.helperMissing;return i.buffer.push("
\n
\n
\n

\n '),i.buffer.push(u((r=a.input||t&&t.input,o={hash:{value:"app.name","class":"App-card__new-input",placeholder:"Enter an app name"},hashTypes:{value:"ID","class":"STRING",placeholder:"STRING"},hashContexts:{value:t,"class":t,placeholder:t},contexts:[],types:[],data:i},r?r.call(t,o):p.call(t,"input",o)))),i.buffer.push("\n

\n
\n
\n

Once your app is created, you'll receive an API key you can use to push out new builds.

\n\n "),i.buffer.push(u((r=a["async-button"]||t&&t["async-button"],o={hash:{action:"createApp",type:"submit","class":"btn btn-sm btn-success","default":"Create",pending:"Creating..."},hashTypes:{action:"STRING",type:"STRING","class":"STRING","default":"STRING",pending:"STRING"},hashContexts:{action:t,type:t,"class":t,"default":t,pending:t},contexts:[],types:[],data:i},r?r.call(t,o):p.call(t,"async-button",o)))),i.buffer.push("\n\n \n\n
\n
\n
\n"),l})}),define("admin/pods/components/rename-app-form/component",["ember","ember-buffered-proxy/proxy","exports"],function(e,t,s){"use strict";var a=e["default"],n=t["default"];s["default"]=a.Component.extend({proxy:function(){return n.create({content:this.get("app")})}.property("app"),nameHasChanged:function(){return this.get("app.name")!==this.get("proxy.name")}.property("app.name","proxy.name"),actions:{dismiss:function(){this.sendAction("dismiss")},renameApp:function(){var e=this;this.get("proxy").applyChanges(),this.get("app").save().then(function(){e.sendAction("dismiss")},function(){console.error("something happened")})}}})}),define("admin/pods/components/rename-app-form/template",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Handlebars.template(function(e,t,a,n,i){this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var r,o,l,u="",p=this.escapeExpression,h=a.helperMissing;return i.buffer.push('\n\n"),u})}),define("admin/pretender/data/apps",["exports"],function(e){"use strict";e["default"]=[{id:1,name:"blog",api_key:"f6db3e76-8f6a-4591-9231-28c271aca36b",location:"/engineering/blog",require_manual_activation:!0,build_ids:[1,2,3,4]},{id:2,name:"accounting-reports",location:"/finance/reports",api_key:"e241cdf3-5b46-49e6-a962-c857a557d470",require_manual_activation:!1,build_ids:[]},{id:3,name:"crm",location:"/people",api_key:"eca7ad25-5de4-467d-8a28-6ca2d2f48c55",require_manual_activation:!1,build_ids:[]}]}),define("admin/pretender/data/builds",["exports"],function(e){"use strict";e["default"]=[{id:4,app_id:1,sha:"1bc3gdw",job:1,branch:"master",created_at:"2015-01-04 00:00:00",active:!1},{id:3,app_id:1,sha:"1bc3gdw",job:1,branch:"nonmaster",created_at:"2015-01-03 00:00:00",active:!0},{id:2,app_id:1,sha:"83jnbj",job:2,branch:"master",created_at:"2014-12-27 00:00:00",active:!0},{id:1,app_id:1,sha:"jt83ndl",job:3,branch:"master",created_at:"2014-12-25 00:00:00",active:!0}]}),define("admin/pretender/data/hostApp",["exports"],function(e){"use strict";e["default"]={id:"current",name:"acme_portal"}}),define("admin/pretender/index",["pretender","admin/pretender/data/hostApp","admin/pretender/data/apps","admin/pretender/data/builds","exports"],function(e,t,s,a,n){"use strict";var i=e["default"],r=t["default"],o=s["default"],l=a["default"],u={hostApp:r,apps:o,builds:l};u.validLogin=!0,u.currentUser={email:"sam.selikoff@gmail.com",firstname:"Sam",id:"current",lastname:"Selikoff"};var p=function(){this.prepareBody=function(e){return e?JSON.stringify(e):'{"error": "not found"}'},this.stubUrl=function(e,t,s){this[e].call(this,"/api"+t,function(){return console.log("Hitting "+t),console.log(s),[200,{},s]})}.bind(this),this.unhandledRequest=function(e,t){console.error("FAILED REQUEST"),console.error(e,t)},this.setupGlobalRoutes=function(e){var t=this;this.stubUrl("get","/host_apps/current",{host_app:e.hostApp}),this.stubUrl("get","/apps",{apps:e.apps,builds:e.builds}),this.stubUrl("post","/apps",{}),this.get("/api/apps/:id",function(t){var s=+t.params.id,a=e.apps.findBy("id",s),n=e.builds.filterBy("app_id",s),i={app:a,builds:n};return console.log("Hitting /api/apps/:id"),console.log(i),[200,{},i]}),this.put("/api/apps/:id",function(t){var s=+t.params.id,a=e.apps.findBy("id",s),n=e.apps.indexOf(a),i=JSON.parse(t.requestBody);return i.app.id=s,e.apps[n]=i.app,console.log("PUT /api/apps/:id"),console.log(i),[200,{},i]}),this["delete"]("/api/apps/:id",function(s){var a=+s.params.id;return e.apps=e.apps.rejectBy("id",a),e.builds=e.builds.rejectBy("app_id",a),t.setupGlobalRoutes.call(t,e),[204,{}]}),this.put("/api/builds/:id",function(t){var s=+t.params.id,a=e.builds.findBy("id",s),n=e.builds.indexOf(a),i=JSON.parse(t.requestBody);return i.build.id=s,e.builds[n]=i.build,console.log("PUT /api/builds/:id"),console.log(i),[200,{},i]})}.bind(this),this.resetGlobalRoutes=function(){var e=jQuery.extend(!0,{},u);this.setupGlobalRoutes(e)},this.resetGlobalRoutes()};n["default"]={initialize:function(){return new i(p)}}}),define("admin/router",["ember","admin/config/environment","exports"],function(e,t,s){"use strict";var a=e["default"],n=t["default"],i=a.Router.extend({location:n.locationType,baseURL:window.RAILS_ENV.baseURL});i.map(function(){this.resource("apps",{path:"/"}),this.resource("app",{path:"/:app_id"},function(){this.modal("delete-app-form",{withParams:["willDelete"],otherParams:{model:"app"},actions:{deleted:"appDeleted"}}),this.modal("rename-app-form",{withParams:["willRename"],otherParams:{model:"app"}})})}),s["default"]=i}),define("admin/serializers/application",["ember-data","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.ActiveModelSerializer.extend({})}),define("admin/templates/components/async-button",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Handlebars.template(function(e,t,a,n,i){function r(e,t){var s,n="";return t.buffer.push("\n "),s=a._triageMustache.call(e,"yield",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("\n"),n}function o(e,t){var s,n="";return t.buffer.push("\n "),s=a._triageMustache.call(e,"view.text",{hash:{},hashTypes:{},hashContexts:{},contexts:[e],types:["ID"],data:t}),(s||0===s)&&t.buffer.push(s),t.buffer.push("\n"),n}this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var l,u="",p=this;return l=a["if"].call(t,"template",{hash:{},hashTypes:{},hashContexts:{},inverse:p.program(3,o,i),fn:p.program(1,r,i),contexts:[t],types:["ID"],data:i}),(l||0===l)&&i.buffer.push(l),i.buffer.push("\n"),u})}),define("admin/templates/components/liquid-modal",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Handlebars.template(function(e,t,a,n,i){function r(e,t){var s,n,i,r="";return t.buffer.push("\n "),n=a["lm-container"]||e&&e["lm-container"],i={hash:{action:"escape"},hashTypes:{action:"STRING"},hashContexts:{action:e},inverse:f.noop,fn:f.program(2,o,t),contexts:[],types:[],data:t},s=n?n.call(e,i):c.call(e,"lm-container",i),(s||0===s)&&t.buffer.push(s),t.buffer.push("\n"),r}function o(e,t){var s,n,i="";return t.buffer.push("\n
\n "),t.buffer.push(d(a.view.call(e,"innerView",{hash:{dismiss:"dismiss"},hashTypes:{dismiss:"STRING"},hashContexts:{dismiss:e},contexts:[e],types:["ID"],data:t}))),t.buffer.push("\n
\n "),t.buffer.push(d((s=a["lf-overlay"]||e&&e["lf-overlay"],n={hash:{clickAway:"outsideClick"},hashTypes:{clickAway:"STRING"},hashContexts:{clickAway:e},contexts:[],types:[],data:t},s?s.call(e,n):c.call(e,"lf-overlay",n)))),t.buffer.push("\n "),i}this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var l,u,p,h="",d=this.escapeExpression,c=a.helperMissing,f=this;return u=a["liquid-with"]||t&&t["liquid-with"],p={hash:{"class":"lm-with",containerless:!0},hashTypes:{"class":"STRING",containerless:"BOOLEAN"},hashContexts:{"class":t,containerless:t},inverse:f.noop,fn:f.program(1,r,i),contexts:[t,t,t],types:["ID","ID","ID"],data:i},l=u?u.call(t,"currentContext","as","cc",p):c.call(t,"liquid-with","currentContext","as","cc",p),(l||0===l)&&i.buffer.push(l),i.buffer.push("\n"),h})}),define("admin/templates/liquid-with-self",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Handlebars.template(function(e,t,a,n,i){this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var r,o="";return r=a._triageMustache.call(t,"",{hash:{},hashTypes:{},hashContexts:{},contexts:[t],types:["ID"],data:i}),(r||0===r)&&i.buffer.push(r),i.buffer.push("\n"),o})}),define("admin/templates/liquid-with",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.Handlebars.template(function(e,t,a,n,i){this.compilerInfo=[4,">= 1.0.0"],a=this.merge(a,s.Handlebars.helpers),i=i||{};var r,o="";return r=a._triageMustache.call(t,"with-apply",{hash:{},hashTypes:{},hashContexts:{},contexts:[t],types:["ID"],data:i}),(r||0===r)&&i.buffer.push(r),i.buffer.push("\n\n\n"),o})}),define("admin/transitions/cross-fade",["liquid-fire","exports"],function(e,t){"use strict";var s=e.animate,a=e.stop,n=e.Promise;t["default"]=function(e,t,i){return a(e),t().then(function(t){return n.all([s(e,{opacity:0},i),s(t,{opacity:[1,0]},i)])})}}),define("admin/transitions/fade",["liquid-fire","exports"],function(e,t){"use strict";var s=e.isAnimating,a=e.finish,n=e.timeSpent,i=e.animate,r=e.stop;t["default"]=function(e,t,o){var l,u=o;return s(e,"fade-out")?l=a(e,"fade-out"):(s(e,"fade-in")&&(u={duration:n(e,"fade-in")}),r(e),l=i(e,{opacity:0},u,"fade-out")),l.then(t).then(function(e){return i(e,{opacity:[1,0]},o,"fade-in")})}}),define("admin/transitions/flex-grow",["liquid-fire","exports"],function(e,t){"use strict";var s=e.animate,a=e.stop,n=e.Promise;t["default"]=function(e,t,i){return a(e),t().then(function(t){return n.all([s(e,{"flex-grow":0},i),s(t,{"flex-grow":[1,0]},i)])})}}),define("admin/transitions/modal-popup",["exports"],function(e){"use strict";e["default"]=function(e,t){return t().then(function(e){e&&e.$().css({display:"",visibility:""})})}}),define("admin/transitions/move-over",["liquid-fire","exports"],function(e,t){"use strict";var s=e.stop,a=e.animate,n=e.Promise,i=e.isAnimating,r=e.finish;t["default"]=function(e,t,o,l,u){var p,h,d,c={},f={};return"x"===o.toLowerCase()?(h="translateX",d="width"):(h="translateY",d="height"),i(e,"moving-in")?p=r(e,"moving-in"):(s(e),p=n.resolve()),p.then(t).then(function(t){if(t&&t.$()&&e&&e.$()){var s=[parseInt(t.$().css(d),10),parseInt(e.$().css(d),10)],i=Math.max.apply(null,s);c[h]=i*l+"px",f[h]=["0px",-1*i*l+"px"]}else c[h]=100*l+"%",f[h]=["0%",-100*l+"%"];return n.all([a(e,c,u),a(t,f,u,"moving-in")])})}}),define("admin/transitions/scroll-then",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=function(){s.assert("You must provide a transition name as the first argument to scrollThen. Example: this.use('scrollThen', 'toLeft')","string"==typeof arguments[2]);var e=document.getElementsByTagName("html"),t=Array.prototype.slice.call(arguments,0,2),a=this.lookup(arguments[2]),n=this,i=arguments[3]||{};return s.assert("The second argument to scrollThen is passed to Velocity's scroll function and must be an object","object"==typeof i),i=s.merge({duration:500,offset:0},i),t.push.apply(t,Array.prototype.slice.call(arguments,4)),window.$.Velocity(e,"scroll",i).then(function(){a.apply(n,t)})}}),define("admin/transitions/to-down",["liquid-fire","exports"],function(e,t){"use strict";var s=e.curryTransition;t["default"]=s("move-over","y",1)}),define("admin/transitions/to-left",["liquid-fire","exports"],function(e,t){"use strict";var s=e.curryTransition;t["default"]=s("move-over","x",-1)}),define("admin/transitions/to-right",["liquid-fire","exports"],function(e,t){"use strict";var s=e.curryTransition;t["default"]=s("move-over","x",1)}),define("admin/transitions/to-up",["liquid-fire","exports"],function(e,t){"use strict";var s=e.curryTransition;t["default"]=s("move-over","y",-1)}),define("admin/views/liquid-child",["ember","exports"],function(e,t){"use strict";var s=e["default"];t["default"]=s.ContainerView.extend({classNames:["liquid-child"],resolveInsertionPromise:s.on("didInsertElement",function(){this.$().css({visibility:"hidden"}).hide(),this._resolveInsertion&&this._resolveInsertion(this)})})}),define("admin/views/liquid-if",["admin/views/liquid-outlet","ember","exports"],function(e,t,s){"use strict";var a=e["default"],n=t["default"],i=!!n.HTMLBars;s["default"]=a.extend({liquidUpdate:n.on("init",n.observer("showFirst",function(){var e=this.get("templates")[this.get("showFirst")?0:1];if(!e||!i&&e===n.Handlebars.VM.noop)return void this.set("currentView",null);var t=n._MetamorphView.create({container:this.container,template:e,liquidParent:this,contextBinding:"liquidParent.context",liquidContext:this.get("showFirst"),hasLiquidContext:!0});this.set("currentView",t)}))})}),define("admin/views/liquid-outlet",["ember","liquid-fire","exports"],function(e,t,s){"use strict";function a(e){return{width:e.width(),literalWidth:parseInt(e.css("width"),10),height:e.height(),literalHeight:parseInt(e.css("height"),10)}}var n=e["default"],i=t.Promise,r=t.animate,o=t.stop,l=n.String.capitalize;s["default"]=n.ContainerView.extend({classNames:["liquid-container"],growDuration:250,growPixelsPerSecond:200,growEasing:"slide",enableGrowth:!0,init:function(){this._super(),n.A(this._childViews).clear(),this.get("containerless")&&(this.set("innerClassNameBindings",this.get("classNameBindings")),this.set("classNameBindings",n.A()))},_currentViewWillChange:n.beforeObserver("currentView",function(){}),_currentViewDidChange:n.on("init",n.observer("currentView",function(){var e,t=this.get("childViews.lastObject"),s=this.get("currentView");if(e=!this._hasTransitioned,this._hasTransitioned=!0,!(!t&&!s||t&&t.get("currentView")===s||this._runningTransition&&this._runningTransition.oldView===t&&this._runningTransition.newContent===s)){var a=this.get("transitions").transitionFor(this,t,s,this.get("use"),e);this._runningTransition&&this._runningTransition.interrupt(),this._runningTransition=a,a.run()["catch"](function(e){n.RSVP.Promise.resolve()._onerror(e)})}})),_liquidChildFor:function(e){e&&!e.get("hasLiquidContext")&&e.set("liquidContext",e.get("context"));var t=this.container.lookupFactory("view:liquid-child"),s={currentView:e};return this.get("containerless")&&(s.classNames=this.get("classNames").without("liquid-container"),s.classNameBindings=this.get("innerClassNameBindings")),t.create(s)},_pushNewView:function(e){if(!e)return i.resolve();var t=this._liquidChildFor(e),s=new i(function(e){t._resolveInsertion=e});return this.pushObject(t),s},cacheSize:function(){var e=this.$();e&&(this._cachedSize=a(e))},unlockSize:function(){var e=function(){var e=t.$();e&&e.css({width:"",height:""})},t=this;this._scaling?this._scaling.then(e):e()},_durationFor:function(e,t){return Math.min(this.get("growDuration"),1e3*Math.abs(e-t)/this.get("growPixelsPerSecond"))},_adaptDimension:function(e,t,s){if(t[e]!==s[e]&&this.get("enableGrowth")){var a={};return a[e]=[s["literal"+l(e)],t["literal"+l(e)]],r(this,a,{duration:this._durationFor(t[e],s[e]),queue:!1,easing:this.get("growEasing")})}var n=this.$();return n&&n[e](s[e]),i.resolve()},adaptSize:function(){o(this);var e=this.$();if(e){var t=a(e);"undefined"==typeof this._cachedSize&&(this._cachedSize=t),e.width(this._cachedSize.width),e.height(this._cachedSize.height),this._scaling=i.all([this._adaptDimension("width",this._cachedSize,t),this._adaptDimension("height",this._cachedSize,t)])}}})}),define("admin/views/liquid-with",["admin/views/liquid-outlet","ember","exports"],function(e,t,s){"use strict";var a=e["default"],n=t["default"];s["default"]=a.extend({liquidUpdate:n.on("init",n.observer("boundContext",function(){var e=this.get("boundContext");if(n.isEmpty(e))return void this.set("currentView",null);var t=n._MetamorphView.create({container:this.container,templateName:"liquid-with",boundContext:e,liquidWithParent:this,liquidContext:e,hasLiquidContext:!0});this.set("currentView",t)}))})}),define("admin/config/environment",["ember"],function(e){var t="admin";try{var s=t+"/config/environment",a=e["default"].$('meta[name="'+s+'"]').attr("content"),n=JSON.parse(unescape(a));return{"default":n}}catch(i){throw new Error('Could not read config from meta tag with name "'+s+'".')}}),runningTests?require("admin/tests/test-helper"):require("admin/app")["default"].create({});